« スクリプトでアニメーショントラック | トップページ | SendModelingCommand()でスプラインのポイントを追加する »

C4DスクリプトのSendModelingCommand()でスプライン

SendModelingComand()での操作は、自分でUndo()処理をしなくても自動的にUndo()を処理してくれます。オブジェクトのポイント/ポリゴンの選択したエレメントのみの処理なのか、また全てのエレメントなのか指定できます。

今回はSendModelingCommand()でスプラインを操作してみます。
選択されたポイントのみの処理は、MODIFY_POINTSELECTION
全てのポイントを処理する場合は、MODIFY_ALLです。

SendModelingCommand(command , document , object , container , mode)

スプラインのcommandとcontainerです。containerが記載されていないcommandはカラのBaseContainerを指定してください。

command & continer
MCOMMAND_SPLINE_HARDINTERPOLATION ハード補間
MCOMMAND_SPLINE_SOFTINTERPOLATION ソフト補間
MCOMMAND_SPLINE_REORDER 始点を設定
MCOMMAND_SPLINE_REVERSE ポイント順を反転
MCOMMAND_SPLINE_MOVEDOWN ポイント順を繰り下げ
MCOMMAND_SPLINE_MOVEUP ポイント順を繰り上げ
MCOMMAND_SPLINE_CHAMFER 面取り
container MDATA_SPLINE_CHAMFERFLAT [bool] フラット
MDATA_SPLINE_CHAMFERRADIUS [float] 半径
MCOMMAND_SPLINE_ROUND 丸める
container MDATA_SPLINE_ROUNDPOINTS [int] ポイント数
MDATA_SPLINE_ROUNDTYPE [int] タイプ(ダイアログを参照)
MCOMMAND_SPLINE_JOINSEGMENT セグメントを連結
MCOMMAND_SPLINE_BREAKSEGMENT セグメントに分離
MCOMMAND_SPLINE_EQUALLENGTH 接線の長さを均等化
MCOMMAND_SPLINE_EQUALDIRECTION 接線の長さを均等化
MCOMMAND_SPLINE_LINEUP 直列
MCOMMAND_SPLINE_CREATEOUTLINE アウトラインを作成
container MDATA_SPLINE_OUTLINE [float] 距離
MDATA_SPLINE_OUTLINESEPARATE [bool] 新規オブジェクトとして
MCOMMAND_SPLINE_PROJECT 投影
container MDATA_SPLINE_PROJECTMODE [int] モード
MCOMMAND_SPLINE_ADDPOINT ポイントを追加
container MDATA_SPLINE_ADDPOINTSEGMENT [int] セグメント
MDATA_SPLINE_ADDPOINTPOSITION [float] 位置

documentはBaseDocumentを指定するとUndo()が自動的に記録されます。NULLを指定するとUndo()が記録されないそうです。

objectはBaseObjectを指定してください。今回はSplineObjectです。

modeは先ほど説明しました、影響を及ぼすポイントの状態です。
選択されたポイントのみの処理は、MODIFY_POINTSELECTION
全てのポイントを処理する場合は、MODIFY_ALLです。

次回はMCOMMAND_SPLINE_ADDPOINT(ポイントを追加)を実験します。

|

« スクリプトでアニメーショントラック | トップページ | SendModelingCommand()でスプラインのポイントを追加する »

コメント

この記事へのコメントは終了しました。