/// Represents an angular dimension, measuring the angle between two lines defined by three points.
public class AngularDim : Element
{
// Constructors
public AngularDim() { }
public AngularDim(
Plane3D plane,
string line1Guid,
string line2Guid,
Vector3 quadrantPoint,
Vector3 dimLinePos,
float textHeight) { }
// Important Properties
public Plane3D Plane { get; set; } // The plane on which the dimension lies (vertex at Plane origin).
public string Line1Guid { get; set; } // Guid of the first Line element defining the angle.
public string Line2Guid { get; set; } // Guid of the second Line element defining the angle.
public Vector3 QuadrantPoint { get; set; } // Point in plane specifying the angle quadrant.
public Vector3 DimLinePos { get; set; } // Point on the dimension arc.
public float TextHeight { get; set; } // Height of the dimension text.
public string TextOverride { get; set; } // Optional user-defined text override.
public string TextPrefix { get; set; } // Optional text prefix before value.
public string TextSuffix { get; set; } // Optional text suffix after value.
public string StyleName { get; set; } // Optional text style name.
public float ArrowheadSize { get; set; } // Size (length) of arrowheads.
public ArrowheadType LeftArrowhead { get; set; } // Arrowhead type at start of arc.
public ArrowheadType RightArrowhead { get; set; } // Arrowhead type at end of arc.
public float ExtLineOffset { get; set; } // Offset of extension lines from vertex.
public float ExtLineExt { get; set; } // Extension beyond arc for extension lines.
public float TextGap { get; set; } // Gap between arc and text.
public bool ShowExtLine1 { get; set; } // Show first extension line.
public bool ShowExtLine2 { get; set; } // Show second extension line.
public AngleFormatType AngleFormat { get; set; } // Format for angle display.
public int Precision { get; set; } // Decimal places for value.
public bool SuppressLeadingZeros { get; set; } // Suppress leading zeros.
public bool SuppressTrailingZeros { get; set; } // Suppress trailing zeros.
public ToleranceDisplayMode ToleranceDisplay { get; set; } // Tolerance display mode.
public float ToleranceUpperValue { get; set; } // Upper tolerance value.
public float ToleranceLowerValue { get; set; } // Lower tolerance value.
public int TolerancePrecision { get; set; } // Decimal places for tolerance.
public bool ToleranceSuppressLeadingZeros { get; set; } // Suppress leading zeros in tolerance.
public bool ToleranceSuppressTrailingZeros { get; set; } // Suppress trailing zeros in tolerance.
public float ToleranceScaleHeight { get; set; } // Scale for tolerance text height.
public float DimScaleOverall { get; set; } // Overall scale for dimension features.
// Other Accessible Properties
public string LayerName { get; set; } // The name of the layer this element belongs to.
public string ColorARGB { get; set; } // Element color represented as an AARRGGBB hex string.
public PropertyMethod ColorMethod { get; set; } // Element color method.
public LineType? LineType { get; set; } // The line type for this element.
public float? LineTypeScale { get; set; } // The scale of the line type.
public PropertyMethod LineTypeMethod { get; set; } // Element line type method.
public float? LineWeight { get; set; } // The line weight for this element.
public PropertyMethod LineWeightMethod { get; set; } // Element lineWeight method.
public string MaterialName { get; set; } // The name of the material for this element.
public int? DisplayOrder { get; set; } // The element printing and displaying order.
public bool? IsVisible { get; set; } // The element visibility status.
}