Polyline

集落と街道の生成

地形メッシュ上に集落のポイントを置き、それらをつなぐように道を生成します。アルゴリズムの流れ集落をノード、道をリンクとしたネットワークモデルとして考える。集落ポイントを配置するまずはベースとなる地形のメッシュを用意します。Normal SO...
Polyline

ループするポリライン

ループ(連環)しているポリラインはそれぞれの状態のポイントインデックスの終点が変わる。ポリラインを扱う時はこのズレに注意する必要がある。Closeプリミティブが閉じている状態。0から3のポイントで構成された四角形ポリゴン。ポイント数は4つ。...
Python

Visual Studio CodeのPython環境設定

環境:Houdini 20.5.487, Visual Studio Code 1.99.2Visual Studio Codeで快適にPythonを書く環境をつくる。VS Codeにhou moduleを認識させるWorkspaceをつく...
Polyline

ループ状ポリラインの開始点を変更する

ループ状のポリラインの開始点をインデックスで指定する。矢印の座標を開始地点にする。ポリラインのポイントの並びを変え、Sort SOPのPoint Sort: By Vertex Orderで整えたもの。//// 連環するポリラインの特定の場...
Python

列挙型(Enum)の使い方

PythonでのEnumの使い方。from enum import Enumclass Mode(Enum): IDLE = 0 WALK = 1 RUN = 2設定する時は# 設定self.mode = Mode.IDLEself.mod...
Math

Catmull-Romスプラインをベジェ曲線に変換する

Catmull-Romスプラインの接線ベクトルを使うことで3次ベジェ曲線の制御点を生成することができる。Catmull-Romスプライン曲線計算式Catmull-Romスプラインの接線ベクトル\(V_0\)、\(V_1\)を利用する。3次ベ...
Math

Catmull-Romスプライン曲線

Catmull-Romスプライン曲線は制御点をすべて通るような曲線を引くアルゴリズム。エルミート曲線を連続するようにつなぎあわせている。エルミート曲線エルミート曲線の始点ベクトルと終点ベクトルはそれぞれ前の制御点と次の制御点を結んだラインを...
Math

エルミート曲線

エルミート曲線は3次方程式を使い、位置だけでなく始点と終点の接線情報も考慮して間を補完する曲線を作ることができる。始点から始点のベクトル方向に飛び出した曲線が、終点では終点ベクトルの向きで到着する。3次方程式で表現されるため、始点からひとつ...
Polyline

ポリラインの幅を一定に維持してオフセットする

環境:Houdini 20.5.487平面上でポリラインの各ポイントを幅が一定となるようにオフセットします。処理の流れポイントにおけるハーフベクトルはポリラインの進行方向のベクトルV0の逆ベクトルと続くV1を足したベクトルになる。レフトベク...
Python

HDAのボタンにPython Scriptをコールバックとして設定する

環境:Houdini 20.5.487HDAに設置したボタンからPythonスクリプトを呼び出す方法。Scriptタブを開き、Event HandlerからPython Moduleを選ぶと、Scripts項目にPythonModuleが追...
スポンサーリンク