Context
Most of what is available in the industry today for interop implement a quick solution, by extracting the display mesh of a scene/model and only handling meshes from that point on. This is fine if the pipeline is a visualization pipeline, but for engineering, analysis, production, and construction pipelines it is more important to keep the geometry type as native as possible. This means the ability to keep it a NURBS or BREP geometry the entire time. Generating a mesh from that is simple. Generating surfaces and solids from meshes is much more difficult.
Problem
Currently, when sending a speckle stream from Revit to Rhino or Rhino to Revit, the geometry received are meshes. This is fine if all you need is context, but if you are creating a pipeline where one asset is modeled in Rhino but documented in Revit, the fidelity and accuracy of the asset needs to be as close to the source as possible. This often means a NURBs surface in Rhino becomes a Freeform Element in Revit.
Question
I’m new to Speckle so candidly I may be missing a desired workflow. Is there a workflow that can support this? If not, are there any plans to support more geometry types across more apps? It is not an easy task. USD is plagued by the same problem.