1

それぞれが独自の位置を持ち、頂点の座標を定義するクワッドの配列があります。カメラの平面にシーンの投影があります。各クワッドの配列要素の投影面積を知りたいです。実際、それがどのオブジェクトに属しているかを投影ピクセルで知ることはありません。

4

1 に答える 1

0

Viewport.Project メソッドを使用して、各頂点を画面に投影できます。

その後、画面座標でクワッドの頂点を取得します。残っているのは、問題のポイントがそのポリゴンに属するかどうかを判断することだけです。これはさまざまな方法で行うことができます。

1 つのオプションは、各ポリゴン エッジに対してポイントの側を決定することです。これは、ポリゴンが凸面であるため機能します。

previousSide := 0
for each edge in polygon
    d1 := edge.p2 - edge.p1 //direction vector of edge
    d2 := pointInQuestion - edge.p1 //direction of first edge point to point in question
    side = d1.x * d2.y - d1.y * d2.x //cross product
    if side * previousSide < 0 then return false //different sides
    previousSide := side
 next
 return true
于 2012-10-12T15:18:53.790 に答える