Callouts
From WikiSTEP
This page belongs to the Recommended Practices for the Presentation of GD&T.
Contents |
Leader directed callout
A leader_directed_callout is a draughting_callout which includes one or more leader lines to direct the eye of the reader from the other presented requirements and information to a place or places of interest on the drawing. A leader_curve may be annotated with a terminator symbol, such as an arrow, to indicate the point of interest. Example of leader_directed_callout together with 3D object to which edge it refers to is provided in Figure 1.
A leader_directed_callout shall have at least one leader_curve and some annotation other than the required leader_curve.
Usually it is terminator symbol and some text. Information depicted via annotation elements is typically grouped in callouts.
In the scope of this effort two types of callouts are used: draughting_callout and leader_directed_callout.
A draughting_callout is a collection of annotation element.
A leader_directed_callout is a subtype of a draughting_callout that includes a leader line to direct the eye of the reader to a place of interest.
In the context of associative text a leader_directed_callout shall be instantiated when a leader line, that visually depicts the association of text with some elements of the geometric model, is present.
There are scenarios in which it is not desired to exchange such leader curves.
In these cases a draughting_callout shall be instantiated.
Figure 2 provides typical example of leader_directed_callout, which consists of the following elements:
- Curve connecting the leader text to the edge it is applied to. Leader_curve (#205) refers to its style (#300) and a polyline (#250).
- terminator - filled triangle symbol at the end of leader curve. Leader_terminator/ terminator_symbol (#400) refers to its style (#410), to Leader_curve (#205) it is used by and to defined_symbol (#500). The latter one points to symbol_target (#514), defining transformation/scaling and to symbol definition. In this case it is modelled as pre_defined_terminator_symbol (#510), with the name 'filled arrow'.
- 'Look at this edge!' - textual description, which is applied to topological object (edge) leader curve is pointing to. Annotation_text_occurrence (#173) refers to its style (#172), definining font, color and other parameters and to text_literal_with_extent (#165) containing text information (in this case 'Look at this edge!') and some allignment information (baseline right, orientation and extent).
#173=(ANNOTATION_OCCURRENCE()ANNOTATION_TEXT_OCCURRENCE()DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM(' ')STYLED_ITEM((#172),#165));
#200=LEADER_DIRECTED_CALLOUT('callout',(#205,#173,#400));
#205=(ANNOTATION_CURVE_OCCURRENCE()ANNOTATION_OCCURRENCE()DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()LEADER_CURVE()REPRESENTATION_ITEM(' ')STYLED_ITEM((#300),#250));
#400=(ANNOTATION_OCCURRENCE()ANNOTATION_SYMBOL_OCCURRENCE()DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()LEADER_TERMINATOR()REPRESENTATION_ITEM(' ')STYLED_ITEM((#410),#500)TERMINATOR_SYMBOL(#205));
Complete Part21 example can be found here callouts.stp.
Dimension callouts
A combination of annotation curves, symbols and text are used to present dimensions. The grouping of such elements is achieved via the usage of the entity draughting_callout.
Typically the dimension information is separated in a callout capturing the description of the measure information via text and symbols and a callout capturing the dimension, projection, and leader curves.
For draughting callout which collects the dimension, projection or leader curves a specific subtype corresponding to the type of the presented dimension is used.
The table below shows the available dimension types:
| dimension callout type | description | subtype of |
|---|---|---|
| angular_dimension | presents a value of an angular distance measure (e.g. to specify a circle segment) | dimension_curve_directed_callout |
| curve_dimension | presents a value of distance between two elements measured along a curved path or the length of curved element | dimension_curve_directed_callout |
| diameter_dimension | presents a value of the diametrical size of a circular element | dimension_curve_directed_callout |
| leader_directed_dimension | presents some dimension, e.g. hole characteristics, directed by a leader curve | leader_directed_callout |
| linear_dimension | presents a value of distance between two elements, measure along a linear path or the length of a linear element | dimension_curve_directed_callout |
| ordinate_dimension | presents a dimension value directed by a projection curve | projection_directed_callout |
| radius_dimension | presents a value of radial size of a circular element | dimension_curve_directed_callout |
Dimension_curve_directed_callout, leader_directed_callout, projection_directed_callout are subtypes of draughting_callout without additional attributes.
These subtypes have associated constraints that ensure that e.g. a leader_directed_callout actually contains a leader_curve.
Curve dimension
The discussion of the callout for the dimension now exemplarily focuses on a curve_dimension. The approach is similar for the other dimension callout types listed in the table above.
#4000=(CURVE_DIMENSION()DIMENSION_CURVE_DIRECTED_CALLOUT()DRAUGHTING_CALLOUT((#4100, #4200, #4300, #4310, #4320, #4400))
DRAUGHTING_ELEMENTS()GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM('callout'));
/* Left projection line */
#4100=(ANNOTATION_CURVE_OCCURRENCE()ANNOTATION_OCCURRENCE()DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()PROJECTION_CURVE()REPRESENTATION_ITEM('left')STYLED_ITEM((#300),#4101));
/* --- DIMENSION CURVE --- */
#4300=(ANNOTATION_CURVE_OCCURRENCE()ANNOTATION_OCCURRENCE()DIMENSION_CURVE()DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM('left')STYLED_ITEM((#300),#4301));
/* Left terminator */
#4310=(ANNOTATION_OCCURRENCE()ANNOTATION_SYMBOL_OCCURRENCE()DIMENSION_CURVE_TERMINATOR(.ORIGIN.)DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM('start')STYLED_ITEM((#410),#4311)TERMINATOR_SYMBOL(#4300));
/* Right terminator */
#4320=(ANNOTATION_OCCURRENCE()ANNOTATION_SYMBOL_OCCURRENCE()DIMENSION_CURVE_TERMINATOR(.TARGET.)DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM('end')STYLED_ITEM((#410),#4321)TERMINATOR_SYMBOL(#4300));
/* -------- TEXT ---------------*/
#4400=(ANNOTATION_OCCURRENCE()ANNOTATION_TEXT_OCCURRENCE()DRAUGHTING_ANNOTATION_OCCURRENCE()GEOMETRIC_REPRESENTATION_ITEM()
REPRESENTATION_ITEM(' ')STYLED_ITEM((#172),#4401));
#4401=TEXT_LITERAL_WITH_BLANKING_BOX('text with dimension value','76.64',#4404,'baseline right',.RIGHT.,#4402,#4403);
Complete Part21 example can be found here callouts.stp.
A curve_dimension is a subtype of draughting_callout that presents the value of a dimension via a dimension curve. The contents of a curve_dimension are projection_curve, dimension_curve, annotation_text_occurrence and some supplemental items. An instance diagram depicting the entities that may be related to a curve_dimension is shown in Figure 3.
The projection_curve and dimension_curve entities represent curves with a style assignment.
A projection_curve is a subtype of annotation_curve_occurrence that models a projection line resulting from projecting a point, curve or surface from an image of the product shape to a point outside that image. Figure 4 is an instance diagram that depicts the entities that are related to a projection_curve.
#300=PRESENTATION_STYLE_ASSIGNMENT((#301));
#301=CURVE_STYLE(' ',#302,#304,#303);
#4100=(ANNOTATION_CURVE_OCCURRENCE()ANNOTATION_OCCURRENCE()DRAUGHTING_ANNOTATION_OCCURRENCE()GEOMETRIC_REPRESENTATION_ITEM()
PROJECTION_CURVE()REPRESENTATION_ITEM('left')STYLED_ITEM((#300),#4101));
#4101=TRIMMED_CURVE(' ',#4102,(PARAMETER_VALUE(0.0),#4106),(PARAMETER_VALUE(10.0),#4103),.T.,.PARAMETER.);
Complete Part21 example can be found here callouts.stp.
A dimension_curve is a subtype of annotation_curve_occurrence that, along with related terminator symbols, presents the direction and extent of a dimension measure. To mark the start- and end-point of a dimension extent, dimension_curve_terminator symbols are used. A dimension_curve_terminator is a subtype of terminator_symbol. dimension_curve_terminator.role specifies either origin or target, depending on whether the symbol corresponds to the beginning or end of a dimension.
The item styled by a dimension_curve_terminator is a defined_symbol, which is defined by a pre_defined_terminator_symbol.name taken from the list {'blanked arrow', 'blanked box', 'blanked dot', 'dimension origin', 'filled arrow', 'filled box' ,'filled dot' ,'integral symbol', 'open arrow', 'slash', 'unfilled arrow', 'filled triangle'}. Recent entry was added in order to support Datum symbol.
Figure 5 is an instance diagram that depicts the entities that are related to a dimension_curve.
#300=PRESENTATION_STYLE_ASSIGNMENT((#301));
#301=CURVE_STYLE(' ',#302,#304,#303);
#4300=(ANNOTATION_CURVE_OCCURRENCE()ANNOTATION_OCCURRENCE()DIMENSION_CURVE()DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM('left')STYLED_ITEM((#300),#4301));
#4301=TRIMMED_CURVE(' ',#4304,(PARAMETER_VALUE(0.0),#4302),(PARAMETER_VALUE(2.0),#4303),.T.,.PARAMETER.);
#4310=(ANNOTATION_OCCURRENCE()ANNOTATION_SYMBOL_OCCURRENCE()DIMENSION_CURVE_TERMINATOR(.ORIGIN.)DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM('start')STYLED_ITEM((#410),#4311)TERMINATOR_SYMBOL(#4300));
#4311=DEFINED_SYMBOL(' ',#4312,#4316);
#4312=PRE_DEFINED_TERMINATOR_SYMBOL('filled arrow');
#4320=(ANNOTATION_OCCURRENCE()ANNOTATION_SYMBOL_OCCURRENCE()DIMENSION_CURVE_TERMINATOR(.TARGET.)DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM('end')STYLED_ITEM((#410),#4321)TERMINATOR_SYMBOL(#4300));
#4321=DEFINED_SYMBOL(' ',#4312,#4326);
Complete Part21 example can be found here callouts.stp.
The two callouts, one explicitly presenting the measurements, the other directing the information to the shape, may be linked via the entity dimension_callout_relationship.
A dimension_callout_relationship is a subtype of draughting_callout_relationship. The dimension_callout_relationship.name of the relationship can either be 'primary' or 'secondary'. 'Primary' is used if the dimension_callout_relationship.related_draughting_callout presents the measurement in the primary unit of measure.
Entities and Attributes
| Name | Explanation |
|---|---|
| draughting_callout | Presents product requirements or information used to interpret a drawing. |
| name | Contents depend on the subtype being instantiated. |
| contents | Any combination of annotation curves, symbols and text. |
| curve_dimension | Presents a value of distance between two elements or the length of a curve element. |
| dimension_curve | An annotation_curve_occurrence that – along with related terminator symbols – presents the extent and direction of a measurement. |
| name | Due to no requirement defined, it is recommended to instantiate with an empty string. |
| styles | The style applied to the curve. |
| item | The underlying curve. |
| projection_curve | An annotation_curve_occurrence that results from projection. |
| dimension_curve_terminator | A symbol representing the beginning or end of a dimension_curve. |
| name | Due to no requirement defined, it is recommended to instantiate with an empty string. |
| styles | The styling of the symbol. This style only includes color characteristics. |
| item | The symbol used. |
| annotation_curve | The related dimension_curve. |
| role | Either .ORIGIN. (start terminator) or .TARGET. (end terminator). |
| defined_symbol | An implicitly defined symbol. |
| name | Due to no requirement defined, it is recommended to instantiate with an empty string. |
| definition | The implicit description of the symbol, either a pre-defined or externally defined symbol. |
| target | Scaling, placement and orientation of the symbol. |
#4000=(CURVE_DIMENSION()DIMENSION_CURVE_DIRECTED_CALLOUT()DRAUGHTING_CALLOUT((#4100, #4200, #4300, #4310, #4320, #4400))
DRAUGHTING_ELEMENTS()GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM('callout'));
#4100=(ANNOTATION_CURVE_OCCURRENCE()ANNOTATION_OCCURRENCE()DRAUGHTING_ANNOTATION_OCCURRENCE()GEOMETRIC_REPRESENTATION_ITEM()
PROJECTION_CURVE()REPRESENTATION_ITEM('left')STYLED_ITEM((#300),#4101));
#4200=(ANNOTATION_CURVE_OCCURRENCE()ANNOTATION_OCCURRENCE()DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()PROJECTION_CURVE()REPRESENTATION_ITEM('right')STYLED_ITEM((#300),#4201));
#4300=(ANNOTATION_CURVE_OCCURRENCE()ANNOTATION_OCCURRENCE()DIMENSION_CURVE()DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM('left')STYLED_ITEM((#300),#4301));
#4310=(ANNOTATION_OCCURRENCE()ANNOTATION_SYMBOL_OCCURRENCE()DIMENSION_CURVE_TERMINATOR(.ORIGIN.)DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM('start')STYLED_ITEM((#410),#4311)TERMINATOR_SYMBOL(#4300));
#4320=(ANNOTATION_OCCURRENCE()ANNOTATION_SYMBOL_OCCURRENCE()DIMENSION_CURVE_TERMINATOR(.TARGET.)DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM('end')STYLED_ITEM((#410),#4321)TERMINATOR_SYMBOL(#4300));
#4400=(ANNOTATION_OCCURRENCE()ANNOTATION_TEXT_OCCURRENCE()DRAUGHTING_ANNOTATION_OCCURRENCE()GEOMETRIC_REPRESENTATION_ITEM()
REPRESENTATION_ITEM(' ')STYLED_ITEM((#172),#4401));
#4401=TEXT_LITERAL_WITH_BLANKING_BOX('text with dimension value','76.64',#4404,'baseline right',.RIGHT.,#4402,#4403);
Complete Part21 example can be found here callouts.stp.
Geometrical Callouts
There are 3 types of callouts used present details of geometrical tolerances: datum_feature_callout, datum_target_callout, geometrical_tolerance_callout. The table below provides descriptions and illustrations for those types:
| geometrical callout type | description | illustration |
|---|---|---|
| datum_feature_callout | A datum_feature_callout is a draughting_callout that presents a datum. It shall contain an alphanumeric designation to be used as identification of the datum. | Figure 7 |
| datum_target_callout | A datum_target_callout is a draughting_callout that presents a datum target. It shall contain an alphanumeric designation and, where applicable, a specification of the diametrical size of the target area. | Figure 8 |
| geometrical_tolerance_callout | A geometrical_tolerance_callout is a draughting_callout that presents a geometrical tolerance. | Figure 9 |
The following notation is used for the figures above:
- Elements of callouts are displayed in bold and are inside bounding box, used by corresponding arrow and callout name.
- Thick dashed curves depicts the object, callouts are applied to.
- Thin dashed lines depicts the supplemental geometry.
Each type of geometrical callout will be analysed in more details in next subsections.
Datum feature callout
A datum_feature_callout is a draughting_callout that presents a datum. It shall contain an alphanumeric designation to be used as identification of the datum. Datum_feature_callout usually consists of some annotation_text_occurrence, annotation_symbol_occurrence and annotation_curve_occurrences. In the case of example provided in Figure 10, datum feature callout consists of the following elements:
- 'Connecting line' - curve connecting terminator and datum box. Annotation_curve_occurrences (#1010) points to its style (#1017) and a curve, which in this example is modelled as a trimmed_curve (#1011).
- 'Filled triangle' - terminator which points to the geometrical object callout is applied to. Annotation_symbol_occurrence (#1100) points to its style (#1101), basically defining the color of the symbol to be black and to defined_symbol (#1105). The latter one points to symbol_target (#1107), defining transformation/scaling and to symbol definition. In this case it is modelled as pre_defined_terminator_symbol (#1106), with the name 'filled triangle'.
- 'Datum box' - polyline defining rectangular box, which contains datum letter. Annotation_curve_occurrence (#1210) points to its style (#1216) and to polyline (#1211), defining geometry of the rectangular box.
- 'F' - datum letter as a text. Annotation_text_occurrence (#1301) points to its style (#1302), definining font, color and other parameters and to text_literal_with_extent (#1310) containing text information (in this case 'F') and some allignment information (baseline right, orientation and extent).
Complete Part21 example can be found here callouts.stp.
#1000=(DATUM_FEATURE_CALLOUT()DRAUGHTING_CALLOUT((#1010, #1100, #1210,#1301))DRAUGHTING_ELEMENTS()
GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM('callout'));
#1010=(ANNOTATION_CURVE_OCCURRENCE()ANNOTATION_OCCURRENCE()DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM(' ')STYLED_ITEM((#1017),#1011));
#1100=(ANNOTATION_OCCURRENCE()ANNOTATION_SYMBOL_OCCURRENCE()DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM(' ')STYLED_ITEM((#1101),#1105)TERMINATOR_SYMBOL(#1010));
#1210=(ANNOTATION_CURVE_OCCURRENCE()ANNOTATION_OCCURRENCE()DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM(' ')STYLED_ITEM((#1216),#1211));
#1301=(ANNOTATION_OCCURRENCE()ANNOTATION_TEXT_OCCURRENCE()DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM(' ')STYLED_ITEM((#1302),#1310));
Complete Part21 example can be found here callouts.stp.
Datum target callout
A datum_target_callout is a draughting_callout that presents a datum target. It shall contain an alphanumeric designation and, where applicable, a specification of the diametrical size of the target area. A datum_target_callout usually consists of some annotation_curve_occurrences, annotation_text_occurrences and optionally of annotation_symbol_occurrence. As other type of callouts it may also have a leader_curve. The datum_target_callout provided in example from Figure 11 consists of the following elements:
- circle, containing all the text and symbols of the callout. Annotation_curve_occurrence (#3001) refers to its style (#1017) and a circle (#3002).
- horizontal line, dividing the circle into 2 parts. Annotation_curve_occurrence (#3010) refers to its style (#1017) and a polyline (#3011).
- 'diameter symbol' - symbol in the top left corner of the callout. Annotation_curve_occurrence (#3020) refers to its style (#3111) and to defined_symbol (#3021). The latter one points to symbol_target (#3026), defining transformation/scaling and to symbol definition. In this case it is modelled as pre_defined_terminator_symbol (#3022), with the name 'diameter'.
- '4' - actual value of diameter described by the callout. Annotation_text_occurrence (#3041) refers to its style (#3042), definining font, color and other parameters and to text_literal_with_extent (#3050) containing text information (in this case '4') and some allignment information (baseline right, orientation and extent).
- 'D3' - identification of the callout. Annotation_text_occurrence (#3061) refers to its style (#3042), definining font, color and other parameters and to text_literal_with_extent (#3070) containing text information (in this case 'D3') and some allignment information (baseline right, orientation and extent).
- leader curve, connecting graphical presentation of callout to the feature of geometrical object it is applied to. Annotation_curve_occurrence (#3080) refers to its style (#3090) and a polyline (#3081), defining the geometry of the curve.
Please note that cross symbol leader curve is pointing to IS NOT part of the datum target callout. Complete Part21 example can be found here callouts.stp.
#3000=(DATUM_TARGET_CALLOUT()DRAUGHTING_CALLOUT((#3001, #3010, #3020, #3041, #3061, #3080))DRAUGHTING_ELEMENTS()
GEOMETRIC_REPRESENTATION_ITEM()LEADER_DIRECTED_CALLOUT()REPRESENTATION_ITEM('callout'));
#3001=(ANNOTATION_CURVE_OCCURRENCE()ANNOTATION_OCCURRENCE()DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM() REPRESENTATION_ITEM(' ')STYLED_ITEM((#1017),#3002));
#3010=(ANNOTATION_CURVE_OCCURRENCE()ANNOTATION_OCCURRENCE()DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM(' ')STYLED_ITEM((#1017),#3011));
#3020=(ANNOTATION_OCCURRENCE()ANNOTATION_SYMBOL_OCCURRENCE()DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM(' ')STYLED_ITEM((#3111),#3021));
#3041=(ANNOTATION_OCCURRENCE()ANNOTATION_TEXT_OCCURRENCE()DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM(' ')STYLED_ITEM((#3042),#3050));
#3061=(ANNOTATION_OCCURRENCE()ANNOTATION_TEXT_OCCURRENCE()DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM(' ')STYLED_ITEM((#3042),#3070));
#3080=(ANNOTATION_CURVE_OCCURRENCE()ANNOTATION_OCCURRENCE()DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()LEADER_CURVE()REPRESENTATION_ITEM(' ')STYLED_ITEM((#3090),#3081));
Complete Part21 example can be found here callouts.stp.
Geometrical tolerance callout
A geometrical_tolerance_callout is a draughting_callout that presents a geometrical tolerance. Geometrical tolerance callout consists primarily of feature control frame. Additionally it may contain leader curve as depicted in Figure 12. Leader curve is not modelled in step file and corresponding instance diagrams, because it is already discussed in other examples and is not important here. Feature control frame is modelled using the following strategy:
- Empty frame is one 'defined in place' symbol, modeled as 4 entities:
- annotation_symbol_occurrence (#5800),
- annotation_symbol (#5810),
- symbol_representation_map (#5811),
- symbol_representation (#5820). This representation consisting of many polylines - one for each vertical line (#5830, #5840, #5850, #5860) and one for the surrounding outline box (#5822).
- Content of the table is modelled as a set of separate annotation_occurrences ( annotation_text_occurrences, annotation_symbol_occurrences, etc.) placed independently in the feature control frame:
- 'position symbol' - first element in the table frame, modelled as annotation_symbol_occurrence (#5100). It refers to its style (#5101) and to defined_symbol (#5105). The latter one points to symbol_target (#5107), defining transformation/scaling and to symbol definition. In this case it is modelled as pre_defined_terminator_symbol (#5106), with the name 'position'.
- 'diameter symbol' - second element in the table frame, modelled as annotation_symbol_occurrence (#5200). It refers to its style (#5101) and to defined_symbol (#5205). The latter one points to symbol_target (#5207), defining transformation/scaling and to symbol definition. In this case it is modelled as pre_defined_terminator_symbol (#5206), with the name 'diameter'.
- '0.2' - diameter value modelled as annotation_text_occurrence (#5300). It refers to its style (#5301), definining font, color and other parameters and to text_literal_with_extent (#5305) containing text information (in this case '0.2') and some allignment information (baseline right, orientation and extent).
- 'maximum material condition symbol' - fourth element in the table frame, modelled as annotation_symbol_occurrence (#5400). It refers to its style (#5101) and to defined_symbol (#5405). The latter one points to symbol_target (#5407), defining transformation/scaling and to symbol definition. In this case it is modelled as pre_defined_terminator_symbol (#5406), with the name 'maximum material condition'.
- 'D' - letter 'D' representing Datum 'D' modelled as annotation_text_occurrence (#5500). It refers to its style (#5301), definining font, color and other parameters and to text_literal_with_extent (#5505) containing text information (in this case 'D') and some allignment information (baseline right, orientation and extent).
- 'E' - letter 'E' representing Datum 'E' modelled as annotation_text_occurrence (#5600).It refers to its style (#5301), definining font, color and other parameters and to text_literal_with_extent (#5605) containing text information (in this case 'E') and some allignment information (baseline right, orientation and extent).
- 'F' - letter 'F' representing Datum 'F' modelled as annotation_text_occurrence (#5700).It refers to its style (#5301), definining font, color and other parameters and to text_literal_with_extent (#5705) containing text information (in this case 'F') and some allignment information (baseline right, orientation and extent).
#5000=(DRAUGHTING_CALLOUT((#5100, #5200, #5300, #5400, #5500, #5600, #5700, #5800))DRAUGHTING_ELEMENTS()
GEOMETRICAL_TOLERANCE_CALLOUT()GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM('callout'));
#5100=(ANNOTATION_OCCURRENCE()ANNOTATION_SYMBOL_OCCURRENCE()DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM(' ')STYLED_ITEM((#5101),#5105));
#5200=(ANNOTATION_OCCURRENCE()ANNOTATION_SYMBOL_OCCURRENCE()DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM(' ')STYLED_ITEM((#5101),#5205));
#5300=(ANNOTATION_OCCURRENCE()ANNOTATION_TEXT_OCCURRENCE()DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM(' ')STYLED_ITEM((#5301),#5305));
#5400=(ANNOTATION_OCCURRENCE()ANNOTATION_SYMBOL_OCCURRENCE()DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM(' ')STYLED_ITEM((#5101),#5405));
#5500=(ANNOTATION_OCCURRENCE()ANNOTATION_TEXT_OCCURRENCE()DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM(' ')STYLED_ITEM((#5301),#5505));
#5600=(ANNOTATION_OCCURRENCE()ANNOTATION_TEXT_OCCURRENCE()DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM(' ')STYLED_ITEM((#5301),#5605));
#5700=(ANNOTATION_OCCURRENCE()ANNOTATION_TEXT_OCCURRENCE()DRAUGHTING_ANNOTATION_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM(' ')STYLED_ITEM((#5301),#5705));
#5800=(ANNOTATION_OCCURRENCE()ANNOTATION_SYMBOL_OCCURRENCE()
GEOMETRIC_REPRESENTATION_ITEM()REPRESENTATION_ITEM(' ')STYLED_ITEM((#5801),#5810));
#5810=(ANNOTATION_SYMBOL()GEOMETRIC_REPRESENTATION_ITEM()MAPPED_ITEM(#5811,#5812)REPRESENTATION_ITEM(' '));
#5811=SYMBOL_REPRESENTATION_MAP(#9,#5820);
#5820=SYMBOL_REPRESENTATION('Complete table for Datum feature control frame',(#9, #5822, #5830, #5840, #5850, #5860),#5821);
Complete Part21 example can be found here callouts.stp.
Another way to model feature control frame is to use table_representation, table_record_field_representation and other related entities from part 46. Unfortunately those entities are currently not supported by most of Application Protocols like AP203, AP210, AP214, so can't be implemented without extending those standards. For more information about this method read this subsection of recommended practices - Feature control frame modelled using table representation. Complete Part21 example can be found here callouts.stp.
Return to the Recommended Practices for the Presentation of GD&T.