Ruled solid from ruled surface with Brep.CreateFromOffsetFace (C#)

So I am trying to make a ruled solid from a ruled surface, however using the Brep.CreateFromOffsetFace does not yield the desired results. Around the edges, where the parts of the ruled surface are only G0 continous, the offseted corners are not sharp, but rather creased. To show in pictures:

The rhino result:

The desired result:

For more reference, the generating surface, and the generated (and trimmed) solid:
ruled.3dm (157.4 KB)
ruledsurface.3dm (79.5 KB)

My first question is, that am I using the right RhinoCommon method for this assignment?


Gábor Tóth

Graphisoft, Hungary

@pascal, can you provide any insight here?

The problem I see is that getting from plain offsets of the individual surfaces (ruledsurface.3dm) to the desired result is actually a pretty big step - extending the offsets to that they meet up cleanly is a bit of work but possible using Rhino’s ‘manual’ tools but would require some decisions about how and where to extend surfaces and edges and where to cut that seem to me hard to automate.


Yes, we realized that as well, that a manual algorithm would be hard to implement. Also I circeled the vertices, but my real problem is only with the edges where the offseted surfaces should be extended and meet (or they intersect and should be cut).

ruledoffsetedsurface.3dm (78.3 KB)

your surface offset command already seems to make these “decisions”, as shown in ruledoffsetedsurface.3dm. From your answer I deduce, that in rhinocommon there is no such method, and we have to implement the algorithm manulay.