algorithmic modeling for Rhino
Mateusz Zwierzycki, Petras Vestartas
Thanks David Reeves for SpatialGrid to speed up Line Line collisions.
Tags:
Comment
Braiding became weaving:) But I believe instructions can be given to inform braiding.
SpatialGrid:
https://github.com/daveReeves/SpatialSlur/tree/master/SpatialSlur/S...
A spatial grid is only really appropriate for range searches. For nearest neighbor searches, BSP trees (RTree, KdTree, OcTree, etc) are generally still the way to go despite their slower build time. Furthermore, in this case I equalized all segments, so I make the search by middle point of line. David Reeves suggested Line rasterization when colliding very long and short segments. Also I have tested rtees only event based from rhinocommon, if rtee is not event based it should be faster.
One more thing is self-collision. If you do not have for instance mesh / polyline that does not loop within itself like mobius knot, you can have very small number of collisions. But in the this woven thing we cannot avoid it.
If creating custom Kangaroo Solver it is really difficult to work with Rhino meshes, due to different indexing in topology edges/vertices and edges/vertices. The code was much much more cleaner using Plankton or PolyMesh. Then in this case, there are many similar goals. Therefore it was faster to use less interfaces. For instance, instead of creating each spring goal for each line it is better slightly modify equal length goal and have one goal.
More nice work guys. You were experimenting with both RTrees and SpatialGrid right? How do you find the performance compares between them for this?
where can we find spatial grid?
great work guys - the underlying question has sth to do with braiding, or? ;-)
Welcome to
Grasshopper
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
© 2024 Created by Scott Davidson. Powered by
You need to be a member of Grasshopper to add comments!