Gets or sets the cell alignment value for this table.
This property controls how text is positioned within table cells by default. Individual cells can override this setting with their own attachment point.
The default attachment point for table cells
Gets the attributes object for this AcDbObject.
The AcCmObject instance containing all attributes
Gets the block table record referenced by this block reference.
The referenced block table record contains the entities that the block reference will display.
The block table record, or undefined if not found
Gets the block-local transformation matrix of this block reference.
This matrix represents the INSERT entity transform in Object Coordinate System (OCS), excluding the extrusion / normal transformation.
In AutoCAD, a block reference transform is conceptually applied in the following order:
This property returns the matrix for steps 1–4 only.
The OCS → WCS transformation derived from normal must NOT be included here, because:
Therefore, the extrusion transformation is applied after rendering (see AcDbRenderingCache.draw), matching AutoCAD / RealDWG behavior.
blockTransform =
T(position)
· R(rotation about OCS Z)
· S(scaleFactors)
· T(-blockBasePoint)
AcDbBlockReference in ObjectARXA transformation matrix representing the block-local INSERT transform in OCS, excluding extrusion.
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 geometric extents (bounding box) of this block reference.
This method calculates the bounding box by transforming the geometric extents of all entities in the referenced block according to the block reference's position, rotation, and scale factors.
The bounding box that encompasses the entire block reference
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
Gets 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
Gets the normal vector of the plane containing the block reference.
The normal vector
Sets the normal vector of the plane containing the block reference.
The new normal vector
Gets or sets the number of columns in the table.
Changing this value will resize the table and may affect existing cell data.
The current number of columns in the table
Gets or sets the number of rows in the table.
Changing this value will resize the table and may affect existing cell data.
The current number of rows in the table
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 WCS position point (insertion point) of the block reference.
The position point in WCS coordinates
Sets the WCS position point (insertion point) of the block reference.
The new position point
Returns the full property definition for this table entity, including general group, table group, and geometry group.
The geometry group exposes editable properties via AcDbPropertyAccessor so the property palette can update the table in real-time.
Each property is an AcDbEntityRuntimeProperty.
Gets the RGB color of this entity.
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
Gets the rotation value of the block reference.
The rotation value is relative to the X axis of a coordinate system that is parallel to the OCS of the block reference, but has its origin at the position point of the block reference. The rotation axis is the Z axis of this coordinate system with positive rotations going counterclockwise when looking down the Z axis towards the origin.
The rotation value in radians
Sets the rotation value of the block reference.
The new rotation value in radians
Gets the X, Y, and Z scale factors for the block reference.
The scale factors as a 3D point
Sets the X, Y, and Z scale factors for the block reference.
The new scale factors
Gets the transparency level of this entity.
The transparency value.
Sets the transparency level of this entity.
The transparency value.
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
Appends the specified AcDbAttribute object to the attribute list of the block reference, establishes the block reference as the attribute's owner, and adds the attribute to the AcDbDatabase that contains the block reference.
The attribute to be appended to the attribute list of the block reference.
Creates an iterator object that can be used to iterate over the attributes associated with the block reference.
An iterator object that can be used to iterate over the attributes
Gets the cell at the specified index.
Cell index (calculated as row * numColumns + column)
The specified cell by index, or undefined if index is out of range
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
ProtectedgetCreates the "General" property group for this entity.
This group contains common metadata attributes shared by all CAD entities (e.g., handle, layer). Each property includes a runtime AcDbPropertyAccessor allowing the property inspector to read and update live values.
Subclasses may override this method to append additional general-purpose properties while still preserving this base set.
A fully resolved property group containing runtime-accessible properties.
ProtectedgetChecks if the content of the specified cell is empty.
Integer specifying the zero-based row index for the cell
Integer specifying the zero-based column index for the cell
True if the content of the specified cell is empty, false otherwise
Gets the number of contents in the specified cell.
Row index. Must be greater than or equal to 0 and less than the number of rows
Column index. Must be greater than or equal to 0 and less than the number of columns
The number of contents in the specified cell
Sets the value of an attribute.
The name of the attribute to set
Optionalval: AcDbObjectAttrs[A]The value to assign to the attribute
Sets the cell at the specified index.
Cell index (calculated as row * numColumns + column)
The cell data to set
Sets the text for the first content at the specified content index.
Integer specifying the zero-based row index for the cell
Integer specifying the zero-based column index for the cell
Text string to set
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 mtext.
Object snap points are precise points that can be used for positioning when drawing or editing. This method provides snap points based on the specified snap mode.
The object snap mode
The point where the user picked
The last point
Array to populate with snap points
OptionalgsMark: stringThe object id of subentity. For now, it is used by INSERT entity only. In AutoCAD, it uses AcGiSubEntityTraits::setSelectionMarkerInput to set GS marker of the subentity involved in the object snap operation. For now, we don't provide such a GS marker mechanism yet. So passed id of subentity as GS marker. Maybe this behavior will change in the future.
Renders the table entity using the specified graphics renderer.
This method draws the table structure including borders, cell content, and text. It handles the rendering of individual cells, merged cells, and applies the appropriate transformations and styling.
The graphics renderer used to draw the table
The rendered graphics entity representing the table
Gets the text string in the specified cell.
Integer specifying the zero-based row index for the cell
Integer specifying the zero-based column index for the cell
Optionalcontent: numberContent index. Should be greater than or equal to 0 and less than the number of contents
The text string in the specified cell
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
Called by cad application when it wants the entity to draw itself in WCS (World Coordinate System) and acts as a wrapper / dispatcher around subWorldDraw(). The children class should never overidde this method.
It executes the following logic:
The renderer to use for drawing
Optionaldelay: booleanThe flag to delay creating one rendered entity and just create one dummy entity. Renderer can delay heavy calculation operation to avoid blocking UI when this flag is true. For now, text and mtext entity supports this flag only. Other types of entities just ignore this flag.
The rendered entity, or undefined if drawing failed
Represents a table entity in AutoCAD.
A table is generally thought of as an n x m rectangular array of cells whose contents consist of annotation objects, primarily text. Tables often contain a title row, a header row, and multiple data rows.
After creating a new table object using the constructor, applications usually need to set the table style, number of rows and columns, column width, row height, insert position, width direction, and normal vector. Applications can also enter text or block contents into each cell using methods of this class.
Tables are commonly used for bills of materials, schedules, data sheets, and other tabular information in technical drawings and documentation.