回答編集履歴
2
「外接する」(長方形)に変更しました。
answer
CHANGED
@@ -7,7 +7,7 @@
|
|
7
7
|
にしなければなりません。
|
8
8
|
つまり、「円の半径」が足りません。
|
9
9
|
|
10
|
-
参考:`create_oval`の第1引数、第2引数は、円
|
10
|
+
参考:`create_oval`の第1引数、第2引数は、円に外接する長方形の左上の座標、第3引数、第4引数は、円の幅・高さではなく、同じく外接する長方形の右下の座標を指定します。
|
11
11
|
|
12
12
|
|
13
13
|
最終的には下記のようにすれば良いです。
|
1
文章の前後関係がおかしかったので修正しました。
answer
CHANGED
@@ -1,12 +1,15 @@
|
|
1
1
|
クリックした座標を変換する計算は、`- 20`だけでは足りません。
|
2
2
|
|
3
|
-
|
3
|
+
座標が円の中かどうかを計算するには、
|
4
|
-
ま
|
4
|
+
まずマウスイベントの座標をグラフ上の座標に補正する必要がありますが、
|
5
|
-
|
6
|
-
|
5
|
+
円の中心が(0, 0)となるように座標を補正する計算は、
|
7
6
|
「マウスクリックした座標 - 円の半径 - 左上の座標」
|
8
7
|
にしなければなりません。
|
8
|
+
つまり、「円の半径」が足りません。
|
9
9
|
|
10
|
+
参考:`create_oval`の第1引数、第2引数は、円を囲む長方形の左上の座標、第3引数、第4引数は、円の幅・高さではなく、同じく長方形の右下の座標を指定します。
|
11
|
+
|
12
|
+
|
10
13
|
最終的には下記のようにすれば良いです。
|
11
14
|
|
12
15
|
他のところも少し変えてしまいました。
|