PolyFrameノードが生成したtangentuアトリビュートにアクセスできない

   999   3   0
User Avatar
Member
8 posts
Joined: 8月 2020
Offline
いつもお世話になっております。
PolyFrameノードでNやtangentu(つまり法線や接線)を生成しました。
そのtangentuを計算で用いたいのですが、思ったようにアクセスできません。

具体的には、tangentu[x]は「@tangentu」でアクセスできます。
ですがtangentu[y]やtangentu[z]にはアクセスできないんです。

PointWrangleにて、
f@x = @tangentu;
はOKですが、

f@x = @tangentu.x;
だとエラーになります。もちろん.yや.zもだめです。配列のように[0]としてもダメです。
@tangentuはベクトルではないのでしょうか?

なお@Nは普通にベクトルとして操作できるで非常に混乱しております。
添付ファイルや画像を添付しますので、何か分かることがありましたら是非教えてください。

環境:Windows版Apprentice 19.5.752
Edited by Kantata - 2023年11月11日 09:34:03

Attachments:
質問用1.hipnc (469.8 KB)
2023-11-11_23h13_04.jpg (809.9 KB)

User Avatar
Member
6 posts
Joined: 7月 2022
Offline
@tangentuはVector型ですのでv@tangentuでXYZにアクセスできるようになります。

Attachments:
capture_20231112-064357.png (534.8 KB)

User Avatar
Member
8 posts
Joined: 8月 2020
Offline
ありがとうございます!確認できました。
@の前にvを明示する必要があるんですね。

@Nでは特に必要なかったので、気づきませんでした。
これは組み込みアトリビュートかどうかの違いなんですかね?
User Avatar
Member
6 posts
Joined: 7月 2022
Offline
そうですね。
Houdiniは特定のAttributeに関しては直接アクセスできるように設定されています。
なので@P、@Cd、@uv等はv@と明記しなくても直接アクセスできるようになっております。
  • Quick Links