Application module: Composite surface ISO/TS 10303-1525: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 definition
   4.3 ARM entity definitions
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

4 Information requirements

This clause specifies the information requirements for the Composite surface 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 Composite_surface_arm schema and identifies the necessary external references.

EXPRESS specification:

*)
SCHEMA Composite_surface_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 B_spline_geometry_arm;    --  ISO/TS 10303-1801
(*

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

Basic_geometry_arm ISO/TS 10303-1652
B_spline_geometry_arm ISO/TS 10303-1801

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

4.2 ARM type definition

This subclause specifies the ARM type for this application module. The ARM type and definition is specified below.

4.2.1 surface_transition_code   EXPRESS-G

The surface_transition_code conveys the continuity properties of a composite surface. The continuity referred to is geometric, not parametric continuity.

EXPRESS specification:

*)
TYPE surface_transition_code = ENUMERATION OF
   (discontinuous,
    continuous,
    cont_same_gradient,
    cont_same_gradient_same_curvature);
END_TYPE;
(*

Enumerated item definitions:

discontinuous: the patches do not join. This is permitted only at the boundary of the surface to indicate that it is not closed.

continuous: the patches join, but no condition on their tangents is implied.

cont_same_gradient: the patches join, their tangent planes are parallel and have the same direction at the joint.

NOTE    Equality of derivatives is not required.

cont_same_gradient_same_curvature: the principal curvatures of the surface are the same for the adjacent patches and the principal directions are coincident along the common boundary.

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 Rectangular_composite_surface   EXPRESS-GMapping table

A Rectangular_composite_surface is a type of Bounded_surface composed of a rectangular array of n_u by n_v segments or patches. Each segment shall be finite and topologically rectangular (i.e., it corresponds to a rectangle in parameter space). The segment shall be either a B_spline_surface or a Trimmed_surface. There shall be at least positional continuity between adjacent segments in both directions. The composite surface may be open or closed in the u direction and open or closed in the v direction.

NOTE    The full semantics of this entity are defined in the corresponding MIM object which has a complete definition of the parametrisation of the surface and additional constaints, verified by a function, to ensure that each patch references either a B_spline_surface or a Trimmed_surface and that a discontinuous transition can only occur on a boundary of the Rectangular_composite_surface.

EXPRESS specification:

*)
ENTITY Rectangular_composite_surface
  SUBTYPE OF (Bounded_surface);
  segments : LIST[1:?] OF LIST[1:?] OF Surface_patch;
DERIVE
  n_u : INTEGER := SIZEOF(segments);
  n_v : INTEGER := SIZEOF(segments[1]);
WHERE
  WR1: SIZEOF(QUERY (s <* segments | n_v <> SIZEOF (s))) = 0;
END_ENTITY;
(*

Attribute definitions:

segments: rectangular array (represented by a list of list) of component surface patches. Each such patch contains information on the senses and transitions.

n_u: a derived attribute defining the number of patches in the u parameter direction.

n_v: a derived attribute defining the number of patches in the v parameter direction.

Formal propositions:

WR1: each sub-list in the segments list shall contain n_v Surface_patches.

4.3.2 Surface_patch   EXPRESS-GMapping table

A Surface_patch is a Bounded_surface with additional transition and sense data suitable for use as part of a composite surface. Its parameter range is a rectangle in (u,v) space.

EXPRESS specification:

*)
ENTITY Surface_patch;
  parent_surface : Bounded_surface;
  u_transition : surface_transition_code;
  v_transition : surface_transition_code;
  u_sense : BOOLEAN;
  v_sense : BOOLEAN;
INVERSE
  using_surfaces : BAG[1:?] OF Rectangular_composite_surface FOR segments;
END_ENTITY;
(*

Attribute definitions:

parent_surface: the Bounded_surface defining the geometry of the patch.

u_transition: the minimum state of geometric continuity along the second u boundary of the patch as it joins its neighbour in a composite surface.

v_transition: the minimum state of geometric continuity along the second v boundary of the patch as it joins its neighbour in a composite surface.

u_sense: the relationship between the sense (increasing u parameter) of the patch and the sense of the parent_surface.

v_sense: the relationship between the sense (increasing v parameter) of the patch and the sense of the parent_surface.

using_surfaces: the unordered set of Rectangular_composite_surfaces which use this Surface_patch in their definition. At least one Rectangular_composite_surface shall be required for using_surfaces.

4.3.3 Trimmed_surface   EXPRESS-GMapping table

A Trimmed_surface is a type of Bounded_surface in which the boundaries are the constant parametric lines u1 = u1, u2 = u2, v1 = v1 and v2 = v2. All these values shall be within the parametric range of the referenced surface.

NOTE 1   Cyclic properties of the parameter range are assumed.

EXAMPLE    370 degrees is equivalent to 10 degrees for those surfaces whose parametric form is defined using circular functions (sine and cosine).

The Trimmed_surface inherits its parametrisation directly from the basis surface and has parameter ranges from 0 to mod(u2 - u1) and 0 to mod(v2-v1).

NOTE 2   If the surface is closed in a given parametric direction, the values of u2 or v2 may require to be increased by the cyclic range.

EXPRESS specification:

*)
ENTITY Trimmed_surface
  SUBTYPE OF (Bounded_surface);
  basis_surface : Surface;
  u1 : parameter_value;
  u2 : parameter_value;
  v1 : parameter_value;
  v2 : parameter_value;
  usense : BOOLEAN;
  vsense : BOOLEAN;
WHERE
  WR1: u1 <> u2;
  WR2: v1 <> v2;
END_ENTITY;
(*

Attribute definitions:

basis_surface: the Surface being trimmed.

u1: the first u parameter value defining a boundary of the Trimmed_surface.

u2: the second u parameter value defining a boundary of the Trimmed_surface.

v1: the first v parameter value defining a boundary of the Trimmed_surface.

v2: the second v parameter value defining a boundary of the Trimmed_surface.

usense: flag to indicate whether the direction of the first parameter of the Trimmed_surface agrees with or opposes the sense of u in the basis_surface.

vsense: flag to indicate whether the direction of the second parameter of the Trimmed_surface agrees with or opposes the sense of u in the basis_surface.

Formal propositions:

WR1: u1 and u2 shall have different values.

WR2: v1 and v2 shall have different values.

Informal propositions:

IP1: with the exception of those surfaces closed in the u parameter direction, usense shall be compatible with the ordered parameter values for u.

IP2: with the exception of those surfaces closed in the v parameter direction, vsense shall be compatible with the ordered parameter values for v.



*)
END_SCHEMA;  -- Composite_surface_arm
(*


© ISO 2018 — All rights reserved