2012-02-27 27 views
3

2つの3Dオブジェクト(三角形面)の関係(境界線/内部の交差点)を判断していて、shapelyに遭遇しました。私自身のポイント/セグメント/線/三角交差関数である。Python Shapely intersection:parallel planes

しかし、私は、次のような問題に実行している:私に実行されているように見える問題は、2つの多角形は、それらの2D正射影(同じ三角形)で、異なるに等しいということである

>>> from shapely.geometry import Polygon 
    >>> poly = Polygon([(0,1,1),(1,-1,1),(-1,-1,1)]) 
    >>> poly2 = Polygon([(0,1,0),(1,-1,0),(-1,-1,0)]) 
    >>> poly.intersects(poly2) 
    True 
    >>> poly.equals(poly2) 
    True 

(Z = 1にあるもの、Z = 0にあるもの)が、平等に交差していると書かれています。

3次元で滑らかに考えるために欠けている魔法がありますか?私はグーグルで行ってきましたが、これまでに見たすべての例は2次元でしかありません。 Shapely manualによれば、Zは、次のは、幾何学的オブジェクトのための座標平面と述べ

答えて

5

第三のZ座標値は、インスタンスの作成時、使用されるが、幾何学的解析に影響を及ぼさないことができます。すべての演算はx-y平面で実行されます。あなたの計算は、z座標平面を必要とする場合は

、その後、格好の良いあなたのためではないかもしれません。もちろん、ポリゴンのポイントをリストとして取得し、それを他のポリゴンと比較しようとすることもできます。しかし、z次元を扱うことができるPythonの幾何学ライブラリを手に入れたい場合は、hereを見つけることができます。

+0

うわー、私はそれを逃したとは思わない。私は今朝の数時間のドキュメンテーションを見つめていて、ただそれを見ていました。それを指摘してくれてありがとう。 – squishy

関連する問題