Application module: Vertex colours for tessellated geometry ISO/TS 10303-1836:2019(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 definition
   4.4 ARM function definition
5 Module interpreted model
   5.1 Mapping specification
   5.2 MIM EXPRESS short listing

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

(*
ISO/TC 184/SC 4/WG 12 N9756 - ISO/TS 10303-1836 Vertex colours for tessellated geometry - EXPRESS ARM
*)



SCHEMA Vertex_colours_for_tessellated_geometry_arm;

USE FROM Appearance_assignment_arm;    -- ISO/TS 10303-1001

USE FROM Tessellated_geometry_arm;    -- ISO/TS 10303-1819


TYPE colour_type_enum = ENUMERATION OF
   (RGB8,
    RGBT8);
END_TYPE;

TYPE tessellated_surface_item = SELECT
   (Tessellated_face,
    Tessellated_shell,
    Tessellated_solid,
    Tessellated_surface_set);
END_TYPE;

TYPE unsigned_8_bit_integer = INTEGER;
WHERE
  WR1: { 0 <= SELF <= 255 };
END_TYPE;

ENTITY Styled_tessellated_element_with_colours
  SUBTYPE OF (Styled_element);
  SELF\Styled_element.element : tessellated_surface_item;
  colour_type : colour_type_enum;
  colour_values : LIST[1:?] OF LIST[3:4] OF unsigned_8_bit_integer;
DERIVE
  coloured_coordinate_values : Coordinates_list := get_coordinate_values(element);
WHERE
  WR1: NOT EXISTS(SELF\styled_element.appearance);
  WR2: ((colour_type = RGB8) AND (SIZEOF(QUERY(clist <* SELF.colour_values | NOT (SIZEOF(clist) = 3)))= 0)) OR ((colour_type = RGBT8) AND (SIZEOF(QUERY(clist <* SELF.colour_values | NOT (SIZEOF(clist) = 4)))= 0));
  WR3: SIZEOF(colour_values) = coloured_coordinate_values.npoints;
  WR4: SELF\styled_element.invisible = FALSE;
END_ENTITY;

FUNCTION get_coordinate_values
 (input : tessellated_surface_item) : Coordinates_list;
RETURN(?);
END_FUNCTION;

END_SCHEMA;  -- Vertex_colours_for_tessellated_geometry_arm


© ISO 2019 — All rights reserved