Grasshopper can SplitEdge?


can grasshopper SplitEdge for brep?


I believe there are several ways to do this, just share a screen capture with an example to be easier to help on the task.

Thank you. Can you provide some information?

Use “Deconstruct brep” component

not Deconstruct brep, like rhino command ! _SplitEdge to split brep edge

Either you get the BrepEdges (as Curves) and then split them via some cutter (Plane/Brep) Or get the inner/outer Loops (as Curves) on a per BrepFace basis and then split them.

For the latter see attached as an indicative demo (it’s pure C# code using a Plane but I could add an option for some external cutter (Plane/Brep)).

Works on Brep Lists and the output is a 3 dim Tree - of Type Curve - where 1st dim is the Brep index, 2nd is the Face index and 3nd the index of the Loop in the Face picked - info is provited about the Outer/Inner Loop state. (140.4 KB)

nice, thank you

BTW: A filter for results on a per Plane Z pos/neg space segment is very easy to add.


I am trying to split the edges of the surface where they intersect with the curve.

Well … this BrepFace has an Outer Curve with 4 segments (and no Inner Loops). For each segment set the Domain to an Interval (0,1), test for Ccx events VS some Curve(s) and if the events are not null sample the Ccx T value(s) in some collection (Array/List), Sort them and then Trim the segment (using Intervals: from 0 to first T [if distinct], then from first T to second … then from Last T to 1 [if distinct]) . This is the general case where there’s more than one Ccx event.

BTW: for the case captured there’s only one T Ccx event/value (so the Curve.Split (double) RhinoCommon Method can been used - no need for re-setting the Domain).

Notify if you need a C# that does that (but is also doable with components - I assume).

hi @PeterFotiadis ,

thanks for your help, forgive me for being a novice in code. Can you share the sample file with c#?

See attached (4 dim out Tree - see inside C# for what the Path indices mean) (139.4 KB)