Skip to content

FamilyItemFactory.NewArcLengthDimension(View, Arc, Reference, Reference, Reference)

Public Class

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

Exception

Condition


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;
}