4

Docs forSKPhysicsBody bodyWithCircleOfRadius:は次のように述べています。

所有ノードの原点を中心とする円形の物理ボディを作成します。

原点はノードの位置ですか?もう見つかりませんでした。

4

2 に答える 2

4

原点はノードの位置ですか?

原点は、特定の座標系の座標 (0, 0) を持つポイントです。ただし、コンピュータ グラフィックスを扱う場合、通常は多数の異なる座標系を扱い、それぞれに独自の原点があります。たとえば、ビュー階層内のすべてのビューには独自の座標系があります。したがって、どちらについて話しているのかを正確に知るには、ある程度のコンテキストが必要です。

SKNode ドキュメントから:

ノード ツリー内のすべてのノードは、その子に座標系を提供します。子がノード ツリーに追加された後、その位置プロパティを設定することにより、親の座標系内に配置されます。

あなたもコメントしました:

「起源」もSKSceneのドキュメントで言及されており、フレームの起源とは異なるため、混乱しています

SKSceneは のサブクラスであるSKNodeため、すべてのシーンが座標系を提供する場合もあります。これは驚くべきことではありません。シーンは、ノード ツリーのルート ノードにすぎません。

originノードのframeをノード自体の座標系の原点と混同しないでください。Aは、というCGPointと というCGSizeというCGRect2 つのものによって定義されます。ノードは、親ノードの座標系でノードの境界を定義する長方形です。ノードの起点はたまたまフレームの と同じ場所にあるかもしれませんが、それらは同じものではありません。たとえば、シーンの原点はその場所にあります。つまり、シーンのプロパティは、シーンを含むビュー内のポイントを示し、そのポイントはシーン内の座標 (0, 0) を持ちます。これらはどちらもまたはとは関係ありません。originsizeframeoriginanchorPointanchorPointframeframe.origin

于 2014-03-16T18:22:04.743 に答える
1

通常、原点は点です。ただし、SKNode の起源について話すと少し混乱します。これは、SKNode のフレームのプロパティであるのと同じ意味で SKNode のプロパティではないためです。apples の sknode ドキュメントで「origin」という単語をキーワード検索すると、0 回見つかります。ただし、SKNode のドキュメントでこのように言及されていないにもかかわらず、ノードの起点はフレームの起点よりもその位置を参照する可能性が高いという以下のコンセンサスに同意します。したがって、SKNode のフレームの原点の x 値と y 値を次のように取得します。

node.frame.origin.x
node.frame.origin.y

これは必ずしもノードの起源を説明しているわけではありません。この回答がより正確になり、混乱が少なくなることを願っています:)

于 2014-03-14T21:24:52.403 に答える