Hi all,
I’m building a Revit-side QA/QC tool that, before publish, checks:
“Do my Revit shared coordinates match a chosen Speckle reference model? If not, fix them.”
To do this robustly, I need to understand exactly how/where Speckle exposes coordinate “truth” for Revit models.
Could you help clarify the following?
- Where to read origins:
For a Revit model sent to Speckle, is there a stable, documented place to read:
- shared / survey origin (E/N/Z),
- project base origin (if exposed),
- angle to True North?
Is this stored as explicit metadata (e.g. on the commit/model/project info), or only implicit in transforms?
- Units & frame of reference:
In what units and frame are those origin values expressed?
- Revit internal units (feet)? meters?
- Local cartesian project coords or geodetic (lat/long + CRS)?
Is there a field that tells me the units / CRS, or is it implicitly “whatever Revit uses”?
- Reference Point setting visibility:
When the Revit connector sends a model with Reference Point = InternalOrigin / ProjectBase / Survey, is that choice visible anywhere in the Speckle data or metadata?
Or should we assume a team convention like “coordination reference model is always sent with Survey Point” and document that as a hard requirement?
-
Lightweight access:
Is there a recommended way (REST/GraphQL/.NET SDK) to fetch just this coordinate/geolocation info without downloading the entire model geometry payload? -
Best-practice pattern:
From Speckle’s perspective, what’s the recommended pattern for defining a “coordination reference model” whose coordinates everyone else should align to (branch/model naming, reference point choice, etc.)?
If you can point me to a current example commit / object schema for a Revit model with origins exposed, that would be perfect.
Thanks in advance — I want to align our QC tooling with Speckle’s intended geolocation/coordinate story rather than reinvent it.