specklesystems / speckle-sharp

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

feat(Revit/AutoCAD): scope better handling of project base point and survey point #726

Closed clairekuang closed 2 years ago

clairekuang commented 3 years ago

Proposed solution: send all geometry relative to the internal origin, across all connectors. Attach project base point and survey point. Include option to convert to native using project base point or survey point on receive in all relevant connectors.

EDIT 9.12.2021 -> Scaffolding a solution that first requires adding a settings page to DUI2: #921 Should allow for any project point to be selected on receive only

EDIT 7.2.2022 -> Implement for just revit atm, add civil3d and bentley in the future.

teocomi commented 2 years ago

Ugh, the base point is haunting us again... Are you suggesting attaching BP and SP to the commit or to each object?

If we attached them to the commit, they won't be used when objects are pulled individually, but attaching them to every object would mean polluting a lot our data... 😤

clairekuang commented 2 years ago

Not happy with either option, hoping there's a better one - could we store them in globals (in which case we would need to pass additional params from the connector to the converter)? Would it be feasible to add an option in the new UI? I do think this needs to be addressed in some capacity though & not left as is, since it makes the connectors a lot less functional for rhino/revit/civil standard users

dickelsman commented 2 years ago

Not sure if I am supposed to comment here as well :), but anyway we can do an analyzation based on the distance of the geometry to the 0 point of the coordinate system used on the active site. if this distance is logical (is it app. the same as the IO vs the 0 point (+/- the 16 miles) of the coordinate system or not). if it is illogical, we can throw an exception and use the user to provide the correct position.

tlmnrnhrdt commented 2 years ago

Hi, we just came across a similar issue with Bentley OBD, which stores all geometry relative to the internal origin as well.

So I strongly support this feature! ;) Do I understand correctly, that this is currently a new feature only for the new UI?

teocomi commented 2 years ago

Correct, DUI1 will be deprecated soon, so we're only adding it to DUI2.