質問編集履歴
4
見出し コードの挿入
test
CHANGED
File without changes
|
test
CHANGED
@@ -21,36 +21,6 @@
|
|
21
21
|
そうなっていません。(ボールの端が壁にぶつかったときに跳ね返っているように見える)
|
22
22
|
|
23
23
|
これはどうしてでしょうか?
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
### 【疑問に思った理由】
|
28
|
-
|
29
|
-
ボールの描画は、Canvasのcreate_oval()で行っています。create_oval(円の左端, 円の上端, 円の右端, 円の下端)で描画されます。
|
30
|
-
|
31
|
-
今回のコードでは、create_ovalにボールの中心位置座標からの相対距離を入力しています。
|
32
|
-
|
33
|
-
ボールの中心位置座標を(x,y) , ボールの幅 = 10 として、
|
34
|
-
|
35
|
-
create_oval( x-10, y+10, x+10, y-10)で、ボールの中心をx,yとした直径20の円が描画されます。
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
ボールの移動・跳ね返りは、ボールの中心位置座標(x,y)の値を変更し、(x,y) が ウィンドウの端(0,0) (600,400)の位置に来た時に反射させています。
|
40
|
-
|
41
|
-
ということは、ボールの中心がウィンドウの端に来た時、ボールの半径10の部分はウィンドウの外に消えるような描写となっているべきです。
|
42
|
-
|
43
|
-
しかし、ボールの端がウィンドウの端とぶつかって反射しているように見えます。
|
44
|
-
|
45
|
-
(本当はボールの端がウィンドウの端とぶつかるように見えたほうがリアルで喜ばしいのですが、このコードでそうなるべきではないと考えています)
|
46
|
-
|
47
|
-
教えていただけるとうれしいです。
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
### 該当のソースコード
|
54
24
|
|
55
25
|
|
56
26
|
|
@@ -153,3 +123,27 @@
|
|
153
123
|
|
154
124
|
|
155
125
|
```
|
126
|
+
|
127
|
+
|
128
|
+
|
129
|
+
### 【疑問に思った理由】
|
130
|
+
|
131
|
+
ボールの描画は、Canvasのcreate_oval()で行っています。create_oval(円の左端, 円の上端, 円の右端, 円の下端)で描画されます。
|
132
|
+
|
133
|
+
今回のコードでは、create_ovalにボールの中心位置座標からの相対距離を入力しています。
|
134
|
+
|
135
|
+
ボールの中心位置座標を(x,y) , ボールの幅 = 10 として、
|
136
|
+
|
137
|
+
create_oval( x-10, y+10, x+10, y-10)で、ボールの中心をx,yとした直径20の円が描画されます。
|
138
|
+
|
139
|
+
|
140
|
+
|
141
|
+
ボールの移動・跳ね返りは、ボールの中心位置座標(x,y)の値を変更し、(x,y) が ウィンドウの端(0,0) (600,400)の位置に来た時に反射させています。
|
142
|
+
|
143
|
+
ということは、ボールの中心がウィンドウの端に来た時、ボールの半径10の部分はウィンドウの外に消えるような描写となっているべきです。
|
144
|
+
|
145
|
+
しかし、ボールの端がウィンドウの端とぶつかって反射しているように見えます。
|
146
|
+
|
147
|
+
(本当はボールの端がウィンドウの端とぶつかるように見えたほうがリアルで喜ばしいのですが、このコードでそうなるべきではないと考えています)
|
148
|
+
|
149
|
+
教えていただけるとうれしいです。
|
3
リンク先を追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
勉強のためpythonとtkinterでブロック崩しゲームを作成しています。
|
6
6
|
|
7
|
-
https://news.mynavi.jp/article/zeropython-10/
|
7
|
+
[参考にしたサイト](https://news.mynavi.jp/article/zeropython-10/)
|
8
8
|
|
9
9
|
上記リンクを参考にしながら、ひとまず枠の中でボールが跳ね返り続けるコードを書いてみましたが、
|
10
10
|
|
2
見出し コードの挿入
test
CHANGED
File without changes
|
test
CHANGED
@@ -12,11 +12,9 @@
|
|
12
12
|
|
13
13
|
|
14
14
|
|
15
|
-
### 発生している問題・エラーメッセージ
|
16
15
|
|
17
16
|
|
18
|
-
|
19
|
-
【疑問】
|
17
|
+
### 【疑問】
|
20
18
|
|
21
19
|
下記コードの場合、ボールが壁(ウィンドウの枠)にぶつかった判定の時、ボールの半分が壁に沈み込む(見えなくなる)ような描写になるはずですが、
|
22
20
|
|
@@ -26,7 +24,7 @@
|
|
26
24
|
|
27
25
|
|
28
26
|
|
29
|
-
【疑問に思った理由】
|
27
|
+
### 【疑問に思った理由】
|
30
28
|
|
31
29
|
ボールの描画は、Canvasのcreate_oval()で行っています。create_oval(円の左端, 円の上端, 円の右端, 円の下端)で描画されます。
|
32
30
|
|
@@ -54,7 +52,9 @@
|
|
54
52
|
|
55
53
|
### 該当のソースコード
|
56
54
|
|
55
|
+
|
56
|
+
|
57
|
-
|
57
|
+
```python
|
58
58
|
|
59
59
|
|
60
60
|
|
@@ -149,3 +149,7 @@
|
|
149
149
|
gameloop()
|
150
150
|
|
151
151
|
win.mainloop()
|
152
|
+
|
153
|
+
|
154
|
+
|
155
|
+
```
|
1
インデントがなくなってしまった
test
CHANGED
File without changes
|
test
CHANGED
@@ -53,6 +53,8 @@
|
|
53
53
|
|
54
54
|
|
55
55
|
### 該当のソースコード
|
56
|
+
|
57
|
+
すみませんほかの方の質問のようにインデントが反映されたコードの投稿の仕方がわかりませんでした。
|
56
58
|
|
57
59
|
|
58
60
|
|