Hello Rhino Community,
Given Rhino’s Capabilities, I’m asking if it’s possible to do a 3d reconstruction similar to the attached picture given a set of 2D contours of all the surfaces at different slices.
The original paper (*3-D reconstruction of tissue components for atherosclerotic human arteries using ex vivo high-resolution) stated that it reconstructed the geometry with NURBS surfaces but I’m unsure of the following:
I want the interfaces to match for analysis later on, so it’s important that the surfaces match. I am aware of the loft function but i’m unsure of how to get the surfaces to match perfectly, I could split the curves based on the intersections but the geometry is very complex and i’m not sure if that’s possible.
Would rhino be able to deal with bifurcations in the 2D contours? Ie: the part in 3D splits from having 1 loop in 2D to 2 loops in 2D.
I would appreciate any guidance on the matter
Thank you!
Do you need closed solids? Are you 3D printing? What is you end goal? Just the analysis? Does this analysis happen inside of Rhino? If not, where? Knowing all of your parameters could help determine how to accomplish this.
In the Rhino vernacular, “match” is an action performed on the edges of surfaces. Do you mean some of the faces should be coincident or coplanar?
The short answer is yes, Rhino can most likely achieve these shapes with coplanar faces.
Have you tried the new QuadRemesh command in the WIP? I think it could be very helpful with this. Keep in mid there will be some resolution lost when converting a mesh into NURBS.
Perhaps add some screenshots to illustrate this question? I’m not sure that I follow. Do you mean you want to cut a section? Have you tried the Clipping Plane command?
Hey Ryan, thanks for the detailed response
More details are below:
1)“Do you need closed solids?” : Yes
2)“Are you 3D printing? What is you end goal? Just the analysis?”: Engineering analysis such as FEM etc, so the resulting volumetric mesh should all match in the sense that the nodes are shared between interfaces.
3)“In the Rhino vernacular, “match” is an action performed on the edges of surfaces. Do you mean some of the faces should be coincident or coplanar?”: Sorry for the confusion, what I mean is that we have 2 components (in the above picture: the red and orange components, I would want the surfaces to conform exactly to one another and occupy the same space) I can then possibly “fuse” or “remove duplicate” surfaces in a different program to mesh it for any engineering analysis. If I could only produce one surface between them directly that would also be good. I attached a 2D example of what I mean below:
The interface between the red and black object must conform exactly to one another, my worry is that when I loft the red curves along the Z direction and the blue curves in the Z direction the surfaces won’t be exactly coplanar!
4)“The short answer is yes, Rhino can most likely achieve these shapes with coplanar faces.”: That sounds great!
5)" Have you tried the new QuadRemesh command in the WIP? I think it could be very helpful with this. Keep in mid there will be some resolution lost when converting a mesh into NURBS.": I have no problem losing resolution and I think that’s a very useful command but I’m not sure how to get the mesh in the first place, would you recommend something like triangulating the pointcloud? I also have to make sure that if I produce a mesh directly from Rhino then the nodes are shared between the different parts at the interfaces.
6)" Perhaps add some screenshots to illustrate this question? I’m not sure that I follow. Do you mean you want to cut a section? Have you tried the Clipping Plane command?": Sorry for the lack of clarity, please find a crude drawing below:
Essentially, I have something like the red curve in slice 1, and in slice 2 it splits into the 2 blue curves, essentially the red curve has bifurcated into the two blue curves and I’m trying to figure out a way to connect them as a 3d part.
Hello - I splitting surfaces with surfaces should be possible if everything fully intersects, then join up the bits into whatever combinations make sense.