How to make a particle move along a ellipse orbit?

   10503   9   3
User Avatar
Member
160 posts
Joined:
Offline
I want to use some expressions to make a particle move along a ellipse orbit with sepcified radius and center.

but ,if i use position Pop, i will can't modify the velocity and the acceleration.

if i use velocity pop .I have no way to get the correctly orbit
how to deal with this case?

Attachments:
circularmove.hipnc (71.2 KB)

User Avatar
Member
7724 posts
Joined: July 2005
Offline
Try the Orbit POP.
User Avatar
Member
35 posts
Joined: Oct. 2007
Offline
I had to deal with this problem a few months ago. As far as I remember the orbit pop doesn't do elliptical orbits. My solution isn't relevant here, as the design direction changed, but I would be curious to know other people's solutions. It would be nice if the orbit pop had the facilities to do this.

-ranxx

edward
Try the Orbit POP.
User Avatar
Member
1145 posts
Joined: July 2005
Offline
Here's one way using an Attractor pop and point forces, the trick here is that you must have a Drag pop as well.

Attachments:
particles_elipse.hip (54.4 KB)

“gravity is not a force, it is a boundary layer”
“everything is coincident”
“Love; the state of suspended anticipation.”
User Avatar
Member
35 posts
Joined: Oct. 2007
Offline
this looks more like a curve flow, which is cool, but I don't see an elliptical orbit. I am curious how you could get a real elliptical orbit, without doing a spherical orbit in pops and scaling the whole thing.

-ranxx

probbins
Here's one way using an Attractor pop and point forces, the trick here is that you must have a Drag pop as well.
User Avatar
Member
192 posts
Joined: Nov. 2008
Offline
I am curious how you could get a real elliptical orbit

Here's one approach with an SDF driving the orbit. The nice thing about this approach is the shape can be whatever you want it to be - no limits.

Attachments:
elipticalorbit.hip (57.3 KB)

User Avatar
Member
30 posts
Joined: July 2009
Offline
Hi,

I am working on the particle follow a curve, and i think i can solve your problem if you let me know how to get the particle birth ? I mean every time a particle emitted, i want to know at what frame(or exactly at what time) this particle emitted. I am new to houdini, sorry .

I did make a sphere orbit around an ellipse mathmatically which let me specify the origin and speed of the movement. I am stuck at the particle birth so it got a wrong movement.

And one more thing, particle system in houdini is a bit different with other application i used before. I am not sure that the calculation step is per frame or per second or per whatever !
User Avatar
Member
42 posts
Joined: Nov. 2006
Offline
brianBurke
I am curious how you could get a real elliptical orbit

Here's one approach with an SDF driving the orbit. The nice thing about this approach is the shape can be whatever you want it to be - no limits.
i like this approach.

in tinkering with it, i noticed the orbit is expanding. i don't have a perfect fix, but i was able to use a Displace Along Normal VOP to get the points back onto the SDF surface… but now i get a little compression in Y. other attempts cause banding or bunching of the particles if allowed to run long enough.

what'd be a good method for keeping the particles in orbit without expanding and allow for more than just a flat film of particles?

another Q: how can a random velocity be set for each particle? so that some orbit faster than others? i tried sending “2*rand($ID)” via a param and multiply that with the outputted velocity, but it appears to be constant for all particles.

thanks.
User Avatar
Member
192 posts
Joined: Nov. 2008
Offline
in tinkering with it, i noticed the orbit is expanding. …

what'd be a good method for keeping the particles in orbit without expanding and allow for more than just a flat film of particles?

You can use a VOP SOP to create a rest attribute for the oribit level sampled from the SDF. You can then compare this rest orbit level to the current orbit level of each particle and correct the velocity based on the difference.

If you emit from a volume you can get more than just a flat film of particles.

another Q: how can a random velocity be set for each particle? so that some orbit faster than others?

The VOP POP isn't going to respect your per particle $ID variable, but the same “id” variable is available to you inside the VOP POP. You can string this into a Random VOP and use it to scale your velocity.

I attatched a file showing these few things.

Good luck dude.

Attachments:
elipticalorbit2.hip (92.0 KB)

User Avatar
Member
55 posts
Joined: May 2013
Offline
I came across this thread while trying to do something similar and thought I'd have a go. In case it's of use to anyone here's the way I came up with.

I'm pretty new to Houdini so I'd be interested to hear if this is in some way an inefficient way of doing it or if there's some flaw I haven't thought of.

Attachments:
orbitingParticles.hipnc (98.7 KB)

  • Quick Links