I wanted to ask if there’s a recommended workflow in Rhino 8/9 to create dynamic sections using native tools.
What I’m trying to achieve is a way to compare a NURBS or SubD surface against a scanned mesh, with each object displaying section curves in its own color. This makes it much easier to evaluate changes in real time while moving control points.
I know that Cyberstrak offers this functionality, and VSR had something similar in the past. I haven’t tested Rhino’s dynamic section tools yet, as my understanding is that they’re mainly intended for generating 2D drawings rather than real-time surface evaluation.
I can imagine that a simple Grasshopper definition could work, but before going that route I wanted to check whether there’s an existing or more straightforward solution I might be overlooking.
As a workaround, I’m currently creating an array of straight lines and projecting them onto the objects with history, using a custom linetype to improve visibility—but it’s far from ideal.
Any suggestions or insights would be greatly appreciated. Thanks!
Hi @wim thanks! I never thought about contour, maybe because when I used in the past was to get sections for laser cut, never for something interactive.
This solves my request, I was about to ask for a limited area to create the sections, but exploring more in deep the command I found that it has a range feature.
The only issue I found is that the custom linetype doesn’t update with history, but if you add the custom linetype to the document and assign it to the layer it works as expected.
Thanks a lot @Tom_P !
I’m not sure if I’m understanding the precise method you are suggesting, I created some sections and then created points with divide over the reference geometry.
After than hid the curves and used the points as reference with _pointDeviation to edited the nurbs surface.
yes - but if your reference geometry is a subd use a mesh and therefor the mesh-vertices.
put the reference geometry’s sample point or mesh on a separate layer:
my recommondation: approach the target surface from one side.
do iterations
fit within 5mm
fit within 2mm
fit within 1mm
fit within 0.5
fit within 0.2 (optional)
fit within 0.1
…0.05, 0.02, 0.01, 0.005, 0.002, 0.001
its around 7 iterations and this discipline helps a lot.
for visual stuff stop latest at 0.1 (sheet of paper) or 0.05
a negative hair scale might be helpful.
there is more finetuning of above workflow…
lazy start: start with subd, project the surface edit points (_editPtOn) to the target,
toNurbs, Rebuild → manual finetuning only.
or
start with the edge curves project them loose, edgeSurface work with the inner cv’s only…
Thanks for the detailed explanation — it makes a lot of sense. I’ve been working with VSR for the last 10 years for reverse-engineering workflows, but with the new enhancements in Rhino 9 I’m trying to get the job done using native Rhino tools only. I’ve used the PointDeviation command from time to time, but it never felt intuitive enough for this kind of task.
Sticking to V5 (for VSR) comes with some limitations, and ideally I’d like to solve everything directly inside one Rhino version. If we had something like ELMO for surfaces, I think the workflow could be much stronger — but that’s probably a topic for another discussion.
I somehow missed buying / setting up a V5 with VSR only used it on a sandbox virutal machine with the trail version, but this is not working anymore…
point deviation and it numbers can be set by macro starting with “-” -_pointDeviation …
if you name the object you can do the selection with selName inside the macro…
still bricolage …
and yes i totally agree - this is a field with huge potential of improvements.