When working in 3D in Revit, you *can* use the normal dimension tool *if* you first set the Workplane. However, this can get annoying. Why not make a 2 point adaptive family, with a reporting parameter, so that you can just place the family (two clicks) and then check the instance parameter as shown below?

Update: V2 with arrowhead and tag in project Download here

Adaptive dimension family (2016), Download here

 

 

Revit wants you to make your own better, faster way sometimes…

Using some Visibility parameters and a simple formula structure, you can use a Revit family to store a collection elements and then selectively show them by using a single lookup value. This allows you to drive many visibility states (programmatically) through the modification of a single instance parameter value.

In the case below, I created a Annotation family and multiple Yes/No visibility parameters, which I applied to Lines:

PARAMETERAPPLIED.png

Then, I make a VisibilityEnum integer parameter, and set the Yes/No parameter formulas to a given integer:

FAMILYENVIRONMENT.png

You can also use Greater Than and other operators to show items that are visible across multiple visibility states:

operators.png

In the project environment, you only need to set one instance parameter to change visibility states:

project%2Benv.png

Finally, with some inventive use of Excel and Dynamo, you can drive this visibility parameter programmatically, even mapping the visibility state to the owner view of the family instance in Revit:

getAndSet.png