Dimension By Faces

Hi quick question ,
Im battling with dimension.ByFaces again :cry:.
The dimension is created. Image 01, however gets deleted in order to run image 02


Image01

Image02

PS If i manually select by faces i have no issues however obviously trying to avoid this approach.

Is there anything obvious I’m missing , thanks in advance.

Cheers KS

Hi @Kai …not sure have you tried pull your line on viewplane…

Hi @sovitek , no luck but do get these additional errors, any thoughts?


Cheers KS

After pulling onto the plane , use something like this to convert into a line again: Line.ByBestFitThroughPoints(crv.PointAtParameter(0..1));

Thanks @jacob.small, no luck similar to first issue ie image 1 & 2.


Cheer’s KS

Are you sure the two surfaces are parallel? Remember Dynamo won’t let you do anything you can’t do in Revit.

Hi @jacob.small yes I believe the two surfaces are parallel ie if I use pick face’s directly and feed them into the reference surface it works.
Only thing I’ve done here was filtering them down from the element faces nodes until I got the two outside ones , maybe the way I obtain it could be an issue?
I’ll take a full screen shot when I’m back in front of the cpu.
Cheers KS

Hi @Kai yeah guess the ootb node need revit surfaces, for get reference…probably it works if you insert a revit surface with import instince and use that surface…have you tried with dimension from reference node or genius loci, as i almost always use for that

Hi @sovitek, @jacob.small , ill have a play today. I believe i can get it with reference planes but was hoping to use surfaces if possible, even if i grab the DB reference from the surface i still have no luck (refer image 02).
Attached image is how i filtered originally.

image 02

Cheers KS

Hi @sovitek :thinking: maybe that is way easier will just need to rename my ReferenceNames across other families.


CheersKS

1 Like

Greetings everyone. I am trying to dimension the width of a wall based on its exterior faces. I am using the node Dimension.ByFaces. As far as I know, I am doing it correctly; however, the following warning appears:

Warning: Dimension.ByFaces operation failed.
This node requires a ElementFaceReference extracted from a Revit Element! The input surfaces should come from a Revit Element. You can use the ImportInstance.ByGeometry to turn this Surface into a Revit Element, then extract a ElementFaceReference from it.

Can someone help me understand what I’m doing wrong?

Hello @ctrhg22 and welcome :wink: you are sure these surfaces are revit surfaces ?

2 Likes

It worked perfectly. Thank you.

From what I understand, there are two types of ā€œSurfaceā€: one from Dynamo and one from Revit. For this to work, you must connect Revit surfaces to the input, not Dynamo ones.

2 Likes

Yep - that is a good understanding.

Imagine drawing a surface on your sketchbook. That isn’t relevant to Revit so you can’t use it to dimension. Similarly a surface in Dynamo isn’t the same as a surface from a Revit element. Maintaining the reference is key for dimensioning.

3 Likes