ISO 10303-112:2006
(Main)Industrial automation systems and integration — Product data representation and exchange — Part 112: Integrated application resource: Modelling commands for the exchange of procedurally represented 2D CAD models
Industrial automation systems and integration — Product data representation and exchange — Part 112: Integrated application resource: Modelling commands for the exchange of procedurally represented 2D CAD models
Procedural representations are expressed as sequences of modelling commands. ISO 10303-112:2006 defines standardized representations for a set of modelling commands for the exchange of procedurally represented 2D CAD models, including sketches or profiles.
Systèmes d'automatisation industrielle et intégration — Représentation et échange de données de produits — Partie 112: Ressources d'application intégrée: Commandes de modélisation pour l'échange de modèles 2D CAD représentés en modes opératoires
General Information
Standards Content (Sample)
INTERNATIONAL ISO
STANDARD 10303-112
First edition
2006-12-15
Industrial automation systems and
integration — Product data
representation and exchange —
Part 112:
Integrated application resource:
Modelling commands for the exchange of
procedurally represented 2D CAD models
Systèmes d'automatisation industrielle et intégration — Représentation
et échange de données de produits —
Partie 112: Ressources d'application intégrée: Commandes de
modélisation pour l'échange de modèles 2D CAD représentés en
modes opératoires
Reference number
©
ISO 2006
PDF disclaimer
This PDF file may contain embedded typefaces. In accordance with Adobe's licensing policy, this file may be printed or viewed but
shall not be edited unless the typefaces which are embedded are licensed to and installed on the computer performing the editing. In
downloading this file, parties accept therein the responsibility of not infringing Adobe's licensing policy. The ISO Central Secretariat
accepts no liability in this area.
Adobe is a trademark of Adobe Systems Incorporated.
Details of the software products used to create this PDF file can be found in the General Info relative to the file; the PDF-creation
parameters were optimized for printing. Every care has been taken to ensure that the file is suitable for use by ISO member bodies. In
the unlikely event that a problem relating to it is found, please inform the Central Secretariat at the address given below.
© ISO 2006
All rights reserved. Unless otherwise specified, no part of this publication may be reproduced or utilized in any form or by any means,
electronic or mechanical, including photocopying and microfilm, without permission in writing from either ISO at the address below or
ISO's member body in the country of the requester.
ISO copyright office
Case postale 56 • CH-1211 Geneva 20
Tel. + 41 22 749 01 11
Fax + 41 22 749 09 47
E-mail copyright@iso.org
Web www.iso.org
Published in Switzerland
ii © ISO 2006 – All rights reserved
Contents Page
1 Scope. 1
2 Normative references. 1
3 Terms, definitions, and abbreviations. 2
3.1 Terms defined in ISO 10303-1 . 2
3.2 Terms defined in ISO 10303-11 . 2
3.3 Terms defined in ISO 10303-55 . 2
3.4 Terms defined in ISO 10303-108 . 2
3.5 Other terms and definitions . 3
3.6 Abbreviations . 3
4 Procedural sketch. 3
4.1 Introduction . 3
4.2 Fundamental concepts and assumptions. 4
4.2.1 Identification of selected entities. 4
4.2.2 Representation of construction history. 4
4.2.3 Representation of explicit constraints in a 2D sketch. 5
4.3 Procedural sketch type definitions. 5
4.3.1 polygon_circle_type . 5
4.3.2 circle_or_circular_arc. 5
4.3.3 line_or_trimmed_line . 6
4.3.4 rotation_direction . 6
4.3.5 ps_sketch_element_select. 6
4.4 procedural_sketch entity definitions. 7
4.4.1 sketch_command . 7
4.4.2 sketch_create_curve_element. 7
4.4.3 create_line_segment . 7
4.4.4 create_line_segment_2_points. 8
4.4.5 create_line_segment_point_tangent . 8
4.4.6 create_line_segment_2_tangents . 9
4.4.7 create_centreline. 10
4.4.8 create_polyline . 11
4.4.9 create_rectangle. 11
4.4.10 create_polygon . 12
4.4.11 create_circular_arc. 13
4.4.12 create_circular_arc_concentric. 13
4.4.13 create_circular_arc_3_tangents . 14
4.4.14 create_circular_arc_centre_ends. 16
4.4.15 create_circular_arc_start_centre_angle . 17
4.4.16 create_circular_arc_start_centre_length. 18
4.4.17 create_circular_arc_start_end_angle . 19
4.4.18 create_circular_arc_start_end_direction. 19
4.4.19 create_circular_arc_start_end_radius . 20
4.4.20 create_circular_arc_3_points. 20
4.4.21 create_circular_arc_angles . 21
4.4.22 create_circle. 22
4.4.23 create_circle_centre_point. 23
4.4.24 create_circle_concentric . 23
4.4.25 create_circle_3_tangents . 24
4.4.26 create_circle_2_points. 25
4.4.27 create_circle_3_points. 26
4.4.28 create_ellipse . 27
4.4.29 create_ellipse_3_points . 27
4.4.30 create_ellipse_centre_point . 28
4.4.31 create_spline. 29
4.4.32 create_parabolic_arc. 30
4.4.33 create_fillet . 31
4.4.34 create_chamfer. 32
4.4.35 create_divided_curve. 34
4.4.36 sketch_operate_transform. 35
4.4.37 sketch_transform_translate. 36
4.4.38 sketch_transform_rotate . 36
4.4.39 sketch_transform_mirror . 37
4.4.40 sketch_transform_scale . 38
4.4.41 sketch_create_pattern_element. 39
4.4.42 create_pattern_rectangular. 39
4.4.43 create_pattern_circular . 40
4.5 procedural_sketch function definitions . 42
4.5.1 distance_between_cartesian_points. 42
4.5.2 non_collinear_2d_points . 42
4.5.3 midpoint. 43
4.5.4 distinct_points. 43
4.5.5 circular_type. 44
4.5.6 linear_type . 44
4.5.7 centre_of_circle_or_circular_arc. 45
4.5.8 have_pattern_elements_in_geometric_curve_set . 45
4.5.9 three_distinct_points. 45
Annex A (normative) Short names of entities. 47
Annex B (normative) Information object registration. 49
B.1 Document identification . 49
B.2 Schema identification . 49
Annex C (informative) Computer interpretable listings. 50
Annex D (informative) EXPRESS-G diagrams . 51
Annex E (informative) Example of intended usage of this part of ISO 10303 . 68
E.1 Example. 68
Index. 70
Figures
Figure 1 — Schema level diagram of relationships between the ISO 10303-112 schemas and other
resource schemas . vii
Figure 2 — create_line_segment_2_points. 8
Figure 3 — create_centreline . 10
Figure 4 — create_polyline. 11
Figure 5 — create_rectangle . 12
Figure 6 — create_circular_arc_concentric . 14
Figure 7 — create_circular_arc_3_tangents. 16
Figure 8 — create_circular_arc_centre_ends. 17
Figure 9 — create_circular_arc_start_centre_angle. 18
iv © ISO 2006 – All rights reserved
Figure 10 — create_circular_arc_3_points . 21
Figure 11 — create_circular_arc_angles. 22
Figure 12 — create_circle_centre_point . 23
Figure 13 — create_circle_concentric. 24
Figure 14 — create_circle_3_tangents. 25
Figure 15 — create_circle_3_points . 27
Figure 16 — create_ellipse_3_points. 28
Figure 17 — create_ellipse_centre_point. 29
Figure 18 — create_spline . 30
Figure 19 — create_parabolic_arc . 31
Figure 20 — create_fillet . 32
Figure 21 — create_chamfer. 34
Figure 22 — sketch_divided_curve . 35
Figure 23 — sketch_transform_translate . 36
Figure 24 — sketch_transform_rotate. 37
Figure 25 — sketch_transform_mirror. 38
Figure 26 — sketch_transform_scale. 39
Figure 27 — create_pattern_rectangular. 40
Figure 28 — create_pattern_circular. 42
Figure D. 1 — procedural_sketch_schema EXPRESS-G diagram 1 of 16. 52
Figure D. 2 — procedural_sketch_schema EXPRESS-G diagram 2 of 16. 53
Figure D. 3 — procedural_sketch_schema EXPRESS-G diagram 3 of 16. 54
Figure D. 4 — procedural_sketch_schema EXPRESS-G diagram 4 of 16. 55
Figure D. 5 — procedural_sketch_schema EXPRESS-G diagram 5 of 16. 56
Figure D. 6 — procedural_sketch_schema EXPRESS-G diagram 6 of 16. 57
Figure D. 7 — procedural_sketch_schema EXPRESS-G diagram 7 of 16. 58
Figure D. 8 — procedural_sketch_schema EXPRESS-G diagram 8 of 16. 59
Figure D. 9 — procedural_sketch_schema EXPRESS-G diagram 9 of 16. 60
Figure D. 10 — procedural_sketch_schema EXPRESS-G diagram 10 of 16. 61
Figure D. 11 — procedural_sketch_schema EXPRESS-G diagram 11 of 16. 62
Figure D. 12 — procedural_sketch_schema EXPRESS-G diagram 12 of 16. 63
Figure D. 13 — procedural_sketch_schema EXPRESS-G diagram 13 of 16. 64
Figure D. 14 — procedural_sketch_schema EXPRESS-G diagram 14 of 16. 65
Figure D. 15 — procedural_sketch_schema EXPRESS-G diagram 15 of 16. 66
Figure D. 16 — procedural_sketch_schema EXPRESS-G diagram 16 of 16. 67
Figure E. 1 — Example. 68
Tables
Table A. 1 — Short names of entities . 47
Foreword
ISO (the International Organization for Standardization) is a worldwide federation of national
standards bodies (ISO member bodies). The work of preparing International Standards is normally
carried out through ISO technical committees. Each member body interested in a subject for which a
technical committee has been established has the right to be represented on that committee.
International organizations, governmental and non-governmental, in liaison with ISO, also take part in
the work. ISO collaborates closely with the International Electrotechnical Commission (IEC) on all
matters of electrotechnical standardization.
International Standards are drafted in accordance with the rules given in the ISO/IEC Directives, Part
2.
The main task of technical committees is to prepare International Standards. Draft International
Standards adopted by the technical committees are circulated to the member bodies for voting.
Publication as an International Standard requires approval by at least 75% of the member bodies
casting a vote.
Attention is drawn to the possibility that some of the elements of this part of ISO 10303 may be the
subject of patent rights. ISO shall not be held responsible for identifying any or all such patent rights.
ISO 10303-112 was prepared by Technical Committee ISO/TC 184, Industrial automation systems
and integration, Subcommittee SC4, Industrial data.
ISO 10303 consists of a series of parts, under the general title Industrial automation systems and
integration — Product data representation and exchange. The structure of ISO 10303 is described in
ISO 10303-1.
Each part of ISO 10303 is a member of one of the following series: description methods,
implementation methods, conformance testing methodology and framework, integrated generic
resources, integrated application resources, application protocols, abstract test suites, application
interpreted constructs, and application modules. This part is a member of the integrated application
resources series. The integrated generic resources and the integrated application resources specify a
single conceptual product data model.
A complete list of parts of ISO 10303 is available from the following URL:
http://www.tc184-sc4.org/titles/STEP_Titles.htm
vi © ISO 2006 – All rights reserved
Introduction
ISO 10303 is an International Standard for the computer-interpretable representation of product
information and for the exchange of product data. The objective is to provide a neutral mechanism
capable of describing products throughout their life cycle. This mechanism is suitable not only for
neutral file exchange, but also as a basis for implementing and sharing product databases, and as a
basis for archiving.
This part of ISO 10303 is a member of the integrated application resources series. This part of ISO
10303 specifies the procedural_sketch schema.
This part of ISO 10303 provides general resources for the representation of modelling commands for
the exchange of procedurally represented 2D CAD models. Procedural models have the advantage of
being easy to edit, simply by changing values of parameters used as arguments of their constructional
operations. Such models are said to embody design intent, in the sense that modifications to them
conform to the method of creation used by their original creator, and they also comply with any
constraints implied by the particular constructional operations used.
ISO 10303-55 specifies the resource constructs for the representation of models of the procedural or
construction history type, defined in terms of the sequence of constructional operations used to build
them. The mechanisms provided in ISO 10303-55 allow the use of entity data types specified in this
part of ISO 10303 for representations of the operations.
The relationships of the schema in this part of ISO 10303 to other schemas that define the integrated
resources of ISO 10303 are illustrated in Figure 1 using EXPRESS-G notation. EXPRESS-G is
defined in ISO 10303-11:2004, Annex D. The schemas occurring in Figure 1 are components of ISO
10303 integrated resources, and they are specified in the following resource parts:
measure_schema ISO 10303-41
geometry_schema ISO 10303-42
geometric_model_schema ISO 10303-42
sketch_schema ISO 10303-108
explicit_geometric_constraint_schema ISO 10303-108
geometry_schema
procedural_sketch_
schema measure_schema
geometric_model_
schema
sketch_schema
explicit_geometric_
constraint_schema
Figure 1 — Schema level diagram of relationships between the ISO 10303-112 schemas and
other resource schemas
INTERNATIONAL STANDARD ISO 10303-112:2006(E)
Industrial automation systems and integration — Product data
representation and exchange —
Part 112:
Integrated application resource: Modelling commands for the
exchange of procedurally represented 2D CAD models
1 Scope
This part of ISO 10303 specifies the resource constructs for the representation of 2D modelling
commands for use in the exchange of procedurally represented 2D CAD models. A procedural model
is defined in terms of the sequence of 2D modelling operations used to build it.
The following are within the scope of this part of ISO 10303:
— entities representing creation commands for geometric elements such as lines, arcs, chamfers
and fillets;
— entities representing transformation operations such as rotations and translations.
The following are outside the scope of this part of ISO 10303:
— the identification of selected entities by interactive picking in a procedural model;
— the specification of sequences of modelling commands;
— query, deletion and modification commands (except in the case where the modification is a
transformation);
— dimensioning and constraining commands for 2D modelling.
The first and second capabilities in the out of scope list above are provided by ISO 10303-55, and the
fourth by ISO 10303-108. This part of ISO 10303 is designed to be used in conjunction with those
parts of ISO 10303.
2 Normative references
The following referenced documents are indispensable for the application of this document. For dated
references, only the edition cited applies. For updated references, the latest edition of the referenced
document (including any amendments) applies
ISO/IEC 8824-1, Information technology — Abstract Syntax Notation One (ASN.1) —
Part 1: Specification of basic notation.
ISO 10303-1, Industrial automation systems and integration — Product data representation and
exchange — Part 1: Overview and fundamental principles.
ISO 10303-11:2004, Industrial automation systems and integration — Product data representation
and exchange — Part 11: Description methods: The EXPRESS language reference manual.
ISO 10303-41, Industrial automation systems and integration — Product data representation and
exchange — Part 41: Integrated generic resource: Fundamentals of product description and support.
ISO 10303-42, Industrial automation systems and integration — Product data representation and
exchange — Part 42: Integrated generic resource: Geometric and topological representation.
ISO 10303-55, Industrial automation systems and integration — Product data representation and
exchange — Part 55: Integrated generic resource: Procedural and hybrid representation.
ISO 10303-108, Industrial automation systems and integration — Product data representation and
exchange — Part 108: Integrated application resource: Parameterization and constraints for explicit
geometric product models.
3 Terms, definitions, and abbreviations
3.1 Terms defined in ISO 10303-1
For the purposes of this document, the following term defined in ISO 10303-1 applies.
— application.
3.2 Terms defined in ISO 10303-11
For the purposes of this document, the following terms defined in ISO 10303-11 apply.
— entity;
— entity data type;
— instance.
3.3 Terms defined in ISO 10303-55
For the purposes of this document, the following terms defined in ISO 10303-55 apply.
— explicit selected elements;
— procedural model.
3.4 Terms defined in ISO 10303-108
For the purposes of this document, the following terms defined in ISO 10303-108 apply.
— constraint;
— explicit constraint;
2 © ISO 2006 – All rights reserved
— sketch.
3.5 Other terms and definitions
For the purposes of this document, the following definition applies.
3.5.1
sketch command
command for the creation of one or more sketch elements.
3.6 Abbreviations
For the purposes of this part of ISO 10303 the following abbreviations apply:
CAD computer aided design
IR integrated resource (of ISO 10303)
4 Procedural sketch
4.1 Introduction
The following EXPRESS declaration begins the procedural sketch schema and identifies the necessary
external references.
EXPRESS specification:
*)
SCHEMA procedural_sketch_schema;
REFERENCE FROM measure_schema -- ISO 10303-41
(count_measure,
length_measure,
plane_angle_measure,
positive_length_measure,
positive_plane_angle_measure,
positive_ratio_measure);
REFERENCE FROM geometry_schema -- ISO 10303-42
(cartesian_point,
circle,
conic,
cross_product,
curve,
direction,
geometric_representation_item,
line,
point_on_curve,
trimmed_curve);
REFERENCE FROM geometric_model_schema -- ISO 10303-42
(geometric_curve_set
geometric_set);
REFERENCE FROM sketch_schema -- ISO 10303-108
(sketch_element_select);
REFERENCE FROM explicit_geometric_constraint_schema -- ISO 10303-108
(near_point_relationship,
non_negative_length_measure);
(*
NOTE 1 The schemas referenced above are specified in the following part of ISO 10303:
measure_schema ISO 10303-41
geometry_schema ISO 10303-42
geometric_model_schema ISO 10303-42
sketch_schema ISO 10303-108
explicit_geometric_constraint_schema ISO 10303-108
NOTE 2 See annex D, Figures D.1 – D.16, for a graphical presentation of this schema.
4.2 Fundamental concepts and assumptions
The procedural sketch schema defines representations for a set of 2D modelling commands for the
creation of a sketch. The intention is to provide a means for the exchange of procedural
representations of sketches and other 2D geometric models.
NOTE 1 A common application of such a sketch is extrusion or rotation to generate a 3D model.
NOTE 2 The commands specified in this part of ISO 10303 are concerned purely with geometry. However,
the capabilities of ISO 10303-108 may be used to parameterize or constrain elements of the created geometry.
4.2.1 Identification of selected entities
It is intended that selected_items_in_procedural_shape_rep as defined in ISO 10303-55 shall be
used for the identification of elements selected by the user from the CAD system screen.
4.2.2 Representation of construction history
The sequence of operations used to create a 2D sketch model is referred to as a construction history or
a procedural model. This part of ISO 10303 is intended to be used in conjunction with ISO 10303-55,
which provides the mechanisms to capture the sequence of operations.
EXAMPLE To represent a construction history, procedural_shape_representation_sequence from ISO
10303-55 is used as follows.
#10=PROCEDURAL_SHAPE_REPRESENTATION_SEQUENCE('Example',(#33,#34,#13,#14,
#12),$,'sketch1');
#12=SKETCH_OPERATE_FILLET('Fillet1',#17,#18,2.,.T.);
#13=USER_SELECTED_SHAPE_ELEMENTS('',(#17));
#14=USER_SELECTED_SHAPE_ELEMENTS('',(#18));
#17=TRIMMED_CURVE('',#21,(#37),(#38),.T.,.CARTESIAN.);
#18=TRIMMED_CURVE('',#22,(#39),(#40),.T.,.CARTESIAN.);
#33=CREATE_LINE_SEGMENT_2_POINTS('line1',#37,#38);
#34=CREATE_LINE_SEGMENT_2_POINTS('line2',#39,#40);
NOTE 1 In the above example, the instance of procedural_shape_representation_sequence uses instances
of the entity geometric_representation_item (defined in ISO 10303-42) as arguments. Because the entities of
this part of ISO 10303 are subtypes of geometric_representation_item, they can be used for this purpose.
NOTE 2 The above example is a part of the example in clause E.1 of Annex E. Some instances such as #21,
#22 are omitted.
4 © ISO 2006 – All rights reserved
4.2.3 Representation of explicit constraints in a 2D sketch
This part of ISO 10303 is intended to be used in conjunction with ISO 10303-108 to represent explicit
constraints among sketch elements.
EXAMPLE To represent explicit constraints, resources of ISO 10303-108 are used as shown in the following
example
#10=PROCEDURAL_SHAPE_REPRESENTATION_SEQUENCE('Example',(#35,#36,#15,#16,#11),$,'sketch
1');
#11=PARALLEL_GEOMETRIC_CONSTRAINT('constraint1','',(#23),(#24));
#15=USER_SELECTED_SHAPE_ELEMENTS('',(#19));
#16=USER_SELECTED_SHAPE_ELEMENTS('',(#20));
#19=TRIMMED_CURVE('',#23,(#41),(#42),.T.,.CARTESIAN.);
#20=TRIMMED_CURVE('',#24,(#43),( #44),.T.,.CARTESIAN.);
#23=LINE('',#41,#27);
#24=LINE('',#43,#28);
#35=CREATE_LINE_SEGMENT_2_POINTS('line3',#41,#42);
#36=CREATE_LINE_SEGMENT_2_POINTS('line4',#43,#44);
NOTE 1 In the above example, the instance of parallel_geometric_constraint from ISO 10303-108 uses
two instances of line (as defined in ISO 10303-42) as arguments. According to the mechanism of ISO 10303-55,
these instances represent the explicit geometry of instances #35 and #36. As a result, the instance of
parallel_geometric_constraint effectively constrains the geometry created by instances #35 and #36.
NOTE 2 The above example is a part of the example in clause E.1 of Annex E. Some instances such as #41,
#43 are omitted.
4.3 Procedural sketch type definitions
4.3.1 polygon_circle_type
A polygon_circle_type specifies the relationship between the polygon and the circle used to create it.
EXPRESS specification:
*)
TYPE polygon_circle_type = ENUMERATION OF
(inscribed,
circumscribed);
END_TYPE;
(*
Enumerated item definitions:
inscribed: the polygon to be created is inscribed in the circle.
circumscribed: the polygon to be created is circumscribed about the circle.
4.3.2 circle_or_circular_arc
A circle_or_circular_arc selects a circle or circular arc. A circular arc is represented by the
trimmed_curve entity from ISO 10303-42, with the restriction that its basis curve shall be of type
circle as defined in ISO 10303-42.
EXPRESS specification:
*)
TYPE circle_or_circular_arc = SELECT
(circle,
trimmed_curve);
WHERE
WR1: circular_type(SELF);
END_TYPE;
(*
Formal propositions:
WR1: If the type of the selected instance is trimmed_curve then its attribute basis_curve shall be of
type circle.
4.3.3 line_or_trimmed_line
A line_or_trimmed_line selects a line or trimmed line. A trimmed line is represented by the
trimmed_curve entity from ISO 10303-42, with the restriction that its basis curve shall be of type line
as defined in ISO 10303-42.
EXPRESS specification:
*)
TYPE line_or_trimmed_line = SELECT
(line,
trimmed_curve);
WHERE
WR1: linear_type(SELF);
END_TYPE;
(*
Formal propositions:
WR1: If the type of the selected instance is trimmed_curve then its attribute basis_curve shall be of
type line.
4.3.4 rotation_direction
A rotation_direction specifies the sense of rotation.
EXPRESS specification:
*)
TYPE rotation_direction = ENUMERATION OF
(cw,
ccw);
END_TYPE;
(*
Enumerated item definitions:
cw: the sense of rotation is clockwise.
ccw: the sense of rotation is counterclockwise.
4.3.5 ps_sketch_element_select
A ps_sketch_element_select selects a type of sketch or sketch transformation.
6 © ISO 2006 – All rights reserved
EXPRESS specification:
*)
TYPE ps_sketch_element_select = SELECT BASED_ON sketch_element_select WITH
(sketch_create_curve_element,
sketch_create_pattern_element,
sketch_operate_transform);
END_TYPE;
(*
4.4 procedural_sketch entity definitions
4.4.1 sketch_command
A sketch_command represents the creation of a new sketch element or the transformation of an
existing sketch element.
EXPRESS specification:
*)
ENTITY sketch_command
ABSTRACT SUPERTYPE OF (ONEOF (sketch_create_curve_element,
sketch_create_pattern_element, sketch_operate_transform));
END_ENTITY;
(*
4.4.2 sketch_create_curve_element
A sketch_create_curve_element is a type of sketch_command and geometric_representation-
_item that specifies types of curve creation.
EXPRESS specification:
*)
ENTITY sketch_create_curve_element
ABSTRACT SUPERTYPE OF (ONEOF (create_line_segment, create_centreline,
create_polyline, create_rectangle, create_polygon, create_circular_arc,
create_circle, create_ellipse, create_spline, create_parabolic_arc,
create_fillet, create_chamfer, create_divided_curve))
SUBTYPE OF (sketch_command, geometric_representation_item);
WHERE
WR1: SELF\geometric_representation_item.dim = 2;
END_ENTITY;
(*
Formal propositions:
WR1: The dimension of this entity shall be 2D.
4.4.3 create_line_segment
A create_line_segment is a type of sketch_create_curve_element that specifies types of line
segment creation.
EXPRESS specification:
*)
ENTITY create_line_segment
ABSTRACT SUPERTYPE OF (ONEOF (create_line_segment_2_points,
create_line_segment_point_tangent, create_line_segment_2_tangents))
SUBTYPE OF (sketch_create_curve_element);
END_ENTITY;
(*
4.4.4 create_line_segment_2_points
A create_line_segment_2_points is a type of create_line_segment that creates a line segment with
two given end points.
NOTE The two points referred to in the definition of this entity shall be explicitly represented, through the
use of the ISO 10303-55 selection mechanism.
EXPRESS specification:
*)
ENTITY create_line_segment_2_points
SUBTYPE OF (create_line_segment);
start_point : cartesian_point;
end_point : cartesian_point;
WHERE
WR1: distance_between_cartesian_points(start_point, end_point) <> 0.0;
END_ENTITY;
(*
Attribute definitions:
start_point: the start point of the line segment.
end_point: the end point of the line segment.
Formal propositions:
WR1: The start point and the end point shall have distinct positions.
start_point
end_point
Figure 2 — create_line_segment_2_points
4.4.5 create_line_segment_point_tangent
A create_line_segment_point_tangent is a type of create_line_segment that creates a line segment
which is starting from a given start point and is tangential to a given curve. The end point of the line
segment is the point of tangency with the tangent_curve.
NOTE The point and the curve referred to in the definition of this entity shall be explicitly represented,
through the use of the ISO 10303-55 selection mechanism.
EXPRESS specification:
*)
8 © ISO 2006 – All rights reserved
ENTITY create_line_segment_point_tangent
SUBTYPE OF (create_line_segment);
start_point : cartesian_point;
tangent_curve : curve;
tangent_curve_near_point : near_point_relationship;
WHERE
WR1: tangent_curve_near_point\representation_item_relationship.
relating_representation_item :=: tangent_curve;
END_ENTITY;
(*
Attribute definitions:
start_point: the start point of the line segment.
tangent_curve: the curve tangential to the line.
tangent_near_point: the near_point_relationship instance giving the approximate location of an
intended tangency to the curve.
Formal propositions:
WR1: The associated curve for the specified near point shall correspond to the tangent curve.
4.4.6 create_line_segment_2_tangents
A create_line_segment_2_tangents is a type of create_line_segment that creates a line segment
tangential to 2 given curves. The start and end points of the line segment are the points of tangency
with the first and second curves, respectively.
NOTE The first and second curves referred to in the definition of this entity shall be explicitly
represented, through the use of the ISO 10303-55 selection mechanism.
EXPRESS specification:
*)
ENTITY create_line_segment_2_tangents
SUBTYPE OF (create_line_segment);
first_curve : curve;
first_near_point : near_point_relationship;
second_curve : curve;
second_near_point : near_point_relationship;
WHERE
WR1: first_curve <> second_curve;
WR2: first_near_point\representation_item_relationship.
relating_representation_item :=: first_curve;
WR3: second_near_point\representation_item_relationship.
relating_representation_item :=: second_curve;
END_ENTITY;
(*
Attribute definitions:
first_curve: the first curve tangential to the line segment.
first_near_point: the first near_point_relationship instance giving the approximate location of an
intended tangency to the first curve.
second_curve: the second curve tangential to the line segment.
second_near_point: the second near_point_relationship instance giving the approximate location of
an intended tangency to the second curve.
Formal propositions:
WR1: The first curve shall be different from the second curve.
WR2: The associated curve for the specified first near point shall correspond to the first curve.
WR3: The associated curve for the specified second near point shall correspond to the second curve.
4.4.7 create_centreline
A create_centreline is a type of sketch_create_curve_element that creates a centreline passing
through two points in the sketch plane. A centreline is an auxiliary geometric element intended for use
as an axis of rotation or symmetry.
NOTE The two points referred to in the definition of this entity shall be explicitly represented, through the
use of the ISO 10303-55 selection mechanism.
EXPRESS specification:
*)
ENTITY create_centreline
SUBTYPE OF (sketch_create_curve_element);
first_ref_point : cartesian_point;
second_ref_point : cartesian_point;
WHERE
WR1: distance_between_cartesian_points(first_ref_point, second_ref_point)
<> 0.0;
END_ENTITY;
(*
Attribute definitions:
first_ref_point: the first reference point on the centreline.
second_ref_point: the second reference point on the centreline.
Formal propositions:
WR1: The first reference point and the second reference point shall have distinct positions.
first_ref_point
second_ref_point
Figure 3 — create_centreline
10 © ISO 2006 – All rights reserved
4.4.8 create_polyline
A create_polyline is a type of sketch_create_curve_element that creates a polyline connecting a
sequence of points on a plane.
NOTE All the points referred to in the definition of this entity shall be explicitly represented, through the
use of the ISO 10303-55 selection mechanism.
EXPRESS specification:
*)
ENTITY create_polyline
SUBTYPE OF (sketch_create_curve_element);
points : LIST [3:?] OF cartesian_point;
WHERE
WR1: distinct_points(points);
END_ENTITY;
(*
Attribute definitions:
points: the sequence of input points.
Formal propositions:
WR1: Any two successive points of the points list shall have distinct positions.
points[1]
points[6]
Figure 4 — create_polyline
4.4.9 create_rectangle
A create_rectangle is a type of sketch_create_curve_element that creates a rectangle in terms of
three points. The first two points define the width and the rotation angle of the rectangle. The
perpendicular distance of the third point from the line joining the first two points defines the height of
the rectangle.
NOTE 1 The three points referred to in the definition of this entity shall be explicitly represented, through
the use of the ISO 10303-55 selection mechanism.
EXPRESS specification:
*)
ENTITY create_rectangle
SUBTYPE OF (sketch_create_curve_element);
first_point : cartesian_point;
second_point : cartesian_point;
third_point : cartesian_point;
WHERE
WR1: non_collinear_2d_points (first_point, second_point, third_point);
END_ENTITY;
(*
Attribute definitions:
first_point: the first point defining the rectangle.
second_point: the second point, which together with the first point defines the length and direction of
one side of the rectangle.
third_point: the third point, which together with the first two points defines the height of the rectangle.
Formal propositions:
WR1: The three points shall not be collinear.
NOTE 2 The use in WR1 of function non_collinear_2
...








Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.
Loading comments...