specklesystems / speckle-sharp

.NET SDK, Schema and Connectors: Revit, Rhino, Grasshopper, Dynamo, ETABS, AutoCAD, Civil3D & more.
https://speckle.systems
Apache License 2.0
370 stars 170 forks source link

Blocks POC (Rhino, Acad) #3519

Closed didimitrie closed 3 months ago

didimitrie commented 3 months ago

Unfortunately does more things that originally intended 😅

What/why? Adds support for sending blocks (non-dynamic!) between rhino<>rhino, acad<>acad, and rhino<>acad. It's also driving this in a new, "cleaner" approach that was discussed... since pretty much the retreat in Athens 😅

Tl;dr:

The above provide support for sending and receiving blocks (static blocks, not dynamic blocks) to and from Rhino and Acad.

Extras:

A question that arises fast but i do not want to solve in this PR: formalisation of the root commit object structure: yes, it's a collection, but where do we store definition proxy objects? currently attaching as a dynamic prop, so we're relying on convention. Imho, good enough to merge for now as I'd want to implement one extra similar case before we generalise (eg., rhino groups? materials?)

more notes: https://www.notion.so/speckle/Blocks-Journal-e358f6a4db7c46859ae419ff2c7dbdd6 jira tix: https://spockle.atlassian.net/browse/DUI3-120

BovineOx commented 3 months ago

I did just ask for a ticket to make it interfaced out and add some tests and a question about splitting the interface but that's all

adamhathcock commented 3 months ago

Needs https://github.com/specklesystems/speckle-sharp-sdk/pull/6