Abstract
Creates a new dimension entity.
This constructor initializes a dimension with default values. Subclasses should override this constructor to set up dimension-specific properties.
Protected
arrowThe maximum number of arrow lines of this dimension
Protected
arrowGets the attributes object for this AcDbObject.
The AcCmObject instance containing all attributes
Gets the database in which this object is resident.
When an object isn't added to a database, this property returns the current working database. After it is added to a database, it will be set automatically. You should never set this value manually.
The database this object belongs to
Sets the database for this object.
This is typically set automatically when the object is added to a database. Manual setting should be avoided unless you know what you're doing.
The database to associate with this object
Gets the block table record ID containing the entities that this dimension displays.
The block table record ID, or null if not set
Sets the block table record ID for this dimension.
The block table record ID, or null to clear
Gets the dimension style used by this dimension.
This method returns the dimension style record associated with this dimension. If no style is specified, it returns the default dimension style.
The dimension style record
Gets the dimension style name used by this dimension.
The dimension style name, or null if not set
Sets the dimension style name for this dimension.
The dimension style name, or null to use default
Gets the user-supplied dimension annotation text string.
This string can contain multiline text formatting characters. The text can be:
The dimension text string
Protected
firstArrow style of the first arrow
Protected
firstThe first arrow type
Protected
firstThe BTR id associated with the first arrow type
Abstract
geometricProtected
isThe flag to determinate how to attach arrow to endpoint of the line.
Gets the name of the layer referenced by this entity.
The layer name
Sets the name of the layer for this entity.
The new layer name
Protected
lineGets the line style for this entity.
This method returns the line style based on the entity's linetype and other properties.
The line style object
Gets the name of the line type referenced by this entity.
The linetype name
Sets the name of the line type for this entity.
The new linetype name
Gets the line type scale factor of this entity.
When an entity is first instantiated, its line type scale is initialized to an invalid value. When the entity is added to the database, if a linetype scale has not been specified for the entity, it is set to the database's current line type scale value.
The linetype scale factor
Sets the line type scale factor for this entity.
The new linetype scale factor
Gets the line weight used by this entity.
The line weight value
Sets the line weight for this entity.
The new line weight value
The current measurement value for this dimension
Gets the object ID.
AutoCAD uses 64-bit integers to represent handles, which exceed the maximum integer value of JavaScript. Therefore, strings are used to represent object handles.
The object ID as a string
Sets the object ID.
The new object ID
Gets the object ID of the owner of this object.
The owner object ID
Sets the object ID of the owner of this object.
The new owner object ID
Gets the RGB color of this entity after converting color index.
This method handles the conversion of color indices (including ByLayer and ByBlock) to actual RGB colors. It resolves layer colors and block colors as needed.
The RGB color value as a number
Protected
secondArrow style of the second arrow
Protected
secondThe second arrow type
Protected
secondThe BTR id associated with the second arrow type
The line spacing factor (a value between 0.25 and 4.00).
The line spacing style for the dimension.
The dimension's text position point. This is the middle center point of the text (which is itself an MText object with middle-center justification).
The rotation angle (in radians) of the dimension's annotation text. This is the angle from the dimension's horizontal axis to the horizontal axis used by the text. The angle is in the dimension's OCS X-Y plane with positive angles going counterclockwise when looking down the OCS Z axis towards the OCS origin. The value obtained from: (2 * pi) + the dimension's text rotation angle--the dimension's horizontal rotation angle
Gets the transparency level of this entity.
The transparency value (0-1, where 0 is opaque and 1 is fully transparent)
Sets the transparency level of this entity.
The transparency value (0-1, where 0 is opaque and 1 is fully transparent)
Gets the type name of this entity.
This method returns the entity type by removing the "AcDb" prefix from the constructor name.
The entity type name
Gets whether this entity is visible.
True if the entity is visible, false otherwise
Sets whether this entity is visible.
True to make the entity visible, false to hide it
Protected
adjustAdjust start point and end point of extension line according current dimension style
Input extension line to adjust its start point and end point
Draws this entity using the specified renderer.
This method should be implemented by subclasses to provide entity-specific drawing behavior.
The renderer to use for drawing
The rendered entity, or undefined if drawing failed
Protected
drawProtected
drawProtected
findFind the point p3
on a line along the line direction at a distance length
from p2
.
The start point of the line.
The end point of the line.
The distance from p2
to p3
.
Return the point p3
.
Protected
findFind the point p2
on a line starting from p1
at a specified angle
and at a distance length
from p1
.
The start point of the line.
The angle of the line in radians relative to the x-axis.
The distance from p1
to p2
.
Return the point p2
.
Gets the value of the specified attribute.
This method will throw an exception if the specified attribute doesn't exist. Use getAttrWithoutException() if you want to handle missing attributes gracefully.
The name of the attribute to retrieve
The value of the specified attribute
Gets the value of the specified attribute without throwing an exception.
This method returns undefined if the specified attribute doesn't exist, making it safer for optional attributes.
The name of the attribute to retrieve
The value of the specified attribute, or undefined if it doesn't exist
Protected
getProtected
getGet line arrow style of the specified line according to its type (extension line or dimension line). Return undefined if no line arrow style applied.
Input line to get its line style
Return the line style of the specified line. Return undefined if no line arrow style applied.
Sets the value of an attribute.
The name of the attribute to set
Optional
val: AcDbObjectAttrs[A]The value to assign to the attribute
Gets the grip points for this entity.
Grip points are the control points that can be used to modify the entity. This method should be overridden by subclasses to provide entity-specific grip points.
Array of grip points as 3D points
Gets the object snap points for this entity.
Object snap points are the points that can be used for precise positioning when drawing or editing. This method should be overridden by subclasses to provide entity-specific snap points.
The object snap mode
The selection mark
The pick point
The last point
Array to populate with snap points
Transforms this entity by the specified matrix.
This method applies a geometric transformation to the entity. Subclasses should override this method to provide entity-specific transformation behavior.
The transformation matrix to apply
This entity after transformation
Abstract base class for all dimension entity types in AutoCAD.
This class provides the fundamental functionality for all dimension entities, including dimension text, style management, arrow handling, and measurement calculations. The appearance of dimensions is controlled by dimension variable settings and dimension styles.
Example