How Would I Create Procedural Offset Cables?
6099 7 1- jbobbin
- Member
- 1 posts
- Joined: 5月 2019
- Offline
Hi,
Noob here, any help is much appreciated.
I am trying to make procedural cables based of a curve and copy to points line. The curve defines the shape of the cable and the Copy To Points line defines the distance between each cable and the number of cables (using a resample). Then sweep a circle (or polywire) to get the end geo.
I have have posted to reddit (https://www.reddit.com/r/Houdini/comments/fmawik/how_can_i_make_an_organised_procedural_cable/)
and they suggest Parallel Transport. I looked at Entagma tutorial on Parallel Transport but I haven't been able to implement it effectively. I looked through documentation and searched for tutorials but haven't found anything to help the process.
What I think I need to do is, using the newly created normals from the Parallel Transport tutorial and use a for each point loop to offset each point in the direction of the normals by X value (being driven by either the line length or by a created float parameter). I was also suggested to look at SideFX Cable Gen but I really want to try learn the process from scratch.
Here is an image (also attached) of what I want to create (minus the intersecting and the end position offsets) https://imgur.com/gallery/oWoiKHl. [imgur.com]
This is just a copy to point node, i have tried for each loop but can't wrap my head around it. I also tried peak sop but to no avail.
Please help! Thank you
Noob here, any help is much appreciated.
I am trying to make procedural cables based of a curve and copy to points line. The curve defines the shape of the cable and the Copy To Points line defines the distance between each cable and the number of cables (using a resample). Then sweep a circle (or polywire) to get the end geo.
I have have posted to reddit (https://www.reddit.com/r/Houdini/comments/fmawik/how_can_i_make_an_organised_procedural_cable/)
and they suggest Parallel Transport. I looked at Entagma tutorial on Parallel Transport but I haven't been able to implement it effectively. I looked through documentation and searched for tutorials but haven't found anything to help the process.
What I think I need to do is, using the newly created normals from the Parallel Transport tutorial and use a for each point loop to offset each point in the direction of the normals by X value (being driven by either the line length or by a created float parameter). I was also suggested to look at SideFX Cable Gen but I really want to try learn the process from scratch.
Here is an image (also attached) of what I want to create (minus the intersecting and the end position offsets) https://imgur.com/gallery/oWoiKHl. [imgur.com]
This is just a copy to point node, i have tried for each loop but can't wrap my head around it. I also tried peak sop but to no avail.
Please help! Thank you
- Midphase
- Member
- 833 posts
- Joined: 1月 2018
- Offline
jbobbin
I was also suggested to look at SideFX Cable Gen but I really want to try learn the process from scratch.
You can open the LABS Cable HDA and take a look at the various nodes that they're using. That will likely give you a good understanding of what's involved that you can then use to create your own process from scratch.
>>Kays
For my Houdini tutorials and more visit:
https://www.youtube.com/c/RightBrainedTutorials [www.youtube.com]
For my Houdini tutorials and more visit:
https://www.youtube.com/c/RightBrainedTutorials [www.youtube.com]
- Aizatulin
- Member
- 495 posts
- Joined: 7月 2005
- Offline
Hi,
here is an example using a parallel transport frame. The result is close to polyframe but in general more stable (no inbetween flipping) but it is also slower than polyframe.
Some basic ideas:
Create a curve. Resample the curve (with enough points). Create a parallel transport frame from the curve, which gives you tangent/up and N ~ (normal) attributes. Use the normal attribute to create offset curves, by just adding a constant amount of the normal on the points itself. (using for each to get multiple curves).
here is an example using a parallel transport frame. The result is close to polyframe but in general more stable (no inbetween flipping) but it is also slower than polyframe.
Some basic ideas:
Create a curve. Resample the curve (with enough points). Create a parallel transport frame from the curve, which gives you tangent/up and N ~ (normal) attributes. Use the normal attribute to create offset curves, by just adding a constant amount of the normal on the points itself. (using for each to get multiple curves).
- ScottKeating
- スタッフ
- 128 posts
- Joined: 1月 2012
- Offline
I'm not sure from your description exactly what you are attempting to do, but you could start quite simply by using a sweep SOP?
If you want to build something from scratch, you could also begin with an Orientation Along Curve SOP and Copy To Points, or even a Copy To Curve SOP.
Hope this helps,
Scott
If you want to build something from scratch, you could also begin with an Orientation Along Curve SOP and Copy To Points, or even a Copy To Curve SOP.
Hope this helps,
Scott
Senior Product Designer
Side Effects Software
Side Effects Software
- vusta
- Member
- 555 posts
- Joined: 2月 2017
- Offline
- Aizatulin
- Member
- 495 posts
- Joined: 7月 2005
- Offline
- matthias_k
- Member
- 483 posts
- Joined: 12月 2006
- Offline
- matthias_k
- Member
- 483 posts
- Joined: 12月 2006
- Offline
-
- Quick Links