How to pin curve ends to two moving objects

   9947   6   3
User Avatar
Member
130 posts
Joined: April 2009
Offline
Hi Guys & Gals,

Need help! I've been strugling yesterday and today with the following problem:
I have a NURBS curve (or a line), which will - in the target animation - be sweeped and skinned to form a tube. I need to attach/pin the first point of the curve to object #1, and the last point to object #2. Both objects are moving in an irregular way, so manually keying such link seems extremely difficult.

I don't really need any simulation to animate the mid-points of the curve, but I won't care if it is necessary to set up a sim to do the pinning. But, it seems to me that there must be some simple “Houdini” way to achieve this.

All hints/help highly appreciated, as I need to solve the problem quickly.

Thanks in advance,
Greg
User Avatar
Member
7733 posts
Joined: July 2005
Offline
Offhand, I don't think it's going to be easy to maintain constant curve length without using DOPs. Now, if you forego maintaining the curve length, maybe you can just assign some expressions to the mid point positions that depend on the end point positions. Or maybe the Spring SOP can help but I'm just talking out loud here.
User Avatar
Member
130 posts
Joined: April 2009
Offline
Thanks,

I do not need to worry about the length - I am key-framing the mid points anyway, via series of parallel “edit” nodes merged via sequence-blend.
It's the end points that are so painful, as right now I'm keying them every second or so, and I still can't get them positioned precisely enough.

So, such an expression you mentioned might work, but how to approach it? I created groups for the end points, and attached transform nodes to each group - now I guess I need to figure out the expressions needed to calculate the transformation against another moving object.

Greg
User Avatar
Member
1390 posts
Joined: July 2005
Offline
aiworks
Thanks,

I do not need to worry about the length - I am key-framing the mid points anyway, via series of parallel “edit” nodes merged via sequence-blend.
It's the end points that are so painful, as right now I'm keying them every second or so, and I still can't get them positioned precisely enough.

So, such an expression you mentioned might work, but how to approach it? I created groups for the end points, and attached transform nodes to each group - now I guess I need to figure out the expressions needed to calculate the transformation against another moving object.

Greg

Hi Greg,
not sure if I understand what you're after, but this is as I get it . One of possible ways.

sie ma!
skk.

Attachments:
moveEndOfCurve.hip.zip (7.8 KB)

User Avatar
Member
130 posts
Joined: April 2009
Offline
Hi SYmek,

Huge, huge thanks! Exactly what I've been looking for, the “origin” thing!

Greg
User Avatar
Staff
2540 posts
Joined: July 2005
Offline
Do Rivet Objects work for you? Just point them at the Object/SOP and then one or more points.

Then object merge in the point in to your curve building process.

With the rivit, you can supply 3 points and get the actual surface normal orientation. With that you can control the tangent at that point where the curve touches the surface.
There's at least one school like the old school!
User Avatar
Member
130 posts
Joined: April 2009
Offline
Thank you, Jeff,

After a bit of experimenting with the “object merge”part, I got your solution to work for me.

At first, I attempted to parent the rivet to a new geo, which consisted of object merged 1-point group of the curve, but I found out that this would not work, and I still do not really understand why. So then I object merged the point inside the rivet thing into my curve SOP, and re-constructed the curve using the extra point, and this worked fine.

Thanks again to you and SYmek!

Greg
  • Quick Links