VEX

VEX

文字列を数値変換する

特定の文字列を数値変換する方法について。特定のIDが割り振られたポリラインを色別で視覚化する必要があったので調べました。アスキーコードを使って変換する文字のASCIIコードの値を合計する。string input = "ace57b5e";...
VEX

円充填

環境:Houdini 20.0.751円充填に取り組んでみました。調べているとアルゴリズムは色々ありそうですが、まずは思いついた簡単そうなものからやってみました。隙間が気になるけど今回は多めに見ます。アルゴリズムAdd SOP等で多角形のポ...
VEX

ポイントのアトリビュートとグループを転写する

リダクションや曲線化などの処理を行ってポイント配置が変わりアトリビュートが消えた場合などに、元のポリラインからポイントアトリビュートを転写する。ポイントのアトリビュートを転写するアトリビュート全種類を調べてコピーしていく。値はパラメトリック...
VEX

合計が1になるn個の乱数を返す

オブジェクトを並べる時に、最初と最後の位置は確定しているけど、途中はランダムに揺らぎのある配置にしたいような目的に使う関数。// 合計が1になるn個の乱数を返すfunction float[] randomArray(int num; fl...
VEX

境界外を考慮したRay Intersect

intersect()で判定が取れない場所も平面式を使い、近いプリミティブの平面を延長した平面とみなして衝突点を計算する。//// 境界外を考慮したRay Intersect//// input0: 対象// input1: 実際のコリジョ...
VEX

バブルソート

昇順で並べ替えるint array[] = {3, 6, 1, 9, 7, 2};// バブルソート(昇順)for (int i = 0; i < len(array); i++) { for (int j = 0; j < len(arr...
VEX

配列に順位をつける

アトリビュートに順位をつけるアトリビュートに順位を割り振りたい場面で使うコード。//// アトリビュートの順位をつける//// Run Over:Detailfloat data[];int rank[];for(int i = 0; i ...
VEX

VEXの関数について

複数の返り値を返す関数exportを使うと引数に入れた変数に値が参照渡しされる。// Run Over: Detailvoid myFunction(int a; int b; export int result1; export int ...
VEX

辞書型をEnumのように使う

VEXを使っているとどうしてもEnumのような変数を使いたい場合があります。辞書型を使ってEnumのような使い方をしてみる。Null SOPを用意する。Edit Parameter Interfaceの画面を開き、Key-Value Dic...
VEX

イージングカーブ

Ease In Out Sin// Sinfloat easeInOutSin(const float x){ return -(cos(PI * x) - 1) / 2;}@P.y = easeInOutSin(@P.x);対象の形にする...
スポンサーリンク