FamilyItemFactoryNewArcLengthDimension(View, Arc, Reference, Reference, Reference) Method

Creates a new arc length dimension object using the default dimension type.

Namespace: Autodesk.Revit.Creation
Assembly: RevitAPI (in RevitAPI.dll) Version: 25.0.0.0 (25.0.0.0)
Syntax
public Dimension NewArcLengthDimension(
	View view,
	Arc arc,
	Reference arcRef,
	Reference firstRef,
	Reference secondRef
)

Parameters

view  View
The view in which the dimension is to be visible.
arc  Arc
The extension arc of the dimension.
arcRef  Reference
Geometric reference of the arc to which the dimension is to be bound. This reference must be parallel to the extension arc.
firstRef  Reference
The first geometric reference to which the dimension is to be bound. This reference must intersect the arcRef reference.
secondRef  Reference
The second geometric reference to which the dimension is to be bound. This reference must intersect the arcRef reference.

Return Value

Dimension
If creation was successful the new arc length dimension is returned, otherwise an exception with failure information will be thrown.
Exceptions
ExceptionCondition
ArgumentNullException Thrown when any input argument is .
ArgumentException Thrown when the argument arcRef/ref1/ref2 is invalid.
InvalidOperationException Thrown when the creation failed.
Remarks
The currently user set default style is used for the created dimension.
Example
public Dimension CreateArcDimension(Document document, SketchPlane sketchPlane)
{
    Autodesk.Revit.Creation.Application appCreate = document.Application.Create;
    Line gLine1 = Line.CreateBound(new XYZ(0, 2, 0), new XYZ(2, 2, 0));
    Line gLine2 = Line.CreateBound(new XYZ(0, 2, 0), new XYZ(2, 4, 0));
    Arc arctoDim = Arc.Create(new XYZ(1, 2, 0), new XYZ(-1, 2, 0), new XYZ(0, 3, 0));
    Arc arcofDim = Arc.Create(new XYZ(0, 3, 0), new XYZ(1, 2, 0), new XYZ(0.8, 2.8, 0));

    Autodesk.Revit.Creation.FamilyItemFactory creationFamily = document.FamilyCreate;
    ModelCurve modelCurve1 = creationFamily.NewModelCurve(gLine1, sketchPlane);
    ModelCurve modelCurve2 = creationFamily.NewModelCurve(gLine2, sketchPlane);
    ModelCurve modelCurve3 = creationFamily.NewModelCurve(arctoDim, sketchPlane);
    //get their reference
    Reference ref1 = modelCurve1.GeometryCurve.Reference;
    Reference ref2 = modelCurve2.GeometryCurve.Reference;
    Reference arcRef = modelCurve3.GeometryCurve.Reference;

    Dimension newArcDim = creationFamily.NewArcLengthDimension(document.ActiveView, arcofDim, arcRef, ref1, ref2);
    if (newArcDim == null)
    {
        throw new Exception("Failed to create new arc length dimension.");
    }

    return newArcDim;
}
See Also