• Sweep形状のUV

    クロス側のポリライン 断面形状にuvが0~1までの範囲に収めるようにする。各ポイントに0~1にスケールした距離を記録する。 バックボーン側のUV UV Texture SOPを使ってuvアトリビュートをつくる。 Text

  • ViewerStateで動的なハンドルを使う

    ViewerStateでハンドルを利用する時のサンプルコードを書いてみました。 構成 HDAを作成し、UIにはMultiparm Block(list)を「points」という名前で追加し、ここにFloat Vector

  • Viewer State

    Pythonの基本 Pythonでのリスト操作ジオメトリのアトリビュート参照と編集 デバッグ ViewerStateのデバッグ 入出力 Viewer Stateのマウス・キーボードの入力イベント UI Python St

  • ベジェ曲線の仕組み

    ベジェ曲線は制御点によって定義され、曲線は必ず制御点の内側に描画される。制御点の線形補間を繰り返すことで滑らかな曲線を生成する。1次・2次・3次の式の導出と、VEX で描くコード

  • 角度を正規化する

    オイラー角でよく使うけど忘れがちな計算のまとめ。 0~360°に正規化する 480°→120°-10°→350° 負数にも対応しており、例えば-10の場合は戻り値は350となる。 -180~180°に正規化する 190°

  • カメラの注視点をあわせる

    環境:Houdini 20.0.751 ツール作業では必須のカメラ注視点を特定の座標に移動させる動作をPythonで再現してみます。 以下のコードはカメラの注視点を(1.0, 0.5, -1.5)に移動させる例です。カメ

  • メッシュの四角形化

    環境:Houdini 20.0.751 平面的なメッシュの三角プリミティブを四角形にする。 三角形プリミティブの一番長い辺が隣り合っているペアを探し、プリミティブをひとつに作り直している。 続けてWrangleノードをつ

  • Point on Polyline Tool

    環境:Houdini 20.0.751 ポリライン上にポイントを打っていくツール。 Viewer Stateのコード Detail WrangleをHDA内に配置する

  • ポリライン間をメッシュで埋める

    2本のポリラインの間を縫合するようにメッシュを生成します。 ポリライン同士が同じ方向に並んでおり、交差していないことが前提となります。 処理の流れ 2本のポリラインを用意して、上下のポイントを左から順につないでいきます。