Application module: Construction geometry | ISO/TS 10303-1131:2019(E) © ISO |
This clause specifies the EXPRESS schema derived from the mapping table. It uses elements from the common resources or from other application modules and defines the EXPRESS constructs that are specific to this part of ISO 10303.
This clause constitutes the Module Interpreted Module (MIM) of the application module.
This clause also specifies the modifications that apply to the constructs imported from the common resources.
The following restrictions apply to the use, in this schema, of constructs defined in common resources or in application modules:
Short names of entities defined in this schema are described in Annex A. Unambiguous identification of this schema is defined in Annex B.
EXPRESS specification:
*)
SCHEMA Construction_geometry_mim;
USE FROM
aic_topologically_bounded_surface;
--
ISO 10303-511
USE FROM
Basic_curve_mim;
--
ISO/TS 10303-1651
USE FROM
geometry_schema;
--
ISO 10303-42
USE FROM
representation_schema
--
ISO 10303-43
(mapped_item,
representation,
representation_map,
representation_relationship);
USE FROM
topology_schema;
--
ISO 10303-42
(*
NOTE 1 The schemas referenced above are specified in the following part of ISO 10303:
aic_topologically_bounded_surface ISO 10303-511 Basic_curve_mim ISO/TS 10303-1651 geometry_schema ISO 10303-42 representation_schema ISO 10303-43 topology_schema ISO 10303-42
NOTE 2 See Annex D, Figures D.1and D.2 for a graphical representation of this schema.
This subclause specifies the MIM type for this application module. The MIM type and definition is specified below.
The constructive_geometry_representation_or_shape_representation type allows for the designation of the data types constructive_geometry_representation and shape_representation.
EXPRESS specification:
*)
TYPE
constructive_geometry_representation_or_shape_representation =
SELECT
(constructive_geometry_representation,
shape_representation);
END_TYPE;
(*
This subclause specifies the MIM entities for this module. The MIM entities and definitions are specified below.
EXPRESS specification:
*)
ENTITY constructive_geometry_representation
SUBTYPE OF (representation);
WHERE
WR1: ('GEOMETRY_SCHEMA.GEOMETRIC_REPRESENTATION_CONTEXT' IN TYPEOF(SELF\representation.context_of_items)) AND
({2 <= SELF\representation.context_of_items\geometric_representation_context.coordinate_space_dimension <= 3});
WR2: SIZEOF( QUERY( cgr_i <* SELF.items | SIZEOF([
'GEOMETRY_SCHEMA.PLACEMENT',
'GEOMETRY_SCHEMA.CURVE',
'GEOMETRY_SCHEMA.EDGE',
'TOPOLOGY_SCHEMA.FACE',
'GEOMETRY_SCHEMA.POINT',
'GEOMETRY_SCHEMA.SURFACE',
'TOPOLOGY_SCHEMA.CONNECTED_FACE_SET',
'TOPOLOGY_SCHEMA.CONNECTED_EDGE_SET',
'TOPOLOGY_SCHEMA.VERTEX_POINT'
] * TYPEOF(cgr_i)) <> 1 )) = 0;
WR3: SIZEOF( USEDIN( SELF, 'REPRESENTATION_SCHEMA.' + 'REPRESENTATION_RELATIONSHIP.REP_2') ) > 0;
END_ENTITY;
(*
Formal propositions:
WR1: The constructive_geometry_representation shall have a geometric_representation_context as its context_of_items. This geometric_representation_context shall have a coordinate_space_dimension of value 2 or 3.
WR2: The items in the constructive_geometry_representation shall be of type placement, curve, edge, face, point, surface, face_surface or vertex_point.
WR3: The constructive_geometry_representation shall play the role of rep_2 for at least one constructive_geometry_representation_relationship.
EXAMPLE The constructive_geometry_representation may contain axis placements that were used to locate planar surfaces.
The constructive_geometry_representation may associate two constructive_geometry_representations to create a representation in more than one step.EXPRESS specification:
*)
ENTITY constructive_geometry_representation_relationship
SUBTYPE OF (representation_relationship);
SELF\representation_relationship.rep_1 : constructive_geometry_representation_or_shape_representation;
SELF\representation_relationship.rep_2 : constructive_geometry_representation;
WHERE
WR1: (SELF.rep_1.context_of_items :=: SELF.rep_2.context_of_items) AND
('GEOMETRY_SCHEMA.GEOMETRIC_REPRESENTATION_CONTEXT' IN TYPEOF(SELF.rep_1.context_of_items));
WR2: NOT('REPRESENTATION_SCHEMA.' + 'REPRESENTATION_RELATIONSHIP_WITH_TRANSFORMATION' IN TYPEOF(SELF));
END_ENTITY;
(*
Attribute definitions:
rep_1: an attribute inherited from the representation_relationship shall be redeclared as the constructive_geometry_representation_or_shape_representation for the constructive_geometry_representation_relationship.
rep_2: an attribute inherited from the representation_relationship shall be redeclared as the constructive_geometry_representation for the constructive_geometry_representation_relationship.
Formal propositions:
WR1: Both representations playing the roles of rep_1 and rep_2 of the constructive_geometry_representation_relationship shall share the same geometric_representation_context.
WR2: The constructive_geometry_representation_relationship shall not be of type representation_relationship_with_transformation.
*)
END_SCHEMA; -- Construction_geometry_mim
(*
© ISO 2019 — All rights reserved