This method has 2 boolean input parameters. One for “outer” and one for “inner”. What’s the difference between the two?
And another question I had regarding this method. Does this method produce the same result as this example? @dale
This method has 2 boolean input parameters. One for “outer” and one for “inner”. What’s the difference between the two?
And another question I had regarding this method. Does this method produce the same result as this example? @dale
Hi @siemen,
I’ll see that the missing comments are added - thanks for pointing out.
Setting outer
to true
will return naked edges that are part of an outer loop.
Setting inner
to true
will return naked edges that are part of an inner loop.
Other than the curve joining part, included with the code sample, the two should produce the same result.
– Dale
Thanks!
Not sure if I get this part. What is the outer or inner loop of a brep? Could you show an example?
red is outer, green inner
That made sense, thanks!
Additionally, it should be noted that the inside and outside can only be determined for trimmed surfaces with holes, not polysurfaces with an inner hole of some kind.
Yes that’s correct. Inner holes however could still be extracted, though not sure if this is the best way:
import rhinoscriptsyntax as rs
import scriptcontext as sc
obj = rs.GetObject("select brep")
obj = rs.coercebrep(obj)
faces = obj.Faces
for face in faces:
brep = face.DuplicateFace(False)
crvs = brep.DuplicateNakedEdgeCurves(False, True)
for c in crvs:
sc.doc.Objects.AddCurve(c)