5
$\begingroup$

Before I begin here, I'm not talking about Node Editor nodes: I understand those just fine.

I want to make an animation. Nothing too fancy - something like this:

(Something very similar to this would be nice) In which the dots move around, the lines / connections with them.

However, my conundrum is that, unlike this, I would like the connections to be capped at a certain length. I can't really explain this, so here is another image.

So that dotted line would not be displayed. Anyway, my question is, how would I go about this? Freestyle? Shape keys? A lot of toggling that little eye on and off? Node or code wranglin'?

$\endgroup$
4
  • 1
    $\begingroup$ You can use Sverchok. Not an expert, but I'm sure it provides an option to omit edges longer than x. $\endgroup$
    – p2or
    Commented Oct 20, 2016 at 10:10
  • $\begingroup$ Seems like something that wouldnt be too difficult to script up. Find all node objects in a scene, get distances between them and draw cylinders between ones that are within a certain range. Do a move (random or organized) and repeat. $\endgroup$
    – g19fanatic
    Commented Oct 20, 2016 at 13:01
  • 1
    $\begingroup$ The title of this question won't be useful to others, but something like "automatically generating edges (with maximum length) between an animated set of Vertices" , might. $\endgroup$
    – zeffii
    Commented Oct 21, 2016 at 7:00
  • $\begingroup$ There is also similar question: blender.stackexchange.com/questions/63091/… $\endgroup$ Commented Nov 13, 2016 at 9:31

1 Answer 1

5
$\begingroup$

You could use Sverchok or Animation Nodes, if you are comfortable with Nodes (and don't want to write any Python). Because I am a developer of Sverchok I'll show how you might approach it using using that add-on.

Sverchok

Generating the meandering vertices is what looks most complicated here, but it's sampling points on a perlin-like 3d noise system. How you generate the position of your 3d points is up to you; could be read from a text file with xyz position per frame.

Making Edges is done with a single Node (KDTree Closest Edges) which makes K-Dimensional Tree of the incoming vertices and spits out the possible edges given the configuration parameters

  • min distance
  • max distance
  • max num edges per vert
  • skip first n edges per vert

enter image description here

That gets the basic concept going, then it's a matter of choice how to represent the Circles (verts) and Lines (probably flat shaded Curve Objects (straight) with thickness).

Then after experimenting with the meandering algorithm and min/max edge length, you'd add a few Viewer Nodes (BmeshViewer and Curve Viewer)

enter image description here

It can be animated by keyframing the left most Float node labelled Driver Value.

$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .