As you know, last month we opened a beta program for the Data Exchange read APIs. We now also have a geometry SDK to allow desktop clients to be able to extract the geometry in a common format (STEP). The SDK is initially available as a C# .NET component. This SDK can help you to extract geometry into other desktop applications. This concept is another step toward the idea of building connectors to Data Exchanges to other products.
It is available as a NUGET package here.
The documentation is here, complete with a tutorial.
We are looking for feedback, and you can provide that using this email address.
To start, ideally you should have some experience with the Data Exchange feature and APIs. For those details check out this blog post.
Why STEP format? STEP is primarily a B-Rep format and from a design and manufacturing sense, is more accurately reflecting the original design intent. Here’s some use case examples:
If a construction company needs to share parts of a design with a subcontractor for fabrication, mesh data (from Model Derivative for example) is insufficient to convey information about the radius of a bend or the geometry of a counterbore hole. Manufacturing processes are set up to consume data that’s in STEP format so that measures like hole depth and radius can be derived from the model. On a B-Rep model, a set of similar holes or pockets can be selected for machining instructions, and the machining of holes can be optimized.
If some connecting parts are to be shared with a team who will design another part which fits into those connectors. CAD tools need B-Rep data to ensure a good match or joint between the two parts. Imagine sharing parts that will be assembled to create a paneled roof structure. If the panels and the connecting parts are B-Reps, then they can be designed to fit against each other.
If some geometry is extracted from a Data Exchange and is intended for inclusion into a Revit design, then B-Rep data works as a full participant in Revit - it can be dimensioned, and materials can be applied. Typical mesh data, when imported into Revit, can't facilitate this kind of work.
Why Desktop/Windows SDK? This is the first iteration of the SDK and it was determined some of the most useful places would be to allow data to be exchanged with other desktop applications. The priority was made for this environment, but we are looking for feedback about other environments. Please use the feedback link provided above, to provide input and reasoning.