Polyline

縦断勾配を計算する

ポリラインの勾配を計算する。傾きと角度それぞれをアトリビュートに追加している。 // // 縦断方向の勾配と角度を計算する // Run Over: Primitives // int pts[] = primpoints(0, @prim...
地形

勾配の視覚化

勾配とは 水平面に対する傾き度合い。勾配の単位は「%」。 水平長を1とした時の垂直長の比率で表す。数学のグラフでいう傾きa。 底辺100m、高さ10mの坂は10 / 100 = 0.1 =10%の勾配 例 箱根新道の平均勾配は5%(2.9°...
デバッグ

デバッグのための視覚化表現

Primitiveに色をつける // // RunOver:Primitives // int numiterations = nprimitives(0); int iteration = @primnum; float range = ...
Python

最短経路探索(勾配コスト)

A-Starアルゴリズムをベースに、勾配コストを追加したアルゴリズム。 Input0にConvertline SOPでポリライン化した地形を、Input1に始点と終点を含むポリラインを差す。 // RunOver: Detail // in...
VEX

配列に順位をつける

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

曲率によってカーブの分割数を増減する

Resample SOP等で事前にポイントの間隔を均等にしておく。 Resample SOPのLength項目に以下のように記述した。 prim(0,0,"intrinsic:measuredperimeter",0)/npoints(0)...
Polyline

ポリラインをZY平面へ投影する

縦断勾配の確認等でポリラインをZ軸方向へまっすぐ伸ばす。 // // ポリラインをZ軸上に真っすぐに投影する // RunOver: Primitives // int pts[] = primpoints(0, @primnum); fl...
VEX

関数を外にまとめる

VEXコードに毎回同じ関数を書くのではなく、外にまとめてアクセスする方法。 Wrangle SOPをつくり、関数だけを書き込む。 `chs("../functions/snippet")` 他のSOPの先頭に上のコードを書く。それ以降は普通...
VEX

辞書型をEnumのように使う

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

曲率と曲率半径を計算する

曲率とは 曲率半径曲線を局所的な円弧と見た場合の半径。 曲率曲率半径の逆数になる。 パラメトリックUVで計算する ポリラインの各ポイントの曲率を計算する。円弧から曲率半径を求める。Resample SOPで均等なポイント配置になっている必要...
スポンサーリンク