Application module: Appearance assignment | ISO/TS 10303-1001:2019(E) © ISO |
This clause specifies the information requirements for the Appearance assignment application module. The information requirements are specified as the Application Reference Model (ARM) of this application module.
NOTE 1 A graphical representation of the information requirements is given in Annex C.
NOTE 2 The mapping specification is specified in 5.1. It shows how the information requirements are met by using common resources and constructs defined or imported in the MIM schema of this application module.
This clause defines the information requirements to which implementations shall conform using the EXPRESS language as defined in ISO 10303-11. The following begins the Appearance_assignment_arm schema and identifies the necessary external references.
EXPRESS specification:
*)
SCHEMA Appearance_assignment_arm;
(*
The following EXPRESS interface statements specify the elements imported from the ARMs of other application modules.
EXPRESS specification:
*)
USE FROM
Elemental_geometric_shape_arm;
--
ISO/TS 10303-1004
REFERENCE FROM
Support_resource_arm
--
ISO/TS 10303-1800
(bag_to_set);
(*
NOTE 1 The schemas referenced above are specified in the following part of ISO 10303:
Elemental_geometric_shape_arm ISO/TS 10303-1004 Support_resource_arm ISO/TS 10303-1800
NOTE 2 See Annex C, Figures C.1and C.2 for a graphical representation of this schema.
This subclause specifies the ARM types for this application module. The ARM types and definitions are specified below.
The appearance_context type is an extensible list of alternate data types that allows for the designation of the data type Representation.
NOTE The list of entity data types may be extended in application modules that use the constructs of this module.
EXPRESS specification:
*)
TYPE
appearance_context =
EXTENSIBLE
GENERIC_ENTITY
SELECT
(Representation);
END_TYPE;
(*
The appearance_select type is an extensible list of alternate data types. Additional alternate data types are specified in select data types that extend the appearance_select type.
NOTE This empty extensible select requires extension in a further module to ensure that entities that refer to it have at least one valid instantiation.
EXPRESS specification:
*)
TYPE
appearance_select =
EXTENSIBLE
GENERIC_ENTITY
SELECT;
END_TYPE;
(*
EXPRESS specification:
*)
TYPE
context_dependent_appearance_assignment_set =
SET[2:?] OF Context_dependent_appearance_assignment;
END_TYPE;
(*
The geometric_mapping_target type allows for the designation of the data types Axis_placement and cartesian_transformation.
EXPRESS specification:
*)
TYPE
geometric_mapping_target =
SELECT
(Axis_placement,
cartesian_transformation);
END_TYPE;
(*
The overriding_style_context type is an extensible list of alternate data types that allows for the designation of the data types Detailed_geometric_model_element and Styled_model.
NOTE The list of entity data types may be extended in application modules that use the constructs of this module.
EXPRESS specification:
*)
TYPE
overriding_style_context =
EXTENSIBLE
GENERIC_ENTITY
SELECT
(Detailed_geometric_model_element,
Styled_model);
END_TYPE;
(*
The presented_model_select type is an extensible list of alternate data types that allows for the designation of the data type Styled_model.
NOTE The list of entity data types may be extended in application modules that use the constructs of this module.
EXPRESS specification:
*)
TYPE
presented_model_select =
EXTENSIBLE
GENERIC_ENTITY
SELECT
(Styled_model);
END_TYPE;
(*
The styled_element_appearance type allows for the designation of the data types Appearance_assignment and context_dependent_appearance_assignment_set.
EXPRESS specification:
*)
TYPE
styled_element_appearance =
SELECT
(Appearance_assignment,
context_dependent_appearance_assignment_set);
END_TYPE;
(*
The styled_element_target type allows for the designation of the data types Detailed_geometric_model_element, Styled_model_replication, representation_or_representation_reference, and Detailed_topological_model_element.
EXPRESS specification:
*)
TYPE
styled_element_target =
SELECT
(Detailed_geometric_model_element,
Styled_model_replication,
representation_or_representation_reference,
Detailed_topological_model_element);
END_TYPE;
(*
This subclause specifies the ARM entities for this module. Each ARM application entity is an atomic element that embodies a unique application concept and contains attributes specifying the data elements of the entity. The ARM entities and definitions are specified below.
NOTE 1 The various visual characteristics that can be assigned to points, curves or surfaces are defined in other application modules.
NOTE 2 The appearance can be defined explicitly for each represented element or for a context in which the elements are represented.
NOTE 3 Several appearance components can be simultaneously specified with an Appearance_assignment.
EXPRESS specification:
*)
ENTITY Appearance_assignment;
appearance_components : SET[1:?] OF appearance_select;
END_ENTITY;
(*
Attribute definitions:
appearance_components: the set of instances of entity types listed in appearance_select that characterize the appearance of geometric and annotation objects.
EXAMPLE A view in a drawing sheet or on a screen, and a layer are examples of contexts within which visual characteristics, such as colour or line font, apply.
EXPRESS specification:
*)
ENTITY Context_dependent_appearance_assignment
SUBTYPE OF (Appearance_assignment);
context_definition : appearance_context;
END_ENTITY;
(*
Attribute definitions:
context_definition: the instance of a type selected in appearance_context that identifies the context where the appearance components are valid.
EXPRESS specification:
*)
ENTITY Context_dependent_over_riding_styled_element
SUBTYPE OF (Over_riding_styled_element);
context_definition : LIST[1:?] OF overriding_style_context;
END_ENTITY;
(*
Attribute definitions:
context_definition: specifies a list of one or more contexts for which the overriding styles applies.
NOTE Over-riding occurs when both instances of Styled_element are included, directly or indirectly, in the same presentation.
EXAMPLE An instance of Styled_element may assign a blue colour to a circle. An instance of Over_riding_styled_element would override that colour by a red colour.
EXPRESS specification:
*)
ENTITY Over_riding_styled_element
SUBTYPE OF (Styled_element);
over_ridden_element : Styled_element;
END_ENTITY;
(*
Attribute definitions:
over_ridden_element: the Styled_element whose visual characteristics are over-ridden.
EXPRESS specification:
*)
ENTITY Planar_box
SUBTYPE OF (Detailed_geometric_model_element);
size_in_x : length_measure;
size_in_y : length_measure;
placement : Axis_placement;
END_ENTITY;
(*
Attribute definitions:
size_in_x: specifies the extent in the x axis direction prior of applying the placement transformation.
size_in_y: specifies the extent in the y axis direction prior of applying the placement transformation.
placement: specifies the position and orientation of the bottom-left corner of the box.
Only specializations of Styled_element can be instantiated.
EXPRESS specification:
*)
ENTITY Styled_element
SUBTYPE OF (Representation_item);
appearance :
OPTIONAL
styled_element_appearance;
element : styled_element_target;
invisible : BOOLEAN;
END_ENTITY;
(*
Attribute definitions:
appearance: the styled_element_appearance that specifies the presentation characteristics of the Styled_element. The value of this attribute need not be specified.
element: the element to which styles are assigned.
invisible: a Boolean value that specifies whether the Styled_element is invisible.
EXPRESS specification:
*)
ENTITY Styled_model
ABSTRACT SUPERTYPE
SUBTYPE OF (Representation);
version_id :
OPTIONAL
STRING;
SELF\Representation.context_of_items : Geometric_coordinate_space;
DERIVE
styled_geometry : SET[0:?] OF Geometric_model := bag_to_set(QUERY (r <* (USEDIN(SELF\Representation.context_of_items,
'FOUNDATION_REPRESENTATION_ARM.' +
'REPRESENTATION.' + 'CONTEXT_OF_ITEMS')) |
'ELEMENTAL_GEOMETRIC_SHAPE_ARM.GEOMETRIC_MODEL' IN TYPEOF(r)));
END_ENTITY;
(*
Attribute definitions:
version_id: the string that specifies the version identifier of the Styled_model. The value of this attribute need not be specified.
context_of_items: the context of the styled Geometric_coordinate_space.
styled_geometry: the Geometric_model that contains the presented geometric information.
EXPRESS specification:
*)
ENTITY Styled_model_replication
SUBTYPE OF (Representation_item);
replicated_model : Styled_model;
source : Axis_placement;
target : geometric_mapping_target;
END_ENTITY;
(*
Attribute definitions:
replicated_model: specifies the Styled_model that is replicated.
source: the Axis_placement that specifies the origin of the replicated_model origin to be transformed.
target: the Axis_placement or Cartesian_transformation_2d or Cartesian_transformation_3d that specifies the target for the transformation.
This subclause specifies the ARM subtype constraint for this module. The subtype constraint places a constraint on the possible super-type / subtype instantiations. The ARM subtype constraint and definition is specified below.
EXPRESS specification:
*)
SUBTYPE_CONSTRAINT aa_representation_item_subtypes FOR Representation_item;
ONEOF (Styled_element,
Styled_model_replication);
END_SUBTYPE_CONSTRAINT;
(*
*)
END_SCHEMA; -- Appearance_assignment_arm
(*
© ISO 2019 — All rights reserved