Link
カテゴリ
全体 お知らせ こんなコマンドがあれば 小技 01_deles 02_txcp 03_rott 04_nl 05_bansen 06_delp 07_mdc 08_clc 09_ntra 10_excb 11_xyzl 12_dcs 13_fco 14_bbp 15_zsil 16_mic 17_selc 18/19/20 cv 21_rocp 22_exsf4 23_setc 24_mdca 25_rca 26_aca 27_exo 28_sola 29_miw 30_mcec 31_selce 32_ext 33_lsof 34_osec 35_vpl 36_cu 37_sol 38_xyzll 39_tfow 40_bbpl 41_cros 42_expib 43_sellt 44_cdc 45_pv 46_mk2d 47_src 48_al 49_cros2 50_sello 51_rco 52_cal 53_offc 最新の記事
以前の記事
ブログパーツ
検索
その他のジャンル
ファン
記事ランキング
ブログジャンル
画像一覧
|
コマンドの中でも頻繁に使う「削除」ですが、特定のオブジェクトのみ削除することも多いと思います。前回delesを作成しましたがこのプログラムを応用して他のオブジェクトも削除するプログラムに変更したいと思います。
************************************************* Sub delp <---①ここはコマンドの定義です。好きな名前を入れてください Dim Object,arrObjects2,LockedObjects,allObjects,preLockedObjects preLockedObjects = Rhino.LockedObjects allObjects = Rhino.SelectedObjects Rhino.command "selnone" If Not IsNull(allObjects) Then allObjects = Rhino.NormalObjects If IsNull(NormalObjects) Then Rhino.print "There are no objects" Exit Sub End If End If Rhino.Command "'_SelPt" <---②ここでポイントのみ選択 Rhino.Command "'_Invert" <---③反転選択にてポイント以外のオブジェクトを削除できるようにします。 arrObjects = Rhino.SelectedObjects If Not IsNull(arrObjects) Then Rhino.LockObjects arrObjects End If arrObjects2 = Rhino.GetObjects("Select delete points",1 ) <---④ここが重要です。ポイントを選択するのですが「、1」がポイントのみを選択する呪文になります。下の画像のvalueがこの数値に対応しています。 詳しくはライノセラスeditscriptのHelp項目GetObjectsを参考にしてください。Helpはライノセラスのコマンドラインでeditscriptと打ちこんで立ち上がったダイアログよりHelpを呼び出せます。 If IsArray(arrObjects2) Then Rhino.DeleteObjects arrObjects2 End If LockedObjects = Rhino.LockedObjects If Not IsNull(LockedObjects ) Then Rhino.unLockObjects LockedObjects If Not IsNull(preLockedObjects) Then Rhino.LockObjects preLockedObjects End If End Sub delp <---⑤ここはコマンドの定義です。好きな名前を入れてください。 ************************************************* どうですか? 少しの変更で新らしいコマンドが作成できます。②を「'_SelCrv」に変更して④を「'4」にすることでカーブを削除するコマンドになります。 ダウンロードは創造社HPの左下のRhino+リンクからどうぞ
by rhino-plus
| 2010-11-30 07:27
| 06_delp
|
ファン申請 |
||