Skip to main content
5 of 5
added 133 characters in body
lemon
  • 60.8k
  • 3
  • 68
  • 141

enter image description here

The strip follows the cone using this principle:

  • The cylinder turns due its parent, an empty which rotates
  • The strip object turns too, with the same empty as parent
  • The cone orientation (-Z axis) and location are used to ray cast on the cylinder: this gives a new position on the cylinder to complete the strip

All that is done using Animation Nodes.

More detailed steps:

  • Calculate the cone location and -Z orientation in world coordinates
  • Raycast on the cylinder from these previous parameters
  • This raycast gives a position on the cylinder and the normal of the hit face
  • Calculate the new strip part position from this previous data, extending it along the cone X axis and shifting it a bit along the face normal
  • This calculation replaces the last two strip vertices
  • Add new two vertices to the strip and place them at the cone position
  • Make a new face for these last 4 vertices
  • Input back all these vertices and polygons in the strip geometry

The overall cartography:

enter image description here

1/ Calculate the ray cast and new strip part's position

enter image description here

2/ Give a width to the strip

enter image description here

3/ Extract strip's current geometry

enter image description here

4/ Calculate last 2 previous vertices index

enter image description here

5/ Injects updated and new vertices in the strip data

enter image description here

6/ Make a new face from the last 4 vertices

enter image description here

7/ Put all back to the strip data

enter image description here

Note:

  • To make it work, the strip have to include at least an edge at the beginning of the animation.

  • This node setup is "constructive", at each frame it creates new vertices, and this is not rolled back at the end of the animation. So, to replay it, edit the strip and delete all its vertices except the two first ones.

To do list:

  • Constraint the cone -Z axis to always point to the cylinder, as if not the raycast will fail

  • Raycast on the strip itself too so that it superimposes on both the cylinder and on itself

  • Not only raycast one (middle) point, but the two extremities of the newly created strip's vertices

enter image description here

Another example, following the comment:

enter image description here

lemon
  • 60.8k
  • 3
  • 68
  • 141