Revit Links Coordinates

Just wondering how to adjust the coordinates from linked models?
They seem to use project base point for site and building model, therefore they are off.
What can I do to realign?

1 Like

Would you mind clarifying the example shared here? Seems like you have the same geometry in Revit and Rhino windows

Thanks Ehsan. Sure.
On the left is a Revit site model with a building file linked in.
The building model is actually located on the toposurface, but when I reference that linked models mass, the preview is obviously lower. It seems as though it is reading the project base point location of both models.
Do i need to somehow specify the shared link coordinates?

@bradshales See the attached example. I’m using a python component to grab the total transformation of the linked instance and apply it to the extracted geometry in GH

Correct Link (627.4 KB)

It can be extended to grab rotation as well

Thanks so much.
It seems to work well with your example, but falls apart with mine.
I can’t seem to get it to function. Any ideas on why? (17.7 MB)

Okay updated the script to do unit system conversion between Rhino and Revit doc units. Added function below to the script:

def convert(val):
    return val * Rhino.RhinoMath.UnitScale(Rhino.UnitSystem.Feet, rdoc.ModelUnitSystem)

You would also need to r-click on the “Graphical Element” component and select the linked model instance. (17.7 MB)

Perfect except I need the link to be at its true north, not project north.

1 Like

You can always modify the definition and apply a rotation transformation as well based on your north angle

Will do.
Thanks for your help.

1 Like

Hi @eirannejad,
Can the active Rhino model be set to reference Revit’s True North (opposed to Project North)?

Or, can we get the Project Base Point information somehow to help apply a transformation?

Using ‘Project Location’ you can extract the Shared Coordinates System as a plane and using the Grasshopper ‘Orient’ component you can transform the geometry.

Seems similar to this other topic.

We have added this context menu option to set the current Rhino viewport CPlane at the same place and oriented like the selected Revit element Coordinate System.
In the screenshot the ‘Survey Point’. You can also do the same with the Shared Site witch is the origin of the Shared Coordinates System.

Also works with other elements like a Linked Model, Revit Levels or Revit Reference Planes.


How do I get the instance location of linked elements vs the internal location of the linked file?

I think this is the right thread, but It would seem really odd if the location is not relative to the context its in. Also if you have multiple copies of the same file… when we do often with repeating units etc. See video.

You are going to have to use the Orient Component to Transform the xy to the transformed links locations.

1 Like

A dummy question added to this thread. Is the Revit Internal Origin always 0,0,0 and is it always aligned with Rhino’s world 0,0,0?



Coordinates can be confusing, best to go to the Autodesk documentation for a concise and thorough explanation. About the Internal Origin | Revit 2020 | Autodesk Knowledge Network

Thanks Japhy.


Based on their website Revit’s Internal Origin never moves. So I assume that it is the same for Rhino’s world 0,0,0. Correct me if I am wrong, in Rhino, I can reassign CPlanes, but it doesn’t change the absolute position of how an object is related to the world 0,0,0 in the background.

When I bake some thing between those the coordinates of Revit and Rhino, by default, they are sharing the same model space and using Rhino World 0,0,0/Internal Origin as the coordination point.

The origin never moves but it can be assigned a different project base point/shared site or be linked and rotated.