Surface edges are not divided as cutting polyline

Hi Guys,

In the picture below are the polyline used to trim the surface (with control points visible) and the surface trimmed with this polyline (with edges shown in pink).

As you can see the edges fit to the polyline control points up to the place where the polyline is nearly straight.
comparison

The funny thing is that when I Duplicate Edge I get original polyline:

I need the edges reflect the polyline exactly because I’m sending surfaces to Robot (via *.SAT file) and now panel edges are not divided as the polyline is.

Thank you in advance for any hint what is going on,
Krzysztof

go to file, properties, units and change the absolute tolerance to 0.001 or 0.0001,
the lower you go the more accurate you get

It did not help.

Thing is that the edges do encapsulate all information about topology of the polyline, because I can retrieve the original polyline with Duplicate Edge command.
The problem is that this information is somehow hidden in edge deffinition and this cause problems with sending geometry by *.SAT files.

In the pictures above I showed the polyline slightly offsetted from the surface only to make the picture more clear.
The issue is that the edge is not divided as the pollyline, not the offset.

i was editing my comment to say that the tolerance maybe is not the answer, since i realized it was the control points number that was the problem. sorry for that.

No that is not what you see.

What you are seeing is the showedge command display. The points that are displayed are edge vertices.
Vertices are the points on the edge where the continuity is G0.

That dupedge curve should be the actual edge geometry that gets exported

The polyline comprises of straight segments, so the continuity should be G0 everywhere. Why the edges have continuity higher than G0 only in some places? Maybe it has something to do with tolerance as Miled Lous Rizk has sugested?

No they will be G1 where the angle is close to zero. How close is determined by your document angle tolerance.

The point is ShowEdge is not showing control points - its showing edge vertices,

You already explained when you said “As you can see the edges fit to the polyline control points up to the place where the polyline is nearly straight.”

As you can see in the picture above and what already was mentioned before (Duplicate Edge), geometry of the edges and the polyline is exactly the same. What I want is to avoid grouping polyline straight segments into one larger edge. This is what happened, because there is no other explanation for why we have 134 control points in the polyline and only 82 edges and we are not loosing exactness of geometry. Maybe there is a secret functionality to force Rhino to not group edge segments like this?

The picture below shows how panels in Robot looks like after importing geometry from Rhino via *.SAT file:


This uneven division cause problems with FEM meshes.

Hello - I do not see a way to force this - I’ll see what I can find out.

@krzysztof.mierzwa - if you can trim with an exploded version of the polyline, you should get the edges you’re after.
If the surfaces are planar, you can use this simple python to make the objects.


import rhinoscriptsyntax as rs



def test():
    
    crvId = rs.GetObject("Select a curve", 4, preselect=True)
    
    if not crvId: return
    
    
    ids = rs.ExplodeCurves([crvId], True)
    srfId = rs.AddPlanarSrf(ids)

    
    
test()

-Pascal

1 Like

Thank you so much Pascal,

it works in Rhino.
Unfortunatelly, I still have a problem with Grashopper:

I have added explode applet, but it seems under the hood, Grashopper is changing lines into polyline because I’m still not getting right divisions.

Anyway, big thanks to everybody for your time spent to help me.

Do you think I should report this issue to Grasshopper developers?

Hello - I see that - even with a script component to create the surface the result has simplified edges - I guess I would check in with the GH forum - there may be something I am missing.

-Pascal

1 Like