Wrong coordinates for ceiling lines

Since of 2025 it’s possible to get gridlines of a ceiling by calling ceiling.GetCeilingGridLines().

The problem is that the coordinates I’m getting by doing curve.getEndPoint() returns coordinates very close to the project base point, even thou the ceiling is placed a bit away from this.

I’ve tried with a window and it gives the correct coordinates by doing the element.location directly in dynamo, but the ceiling isn’t a family like that so element.location doesn’t work, so I’m writing an zero-touch addin to get the curve coords.

I’ve read some guides about changing coordinatesystem etc, but since the familyinstance of a window gives me correct coords, why doesn’t the curve?


Just a guess, is the coordinate relative to the sketch of the ceiling?

Thought about it, but shouldn’t the values be bigger then? The ceiling “gridparts” are 600x600.

Is that 600 feet? 600 meters? 600 millimeters? Something else?

Units in Revit are written and recorded in decimal feet. Anything else is showing w converted value. As you haven’t converted from feet (or not that I have seen) we can expect that to be in decimal feet.

Mm. If I understand you correct, shouldn’t the window values also be that then? It’s the same project just another planview.

Depends on the context. Windows are in the project. ACT grids are in the sketch in the project. However without more of the code I can only guess.

What code do you want to see? The image shows how I collect the coords from the ceiling
And what does “ACT” stand for?

ACT = acoustic ceiling tile. What I historically see in grid ceilings.

The code is a self contained replicable sample that can be copy/pasted and executed directly, or better still a reference to a GitHub repo which can be forked and modified. Typing from an image is more effort than I have time for (though in fairness I’m on my phone while standing in a queue for my new ID card now so even if provided I can’t run it for a bit).

Oh, no need for that. But you got me hooked on that sketch context. I think I need to investigate that. Could have been som info in the docs regarding the GetEndPoint()-function if this is the case.

Otherwise I think transforming to other coordinatesystems will be my next step to try.

Thank you so far!!

1 Like

I looked into this. You said that units are in feet, and I read somewhere that’s the case. But then why is the BoundingBox of this element in correct unit(mm)? I haven’t converted anything

Units relating to direct geometry are converted and you get good stuff right away.

Units relating to nested geometry (as would be for the case here) are not. This is because stuff like hatch patterns (what these are really) are defined by UVs on the surface using the internal units not the project ones.

1 Like