L-Systemのブランチの角度パラメータが違う2つの「木」トゥリーをロフトしたモデルを実体化する例です。2つの角度の値を連続させて、すこしづつ変化する形をレーザーカットし積層させる、という想定です。
まず、2つのトゥリー間をロフトさせたサーフェース、カット面となるサーフェースを用意します。
NC_test_AA_01.3dm
サーフェースをすべて選択し、交差するカーブを取り出します。
コマンド: Intersect

次に結果に対して、カット面と平行でないカーブを取り除きます。一つ一つマウスで選択して削除するのでOKです。この規模だと十分現実的な作業量ですが、スクリプトを援用するのもひとつの方法です。この一連の作業はpythonスクリプトを使いますが、Grasshopperは使いません。
コマンド: editpythonscript
でエディタを立ち上げてください。
以下のコードをエディタにコピーペーストし
import rhinoscriptsyntax as rs
import Rhino.Geometry as rg
rs.Command ("_SelAll")
cvs = rs.GetObjects("select curve", rs.filter.curve, True, True )
for cv in cvs:
y = rs.CurveStartPoint(cv).Y
for pt in rs.CurvePoints(cv):
if abs(pt.Y - y) > .1:
rs.DeleteObject(cv)
break
実行ボタンを押します。
ここまでの作業状態です: NC_test_AA_02.3dm
入り組んだブランチの線に太さを与え、NC用のカットラインデータを作る2 に続く



Comments are closed.