Drawings SDK Developer Guide > Working with .dwg Files > Working with Entities > Working with Specific Entitites > Working with Dimensions > Overview of Dimensions > Overview of Radial Dimensions
Overview of Radial Dimensions

Radial dimensions measure and represent the radius of a circle, circular arc, or polyline arc segment as a dimension entity in primary and alternate units. To define the placement, the radial dimension entity requires the center point of the circle or arc to be measured, a chord point on the circle or arc to which the dimension line is drawn, a text point that defines the placement of the dimension text box, and the normal that orients a dimension in WCS. The circle or arc to be measured is the definition circle or definition arc.

The radial dimension entity can be rotated, scaled, and oriented in WCS. Additionally, the center of a radial dimension entity can be marked.

Elements of the radial dimension

A radial dimension entity consists of the following elements (no extension lines):

  • One dimension line — A straight line that always passes through the center point and chord point. The dimension line can be placed inside or outside of the circle or arc — when inside, it is drawn from the center to the chord point, and when outside it is drawn from the outside to the chord point. The end of the dimension line can have an arrowhead, and the beginning of the dimension line can have a leader line. The leader line connects the dimension line with the dimension text box (when it is not aligned). The dimension line has color, lineweight, linetype, and visibility independent of the entity's properties. The arrowhead can be one of the fixed arrowhead types or defined by a block, and its size can be changed.
  • Dimension text box — A linear structure that contains the required primary text box, optional alternate measured value, optional primary and alternate tolerance value, optional primary and alternate prefix, and optional primary and alternate suffix. The dimension text box can be centered on or placed above the dimension line, aligned horizontally or along the dimension line, offset from the dimension line or leader line, rotated, or scaled.
  • Optional leader line — When the dimension text box is not placed along the dimension line, the leader line is drawn from the beginning of the dimension line to the dimension text box margin. If the dimension text box is placed along the dimension line, the leader line is not drawn.

The common structure of the radial dimension entity is defined by the text movement and the text position relative to the definition circle or arc (inside or outside).

Text movement

Dimension text can be moved, but the result of movement can vary depending on the Dimtmove value. Dimtmove can be set to one of the following values:

  • 0 — Dimension lines and the dimension text box move together. If set to 0, the center of the dimension text box defines the text point.
  • 1 — Dimension lines and the dimension text box move independently and are connected with a leader. If set to 1, the beginning of the dimension line defines the text point.

    In both cases of 0 and 1 values, the dimension text box is placed next to the dimension line. If the dimension text box moves, the dimension line rotates around the center point towards the text point, and vice versa, if the dimension line rotates along the circle or arc, the dimension text box also moves with it. When the dimension text box moves from inside to outside (or outside to inside) of the circle or arc, the dimension line is redrawn automatically from the text point to the chord point.

When the dimension text box is placed inside of the definition circle or arc, the dimension line is drawn from the center to the chord point.
When the dimension text box is placed outside of the definition circle or arc, the dimension line is drawn from the text point to the chord point towards the center point.

The chord point and center point can be connected by a forced line. If the forced line is absent, the center can be marked. If the dimension line is placed inside the circle or arc, the forced line and center mark are not drawn.

  • 2 — The dimension lines and the dimension text box move independently without a leader. Wet to 2, the center of the dimension text box defines the text point and the dimension line is always drawn from the center up to the chord point, regardless of the dimension text box position.

    If the dimension text box is placed inside of the circle or arc, it breaks the dimension line and the dimension text box is offset by a gap on both sides. If the dimension text box is placed outside of the circle or arc, the dimension line is not broken and is drawn inside, and the forced line and center mark are not drawn.

For working with radial dimension objects, use the OdDbRadialDimension class, which represents a radial dimension entity, and manipulate its properties. The OdDbRadialDimensionPtr class is the typified smart pointer to an instance of this entity, and it is used for storing and passing a reference to the radial dimension object.

To create and initialize a new instance of a radial dimension entity, see Overview of Specific Entities.

The main methods of the OdDbRadialDimension class are listed below:

  • chordPoint() — Returns the chord point as an object of the OdGePoint3d class.
  • setChordPoint() — Sets a new chord point; requires an object of the OdGePoint3d class as a new point.
  • center() — Returns the center of the arc being dimensioned as an object of the OdGePoint3d class.
  • setCenter() — Sets a new center of the arc being dimensioned; requires an object of the OdGePoint3d class as a new point.
  • leaderLength() — Returns the length from the chordPoint to the dogleg as a double value.
  • setLeaderLength() — Sets a new length from the chordPoint to the dogleg; requires one double value.

The next example demonstrates how to work with a radial dimension entity.


//Create a circle to be dimensioned 
OdDbCirclePtr pCircle = OdDbCircle::createObject();
pCircle->setDatabaseDefaults(bBTR->database());
bBTR->appendOdDbEntity(pCircle);
pCircle->setCenter(OdGePoint3d(3.0, -3.0, 0));
pCircle->setRadius(1.0);

// Create a Radial Dimension
OdDbRadialDimensionPtr pDimension = OdDbRadialDimension::createObject();
// Set dimension defaults
pDimension->setDatabaseDefaults(bBTR->database());
bBTR->appendOdDbEntity(pDimension);
// Set dimension parameters
pDimension->setCenter(pCircle->center());
OdGeVector3d chordVector(pCircle->radius(), 0.0, 0.0);
chordVector.rotateBy(OdaToRadian(30.0), OdGeVector3d::kZAxis);
pDimension->setChordPoint(pDimension->center() + chordVector);
pDimension->setLeaderLength(0.2);
pDimension->useDefaultTextPosition();

See Also

Working with Dimensions

Overview of Dimensions

Overview of Linear Dimensions

Overview of Angular Dimensions

Overview of Arc-Length Dimensions

Overview of Diametric Dimensions

Overview of Ordinate Dimensions

Overview of Radial Large Dimensions

Copyright © 2002 – 2020. Open Design Alliance. All rights reserved.