I select a face of the wall, and I want to extrude a solid by this face.
List<CurveLoop> Loop = face.GetEdgesAsCurveLoops().ToList();
Solid solid = GeometryCreationUtilities.CreateExtrusionGeometry(Loop,
face.ComputeNormal(UV.Zero), thickness);
It's an instance wall. If the CurveLoop is opened shouldn't be created.
I try to use the CurveLoop.IsOpen method to determine whether the CurveLoop is closed, but the results are all false.
I can't understand why "The profile CurveLoops do not satisfy the input requirements".
How to avoid this error.
Can I confirm in advance whether CreateExtrusionGeometry will succeed? Or how should I modify the CurveLoop?
Solved! Go to Solution.
Solved by RPTHOMAS108. Go to Solution.
What type of face is it?
The curve loops of certain face types will not be coplanar.
The face is planar face.
The face where the error occurs is the gray face.
I accept that there is an error on this face. After all, this face looks a bit strange. Refer to the picture on the right.
I want to know if there is a way to know in advance that the "CreateExtrusionGeometry" method will fail, let me skip it in the loop.
The method I currently use is try-catch. I'm not sure if this is the best method. After all, this method seems to greatly affect performance.
If that is one face then your attempt to extrude may be failing on the self-intersecting criteria.
Perhaps you could identify the intersection and form two independent extrusions if that is the case.
Can't find what you're looking for? Ask the community or share your knowledge.