Application module: Camera view 3D ISO/TS 10303-1316:2018-11(E)
© ISO

Cover page
Table of contents
Copyright
Foreword
Introduction
1 Scope
2 Normative references
3 Terms, definitions and abbreviated terms
    3.1 Terms and definitions
    3.2 Abbreviated terms

4 Information requirements
   4.1 Required AM ARMs
   4.2 ARM type definitions
   4.3 ARM entity definitions
   4.4 ARM subtype constraint definition
5 Module interpreted model
   5.1 Mapping specification
   5.2 MIM EXPRESS short listing
     5.2.1 MIM entity definition

A MIM short names
B Information object registration
C ARM EXPRESS-G   EXPRESS-G
D MIM EXPRESS-G   EXPRESS-G
E Computer interpretable listings
F Change history
Bibliography
Index

4 Information requirements

This clause specifies the information requirements for the Camera view 3D 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 Camera_view_3d_arm schema and identifies the necessary external references.

EXPRESS specification:

*)
SCHEMA Camera_view_3d_arm;
(*

4.1 Required AM ARMs

The following EXPRESS interface statements specify the elements imported from the ARMs of other application modules.

EXPRESS specification:

*)
USE FROM Basic_geometry_arm;    --  ISO/TS 10303-1652

USE FROM Presentation_hierarchy_arm;    --  ISO/TS 10303-1330

USE FROM Colour_arm;    --  ISO/TS 10303-1002
(*

NOTE 1   The schemas referenced above are specified in the following part of ISO 10303:

Basic_geometry_arm ISO/TS 10303-1652
Presentation_hierarchy_arm ISO/TS 10303-1330
Colour_arm ISO/TS 10303-1002

NOTE 2   See Annex C, Figures C.1and C.2 for a graphical representation of this schema.

4.2 ARM type definitions

This subclause specifies the ARM types for this application module. The ARM types and definitions are specified below.

4.2.1 clipping_element   EXPRESS-G

The clipping_element type allows for the designation of the data types Plane, and Clipping_operator.

EXPRESS specification:

*)
TYPE clipping_element = SELECT
   (Plane,
    Clipping_operator);
END_TYPE;
(*

4.2.2 clipping_mode   EXPRESS-G

A clipping_mode presents the modes of clipping.

EXPRESS specification:

*)
TYPE clipping_mode = ENUMERATION OF
   (union,
    intersection);
END_TYPE;
(*

Enumerated item definitions:

union: the clipping mode is union.

intersection: the clipping mode is intersection.

4.2.3 cv3_view_element_select   EXPRESS-G

The cv3_view_element_select type is an extension of the view_element_select type. It adds the data type Model_image_3d to the list of alternate data types.

EXPRESS specification:

*)
TYPE cv3_view_element_select = SELECT BASED_ON view_element_select WITH
   (Model_image_3d);
END_TYPE;
(*

4.2.4 light_type   EXPRESS-G

A light_type presents the types of light.

EXPRESS specification:

*)
TYPE light_type = ENUMERATION OF
   (ambient,
    directional,
    spot,
    positional);
END_TYPE;
(*

Enumerated item definitions:

ambient: the light is ambient;

directional: the light is directional;

spot: the light is spot;

positional: the light is positional.

4.2.5 view_projection_type   EXPRESS-G

A view_projection_type presents the types of view projection.

EXPRESS specification:

*)
TYPE view_projection_type = ENUMERATION OF
   (central,
    parallel);
END_TYPE;
(*

Enumerated item definitions:

central: the view projection type is central.

parallel: the view projection type is parallel.

4.3 ARM entity definitions

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.

4.3.1 Camera_model_d3   EXPRESS-GMapping table

A Camera_model_d3 is a type of Detailed_geometric_model_element.

EXPRESS specification:

*)
ENTITY Camera_model_d3
  SUBTYPE OF (Detailed_geometric_model_element);
  clipping : OPTIONAL Clipping_operator;
  hidden_element_appearance : OPTIONAL Appearance_assignment;
  hidden_line_removal : OPTIONAL BOOLEAN;
  sources : OPTIONAL SET[1:?] OF Light_source;
  view_projection : view_projection_type;
  view_window : Planar_box;
WHERE
  WR1: NOT EXISTS(hidden_element_appearance) OR EXISTS(hidden_line_removal);
END_ENTITY;
(*

Attribute definitions:

clipping: specifies a role of the Clipping_operator for the Camera_model_d3. There shall exist one or more Clipping_operators for the Camera_model_d3. The value of this attribute need not be specified.

hidden_element_appearance: specifies a role of the Appearance_assignment for the Camera_model_d3. The value of this attribute need not be specified.

hidden_line_removal: specifies a logical value.

sources: specifies a role of the Light_source for the Camera_model_d3. There shall exist one or more Light_sources for the Camera_model_d3. The value of this attribute need not be specified.

view_projection: specifies a role of the view_projection_type for the Camera_model_d3.

view_window: specifies a role of the Planar_box for the Camera_model_d3.

Formal propositions:

WR1: If the hidden_line_removal is not set, then the hidden_element_appearance shall not be set as well.

4.3.2 Clipping_operator   EXPRESS-GMapping table

A Clipping_operator is a type of Detailed_geometric_model_element.

EXPRESS specification:

*)
ENTITY Clipping_operator
  SUBTYPE OF (Detailed_geometric_model_element);
  elements : SET[1:?] OF clipping_element;
  operator : clipping_mode;
END_ENTITY;
(*

Attribute definitions:

elements: specifies a role of the clipping_element for the Clipping_operator. There shall exist one or more clipping_elements for the Clipping_operator.

operator: specifies a role of the clipping_mode for the Clipping_operator.

4.3.3 Light_source   EXPRESS-GMapping table

A Light_source is a type of Detailed_geometric_model_element.

EXPRESS specification:

*)
ENTITY Light_source
  SUBTYPE OF (Detailed_geometric_model_element);
  colour : OPTIONAL Colour;
  light_type : light_type;
END_ENTITY;
(*

Attribute definitions:

colour: specifies a role of the Colour for the Light_source. The value of this attribute need not be specified.

light_type: specifies a light_type for the Light_source.

4.3.4 Model_image_3d   EXPRESS-GMapping table

A Model_image_3d is a type of Detailed_geometric_model_element.

EXPRESS specification:

*)
ENTITY Model_image_3d
  SUBTYPE OF (Detailed_geometric_model_element);
  is_displaying : presented_model_select;
  source : Camera_model_d3;
  target : Planar_box;
END_ENTITY;
(*

Attribute definitions:

is_displaying: specifies a role of the presented_model_select for the Model_image_3d.

source: specifies a role of the Camera_model_d3 for the Model_image_3d.

target: specifies a role of the Planar_box for the Model_image_3d.

4.4 ARM subtype constraint definition

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.

4.4.1 cv3d_detailed_geometric_model_element_subtypes   EXPRESS-GMapping table

The cv3d_detailed_geometric_model_element_subtypes constraint specifies a constraint that applies to instances of Detailed_geometric_model_element and enforces the rule that its subtypes Clipping_operator, Model_image_3d, Light_source and Camera_model_d3 are exclusive.

EXPRESS specification:

*)
SUBTYPE_CONSTRAINT cv3d_detailed_geometric_model_element_subtypes FOR Detailed_geometric_model_element;
  ONEOF (Clipping_operator,
         Model_image_3d,
         Light_source,
         Camera_model_d3);
END_SUBTYPE_CONSTRAINT;
(*



*)
END_SCHEMA;  -- Camera_view_3d_arm
(*


© ISO 2018 — All rights reserved