2

pygameで負の座標を使用する最良の方法は何ですか?

現時点では、元のサーフェスの 1.5 倍のサーフェスがあり、描画する必要があるものはすべて (負の座標が正になるように) 一定量だけシフトして描画されます。

これを行うためのより簡単な/代替方法はありますか?

4

3 に答える 3

1

簡単な解決策は、世界座標からpygame画面座標への線形マッピング関数を作成することです。

def coord(x,y):
    "Convert world coordinates to pixel coordinates."
    return 320+170*x, 400-170*y

すべてのワールドオブジェクトを描画するときに使用します。完全な例については、こちらをご覧ください。

于 2013-02-12T13:02:01.040 に答える
0

ワールド座標とスクリーン座標がある RPG マップの状況に似ている場合: ワールドをローカルに、またはその逆に変換する関数を使用します。

しかし、あなたが Rect のプロパティを探しているかどうかわかりませんでしたか?

rect.bottomright = (width, height) # bottom right at window corner

中心座標を使用してブリットする場合、左上が (0,0) の場合

ship.rect.center = (20, 30) # don't need to translate by adding w/2 to topleft

参照: Rect.move_ip()

于 2011-04-21T10:11:56.837 に答える
0

サーフェスの原点を 0,0 から移動する方法はありません。

渡されたすべての座標をサーフェスの空間に変換する独自の描画クラスを実装します。

于 2010-07-19T08:30:16.893 に答える