曲線の交点で作業しています。最初は toxiclibs と hemesh ライブラリを試しました。しかし、多くのエラーの後、グラスホッパーで python を使用して簡単なスクリプトを作成しようとしました。その結果、自分のプログラミングスキルでは処理や単純化で解決できないデータツリーの問題があることに気づきました。
簡単に言えば、ポリゴンの配列があります。それらが交差すると、それらの角が下向きに 90 度回転します。
シンプルですが、処理中にスクリプトを書くには大規模です。今のところ、グラスホッパーで非常に高速なスクリプトを使用しています。メイン コンポーネントは、データ ツリーの対角線を返し、曲線間の交点を計算します。動きと物理学で遊んでみると、自分のアイデアを処理で実現する必要があることがわかりました。結果、処理中のスクリプトを書き直したい…
ここに私が取り組んでいる対角線(紫色)があります -->対角線
交差点の線
交差点の対角線を取得するための交差点関数は、Python で記述されています。
import ghpythonlib.components as ghcomp
import rhinoscriptsyntax as rs
def ctr(crv):
pts = ghcomp.Explode(crv)[1] //polygons are exploded into segmens
pts = ghcomp.CullDuplicates(pts,0.001)[0] //duplicate lines are deleted
return ghcomp.Average(pts)
pts = []
lines = []
ctr_c1 = ctr(C1)
for crv in C2:
if ctr(crv) != ctr_c1:
int = ghcomp.CurveXCurve(C1, crv)[0] //intersection of curves is calculated
if int:
[pts.append(x) for x in int]
lines.append(rs.AddLine(int[0],int[1]))
このスクリプトは、データ ツリーで交差する曲線の対角線を返します。データ ツリーとは、画像に 15 個のポリゴンがあることを意味します。そして、スクリプトは、1 番目の曲線には線として 2 つのオブジェクトがあり、2 番目の曲線には線として 3 つのオブジェクトがあり、3 番目の曲線には線として 1 つのオブジェクトがあるという出力を返します。各ポリゴンは交差対角線に関連付けられています。
処理中のこの python スクリプトを書き直すのを手伝ってくれませんか? そうでない場合は、関連するライブラリを使用して処理中の同様のスクリプトの参照がありますか?
よろしくお願いします、ペトラス。