algorithmic modeling for Rhino


I would like to ask if there is a method / paper describing how to offset n valence planar solids?

I used approach described below, but this only works if a vertex shares 3 edges.

With 4 you can see that this does not produce good result.

I simply intersecting offset neighbour planes.

I could offset meshes using vertex normals but this method not necessary result in planar polylines.

Views: 808

Replies to This Discussion

This one might be a starting point, as I recall it has thorough references for mesh offsetting under architectural constraints (such as planarity). 

This one is from AAG 2016, I read it once, and it seemed a bit tricky solution with those tiny bits at the corners. And this results in polygons starting from triangles. But this probably geometrically not possible to  maintain the same shape.

Other way around I was thinking to extrude edges by vertex normals and planarize extruded edges. But this results shifted planar tiles. 


Indeed. Another option might be to relax the faces planar after offsetting (using Kangaroo). That might distort the geometry too much though, depending on the specific case and its requirements.

But the first is actually quite nice and simple approach. What he did is actually adding triangles for edges that misalign.

He probably does this by getting intersection line around vertex edges.

Plus edge has to be in order, and this is why they mentioned dual.

I will try to implement that.:)

But to do that for naked edges is a bit tricky

Yes, in general meshes (even planar ones) with node valences over 3 don't have offset meshes with parallel faces which keep the same valences at the nodes.

One option is to allow the node valences to change like described in Elissa and Daniel's paper that Anders links above.

As you say, another option is to move vertexes along their normals then try and restore planarity, but generally the geometry will have to change a little for this and the faces will no longer be parallel to the original mesh.

A third option if you allowed to modify your starting mesh is to make sure it has properties guaranteeing that parallel offsets of the faces results in a mesh that still nodes out with the same valences.

Namely the properties you need for this are circular or conical meshes. These both have parallel offset meshes, the former with constant vertex-vertex distances, and the latter constant face-face. Pottmann's group has written extensively about these for instance this paper.

This is very nice reference Daniel thank you:)

It is exactly how I am doing that just with rhinocommon planeplaneplane intersection for getting point. Also using bisectors you can do it much quicker.


for 4 valence, geometry you get those which is the case described in the paper Anders referring to:





© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service