///////////////////////////////////////////////////////////////////////////////
// Copyright (C) 2002-2025, Open Design Alliance (the "Alliance").
// All rights reserved.
//
// This software and its documentation and related materials are owned by
// the Alliance. The software may only be incorporated into application
// programs owned by members of the Alliance, subject to a signed
// Membership Agreement and Supplemental Software License Agreement with the
// Alliance. The structure and organization of this software are the valuable
// trade secrets of the Alliance and its suppliers. The software is also
// protected by copyright law and international treaty provisions. Application
// programs incorporating this software must include the following statement
// with their copyright notices:
//
// This application incorporates Open Design Alliance software pursuant to a license
// agreement with Open Design Alliance.
// Open Design Alliance Copyright (C) 2002-2025 by Open Design Alliance.
// All rights reserved.
//
// By use of this software, its documentation or related materials, you
// acknowledge and accept the above terms.
///////////////////////////////////////////////////////////////////////////////
#ifndef BLKVAR_DEF
#define BLKVAR_DEF VAR_DEF
#endif
#ifndef ANNOVAR_DEF
#define ANNOVAR_DEF VAR_DEF
#endif
#ifndef ODTDB_LINEWEIGHT
#define ODTDB_LINEWEIGHT OdDb::LineWeight /*!DOM*/
#define DOUNDEF_ODTDB_LINEWEIGHT
#endif
#ifndef ODTDIST
#define ODTDIST double /*!DOM*/
#define DOUNDEF_ODTDIST
#endif
#ifndef ODTORIENT
#define ODTORIENT double /*!DOM*/
#define DOUNDEF_ODTORIENT
#endif
#ifndef ODTUNITLESS
#define ODTUNITLESS double /*!DOM*/
#define DOUNDEF_ODTUNITLESS
#endif
#ifndef ODTDECSEP
#define ODTDECSEP OdInt16 /*!DOM*/
#define DOUNDEF_ODTDECSEP
#endif
#ifndef ODTARROWBLK
#define ODTARROWBLK OdDbHardPointerId /*!DOM*/
#define DOUNDEF_ODTARROWBLK
#endif
#ifndef ODTTEXTSTYLEID
#define ODTTEXTSTYLEID OdDbHardPointerId /*!DOM*/
#define DOUNDEF_ODTTEXTSTYLEID
#endif
#ifndef ODTLINETYPEID
#define ODTLINETYPEID OdDbHardPointerId /*!DOM*/
#define DOUNDEF_ODTLINETYPEID
#endif
#ifndef NullIdAllowed
#define NullIdAllowed true
#define DOUNDEF_NullIdAllowed
#endif
/** **********************************************
*
* Dimension variables definitions
*/
// Type Name DXF Default value Metric Def Value Reserve1 Reserve2erve2
/**
Type OdInt16
Initial value 0
Range 0 ... 8
Read-Only No
Saved In Database
Versions R14+
DIMADEC specifies the number of decimal places in angular dimensions.
Type OdUInt8
Initial value 0
Range 0 ... 15
Read-Only No
Saved In Database
Versions R13+
DIMALTTZ controls zero suppression in tolerance values in alternate measurements in dimensions.
ValueDescription
0 Suppress zero feet and exactly zero inches.
1 Include zero feet and exactly zero inches.
2 Include zero feet and suppress exactly zero inches.
3 Suppress zero feet and include exactly zero inches.
4 Suppress leading decimal zeros.
8 Suppress trailing decimal zeros.
12 Suppress leading and trailing decimal zeros.
Values 0-3 affect only feet-and-inch dimensions, and may be combined with values 4-12.
Type OdUInt8
Initial value 0
Range 0 ... 15
Read-Only No
Saved In Database
Versions R13+
DIMALTZ controls zero suppression in alternate measurements in dimensions.
ValueDescription
0 Suppress zero feet and exactly zero inches.
1 Include zero feet and exactly zero inches.
2 Include zero feet and suppress exactly zero inches.
3 Suppress zero feet and include exactly zero inches.
4 Suppress leading decimal zeros.
8 Suppress trailing decimal zeros.
12 Suppress leading and trailing decimal zeros.
Values 0-3 affect only feet-and-inch dimensions, and may be combined with values 4-12.
Type OdString
Initial value ""
Read-Only No
Saved In Database
Versions R12+
DIMAPOST specifies a prefix and/or suffix for the alternate
measurements text in dimensions. DIMAPOST is in the form
prefix\<\>suffix. The '\<\>' in DIMAPOST is replaced by the
alternate measurements text.
Type OdInt16
Initial value 3
Range 0 ... 3
Read-Only No
Saved In Database
Versions 2000+
DIMATFIT specifies how arrows and text are placed when they do not fit within the extension lines of dimensions.
ValueDescription
0 Moves text and arrows outside extension lines.
1 Moves arrows, then text, outside extension lines. When DIMTMOVE == 1, a leader is added to moved text
2 Moves text, then arrows, outside extension lines.
3 Moves text or arrows for best fit.
Type OdInt16
Initial value 0
Range 0 ... 3
Read-Only No
Saved In Database
Versions 2000+
DIMAZIN controls zero suppression in angular dimensions.
ValueDescription
0 Display leading and trailing decimal zeros.
1 Suppress leading decimal zeros.
2 Suppress trailing decimal zeros.
3 Suppress leading and trailing decimal zeros.
Type OdDbObjectId
Initial value OdDbObjectId::kNull
Read-Only No
Saved In Database
Versions R12+
DIMBLK1 specifies the first arrowhead block at the ends of dimension lines when DIMSAH == true.
A null value specifies the default arrowhead is to be used.
Type OdDbObjectId
Initial value OdDbObjectId::kNull
Read-Only No
Saved In Database
Versions R12+
DIMBLK2 specifies the second arrowhead block at the ends of dimension lines when DIMSAH == true.
A null value specifies the default arrowhead is to be used.
Type double
Initial value 0.09 | 2.5
Read-Only No
Saved In Database
Versions R12+
DIMCEN controls the generation of arc and circle center marks
and lines. The absolute value of DIMCEN specifies the size of
the center mark, which half the length of the center mark,
which is also the length of the portion of a center line
beyond the arc or circle, as well as the length of the gap
between the center mark and line. The sign of DIMCEN controls
the generation of center marks and center lines:
ValueDescription
<0 Center marks and center lines
0 No center marks or center lines
>0 Center lines
Type double
Initial value 0.0625 | 0.625
Range >=0
Read-Only No
Saved In Database
Versions R12+
DIMEXO specifies the distance extensions are offset from
their origin points. DIMEXO specifies a minimum value when
fixed-length extension lines are used.
Type double
Initial value 0.09 | 0.625
Read-Only No
Saved In Database
Versions R12+
DIMGAP specifies the gap between dimension text and dimension
lines.
* A negative value for DIMGAP draws a reference box round
the dimension text.
* Text is placed inside a dimension line only if there will
be two line segments each as long as abs(DIMGAP).
Type OdUInt16
Initial value 0
Range 0 ... 4
Read-Only No
Saved In Database
Versions R13+
DIMJUST specifies the dimension text horizontal position.
ValueDescription
0 Centered above the dimension line.
1 By the first extension line.
2 By the second extension line.
3 Above the dimension line, parallel to the first extension line.
4 Above the dimension line, parallel to the second extension line.
Type OdDbObjectId
Initial value OdDbObjectId::kNull
Read-Only No
Saved In Database
Versions 2000+
DIMLDRBLK specifies the arrowhead block at the ends of leader
lines. A null value specifies the default arrowhead is to be
used. Some predefined arrowhead types:
Type OdDb::LineWeight
Initial value OdDb::kLnWtByBlock
Read-Only No
Saved In Database
Versions 2000+
DIMLWD specifies the lineweight for dimension lines. Some
specific values:
ValueDescription
OdDb::kLnWtByLayer Lightweight is set to "ByLayer"
OdDb::kLnWtByBlock Lightweight is set to "ByBlock"
OdDb::kLnWtByLwDefault Lightweight is set to "Default", which is controlled by LWDEFAULT system variable
Type OdDb::LineWeight
Initial value OdDb::kLnWtByBlock
Read-Only No
Saved In Database
Versions 2000+
DIMLWE specifies the lineweight for extension lines. Some
specific values:
ValueDescription
OdDb::kLnWtByLayer Lightweight is set to "ByLayer"
OdDb::kLnWtByBlock Lightweight is set to "ByBlock"
OdDb::kLnWtByLwDefault Lightweight is set to "Default", which is controlled by LWDEFAULT system variable
Type OdString
Initial value ""
Read-Only No
Saved In Database
Versions R12+
DIMPOST specifies a prefix and/or suffix for the measurement
text in dimensions. DIMPOST is in the form prefix\<\>suffix.
The '\<\>' in DIMPOST is replaced by the alternate
measurements text.
Type double
Initial value 1.0
Read-Only No
Saved In Database
Versions R12+
DIMSCALE is an scale factor applied to all dimension
variables that regulate sizes, offsets, and distances.
DIMSCALE serves as an overall "volume control" for dimensions
and leaders.
ValueDescription
0.0 A "reasonable" value is computed for model space viewports.
>0.0 If set to the inverse of the plot scale, plotted dimensions will be at the sizes specified by the other dimension variables.
Type OdInt16
Initial value 0 | 1
Range 0 ... 4
Read-Only No
Saved In Database
Versions R12+
DIMTAD specifies the dimension text vertical position.
ValueDescription
0 Centered about the dimension line.
1 Above the dimension line, unless DIMTIH==1 and the dimension line is not horizontal.
2 Side of the dimension line farthest from the defining points.
3 JIS standard.
4 Text below the dimension line.
Type OdInt16
Initial value 0
Range 0 ... 2
Read-Only No
Saved In Database
Versions 2000+
DIMTMOVE controls the updating of associative dimension
objects while dragging.
ValueDescription
0 Moving dimension text moves the dimension line.
1 Moving dimension text adds a leader.
2 Moving dimension text does not add a leader.
Note: DIMTMOVE is obsolete, but is included for compatibility purposes.
*/
//OdInt16 DIMTMOVE;
ANNOVAR_DEF(OdInt16, tmove, 279, (0), (0), (), ValidateRange(0,2))
/**
Type bool
Initial value false | true
Read-Only No
Saved In Database
Versions R12+
DIMTOFL controls the drawing of dimension lines between extension lines when text is outside the dimension lines.
Type double
Initial value 0.0
Read-Only No
Saved In Database
Versions R12+
DIMTSZ specifies the size of architectural tics are to be
drawn instead of arrowheads for linear, radial, and diameter
dimensions. DIMTSZ is the distance, parallel to the dimension
line, that the tics extends beyond the extension lines.
Type OdUInt8
Initial value 0 | 8
Range 0 ... 15
Read-Only No
Saved In Database
Versions R13+
DIMTZIN controls zero suppression in tolerance values in linear dimensions.
ValueDescription
0 Suppress zero feet and exactly zero inches.
1 Include zero feet and exactly zero inches.
2 Include zero feet and suppress exactly zero inches.
3 Suppress zero feet and include exactly zero inches.
4 Suppress leading decimal zeros.
8 Suppress trailing decimal zeros.
12 Suppress leading and trailing decimal zeros.
Values 0-3 affect only feet-and-inch dimensions, and may be combined with values 4-12.