ランダムなポイントを近い順につなげていく方法
8581 11 1- kazurati
- Member
- 27 posts
- Joined: 10月 2018
- Offline
- eiji
- Member
- 16 posts
- Joined: 2月 2012
- Offline
- kazurati
- Member
- 27 posts
- Joined: 10月 2018
- Offline
- kazurati
- Member
- 27 posts
- Joined: 10月 2018
- Offline
- eiji
- Member
- 16 posts
- Joined: 2月 2012
- Offline
- kazurati
- Member
- 27 posts
- Joined: 10月 2018
- Offline
- eiji
- Member
- 16 posts
- Joined: 2月 2012
- Offline
Solver SOPを使えば結構簡単にできるのですが、一つのWrangle SOPでやろうとしていろいろ苦戦して、ある問題があることが分かりました。どうやらsetpointattrib()はWrangleの処理が終わるまでジオメトリのアトリビュートの値が更新されないので、Forループ内で値をセットしても次のイテレーションで更新されるはずの値が取得できない事です。
サンプルファイル作りました。
debugと名前のつけたノードで上の事が検証できるかと思います。
takiさん、
setpointattrib()を使う場合に瞬時に値を反映させる方法はあるのでしょうか?
サンプルファイル作りました。
debugと名前のつけたノードで上の事が検証できるかと思います。
Image Not Found
takiさん、
setpointattrib()を使う場合に瞬時に値を反映させる方法はあるのでしょうか?
Edited by eiji - 2019年3月23日 06:03:59
- kazurati
- Member
- 27 posts
- Joined: 10月 2018
- Offline
- sho
- Member
- 45 posts
- Joined: 7月 2005
- Offline
- kazurati
- Member
- 27 posts
- Joined: 10月 2018
- Offline
- marv_kurushimay
- Member
- 1 posts
- Joined: 12月 2018
- Offline
kazurati古いスレッドで今更ですが、この点について気づいたことがあるので書き込んでみます。
まさか、ループ中はアトリビュートが更新されないとは・・
更新されないというより、入力と出力が完全に分離している構造になっているようです。
なので、仕様変更がない限りはループ中に値を更新して取得することはできないと思います。
各VEX関数のリファレンスでも、入力から値を取得する関数は
<geometry>
ノード(例えばWrangle SOP)のコンテキスト内で実行する時は、この引数にジオメトリの読み込み元の入力番号(0から始まります)を意味する整数を指定することができます。
出力に値を書き込む関数は
geohandle
書き出し先のジオメトリハンドル。現在のところ、有効な値は0またはノードの現行ジオメトリを意味するgeoselfのみです。 (将来、この引数は他のジオメトリに書き出せるようにする予定です。)
と明確に分かれています。たいていの場合、どちらも0など整数を指定する事が多いと思うので同一視しがちですが…。
RunOverがdetail以外では並列動作をするので、安定的な挙動を担保するためには適切な仕様だと思います。
それがdetailにも適用されているのは、Wrangleノードで共通仕様にしたかったからじゃないでしょうか。
まぁ、私もループ中で書き換えて次で参照したいってのはやりたくなるんですが。
なので、それを踏まえてWrangleノード一つで済みそうな処理でも、二つに分けないと実現できない事はちょいちょいありますね。
追記:
なので、仕様変更がない限りはループ中に値を更新して取得することはできないと思います。と書きましたが、RunOverをdetailにして、
・目的のアトリビュートをローカル変数にコピー
・ループ内でローカル変数に取得/更新
・最後に出力
とすれば、似たような事は可能でした。
並列動作できないので、大量のPointを処理するような処理だと重くなるとかあると思いますが、その辺が気にならないなら使える手段です。
Edited by marv_kurushimay - 2019年10月4日 01:39:27
- Ponta
- Member
- 92 posts
- Joined: 10月 2018
- Offline
-
- Quick Links