Calulating a circular movement of a light-source

Hi, I was trying to do this but didn’t quite figure it out.

If I want a 3d-point to move exactly within a circular path. xy, xz, yz, and beyond, I would have to calculate waveforms that correspond to each other right? And if I want the points to differ from straight dimensional principles, like a 45 degree xy and a full 180 degree circular movement it would become more complex.

Is there a way of solving this more easily?

Hi, @bnvisuals.

If I want a 3d-point to move exactly within a circular path. xy, xz, yz, and beyond, I would have to calculate waveforms that correspond to each other right? And if I want the points to differ from straight dimensional principles, like a 45 degree xy and a full 180 degree circular movement it would become more complex.

Two ways you can do this:

  1. Use Vuo 0.8.0’s new Calculate node: cos(time) for the X position, and sin(time) for the Y position. But, as you noted, this will become more complex if you want movement on something other than the XY/XZ/YZ planes.
  2. Use hierarchical transforms. In the attached example composition, I’ve moved the sphere off-center (the orange Make 3D Transform node). Then, I’m using Combine 3D Objects to apply a second transformation to it — a rotation created using the violet Make Quaternion from Angle node. You can feed any 3D vector into the axis port, and it’ll orbit around that axis.

Edit 2016.02.22: Updated composition for Vuo 0.9+.  

orbit.vuo (4.06 KB)

Thanks @smokris! This is really helpful!

Hi again @smokris,

Had a go at the document you posted. Having a little hard time moving the light with this principle.

It is moved trough xyz and cannot be rotated, it seems like. Attatched a first try here, can you tell me if I’m doing anything wrong?

orbitX.vuo (4.79 KB)

I may misunderstand the question, but I made this example that shows the light moving in a circular path in x and y dimensions by using the Calculate node. It didn’t look like the setup in orbitX was moving the light, it looked like it was moving the object.

orbit circular path xy.vuo (6.88 KB)

@george_toledo and @smokris. I’ve recently had the time to look more thoroughly at this and understand it better now. I’ve also figured out how to apply the “Quaterion” to light movement, but with the example @smokris showed its only for rotational purposes. The problem is that I need the light source’s position at any time to be able to use it’s xyz-possition for further placement. With @george_toledo’s solution this is easy, but I would really like the path of the light to swing out of a 2D path in 3D. Any ideas?

orbit_qaternion_no_xyz_pos.vuo (5.19 KB)

@bnvisuals, regarding making the light swing from a 2D plane into 3D — you could do that by applying multiple transformations to the same object. For example, start with your orbit_qaternion_no_xyz_pos.vuo, and take the output of Combine 3D Objects and connect it into another Combine 3D Objects node, with another Make Quaternion from Angle — but this time give the latter node a different axis vector.

.