ISO 10303-42:2000/Cor 1:2001
(Corrigendum)Industrial automation systems and integration - Product data representation and exchange - Part 42: Integrated generic resource: Geometric and topological representation - Technical Corrigendum 1
Industrial automation systems and integration - Product data representation and exchange - Part 42: Integrated generic resource: Geometric and topological representation - Technical Corrigendum 1
Systèmes d'automatisation industrielle et intégration — Représentation et échange de données de produits — Partie 42: Ressource générique intégrée: Représentation géométrique et topologique — Rectificatif technique 1
General Information
Relations
Frequently Asked Questions
ISO 10303-42:2000/Cor 1:2001 is a standard published by the International Organization for Standardization (ISO). Its full title is "Industrial automation systems and integration - Product data representation and exchange - Part 42: Integrated generic resource: Geometric and topological representation - Technical Corrigendum 1". This standard covers: Industrial automation systems and integration - Product data representation and exchange - Part 42: Integrated generic resource: Geometric and topological representation - Technical Corrigendum 1
Industrial automation systems and integration - Product data representation and exchange - Part 42: Integrated generic resource: Geometric and topological representation - Technical Corrigendum 1
ISO 10303-42:2000/Cor 1:2001 is classified under the following ICS (International Classification for Standards) categories: 25.040.40 - Industrial process measurement and control. The ICS classification helps identify the subject area and facilitates finding related standards.
ISO 10303-42:2000/Cor 1:2001 has the following relationships with other standards: It is inter standard links to ISO 10303-42:2000, ISO 10303-42:2003; is excused to ISO 10303-42:2000. Understanding these relationships helps ensure you are using the most current and applicable version of the standard.
You can purchase ISO 10303-42:2000/Cor 1:2001 directly from iTeh Standards. The document is available in PDF format and is delivered instantly after payment. Add the standard to your cart and complete the secure checkout process. iTeh Standards is an authorized distributor of ISO standards.
Standards Content (Sample)
INTERNATIONAL STANDARD ISO 10303-42:2000
TECHNICAL CORRIGENDUM 1
Published 2001-04-01
INTERNATIONAL ORGANIZATION FOR STANDARDIZATION � МЕЖДУНАРОДНАЯОРГАНИЗАЦИЯПОСТАНДАРТИЗАЦИИ � ORGANISATION INTERNATIONALE DE NORMALISATION
Industrial automation systems and integration — Product data
representation and exchange —
Part 42:
Integrated generic resource: Geometric and topological
representation
TECHNICAL CORRIGENDUM 1
Systèmes d'automatisation industrielle et intégration — Représentation et échange de données de produits —
Partie 42: Ressource générique intégrée: Représentation géométrique et topologique
RECTIFICATIF TECHNIQUE 1
Technical Corrigendum 1 to International Standard ISO 10303-42:2000 was prepared by Technical Committee
ISO/TC 184, Industrial automation systems and integration, Subcommittee SC 4, Industrial data.
Introduction
This Technical Corrigendum corrects ISO 10303-42:2000, Industrial automation systems and integration —
Product data representation and exchange — Part 42: Integrated generic resource: Geometric and topological
representation.
The purpose of the modifications to the text of ISO 10303-42:1994 is to correct errors in the EXPRESS definitions
likely to cause compilation problems, to replace the URL in the annex for the computer-interpretable EXPRESS,
and to replace the object identifier for the document and the applicable schema.
ICS 25.040.40 Ref. No. ISO 10303-42:2000/Cor.1:2001(E)
Printed in Switzerland
ISO 10303-42:2000/Cor.1:2001(E)
Modifications to the text of ISO 10303-42:2000
Clause 4.4.64, p. 98
The EXPRESS specification of surface_of_revolution contains an error in the DERIVE statement. The
usage here of dummy_gri is not supported by all compilers. Remove the EXPRESS specification and
replace with the following:
EXPRESS specification:
*)
ENTITY surface_of_revolution
SUBTYPE OF (swept_surface);
axis_position : axis1_placement;
DERIVE
axis_line : line := representation_item(’’)||
geometric_representation_item()|| curve()||
line(axis_position.location, representation_item(’’)||
geometric_representation_item()||
vector(axis_position.z, 1.0));
END_ENTITY;
(*
Clause 4.6.10, p. 151
The EXPRESS specification of function first_proj_axis does not provide a valid result when called with
z_axis in the direction [-1,0,0] and arg defaulted. Replace the second sentence of the description with:
With arg defaulted the result is the projection of [1,0,0] onto this plane; except that, if z_axis = [1,0,0],
or, z_axis = [-1,0,0], [0,1,0] is the default for arg.
Remove the EXPRESS specification and replace with the following:
EXPRESS specification:
*)
FUNCTION first_proj_axis(z_axis, arg : direction) : direction;
LOCAL
x_axis : direction;
v : direction;
z : direction;
x_vec : vector;
END_LOCAL;
IF (NOT EXISTS(z_axis)) THEN
RETURN (?) ;
ELSE
2c ISO 2001– All rights reserved
ISO 10303-42:2000/Cor.1:2001(E)
z := normalise(z_axis);
IF NOT EXISTS(arg) THEN
IF ((z.direction_ratios <> [1.0,0.0,0.0]) AND
(z.direction_ratios <> [-1.0,0.0,0.0])) THEN
v := dummy_gri || direction([1.0,0.0,0.0]);
ELSE
v := dummy_gri || direction([0.0,1.0,0.0]);
END_IF;
ELSE
IF (arg.dim <> 3) THEN
RETURN (?) ;
END_IF;
IF ((cross_product(arg,z).magnitude) = 0.0) THEN
RETURN (?);
ELSE
v := normalise(arg);
END_IF;
END_IF;
x_vec := scalar_times_vector(dot_product(v, z), z);
x_axis := vector_difference(v, x_vec).orientation;
x_axis := normalise(x_axis);
END_IF;
RETURN(x_axis);
END_FUNCTION;
(*
Clause 4.6.29, p. 171
The EXPRESS specification of the function list_to_array omits the array dimensions for the return vari-
able. Remove the EXPRESS specification and replace with the following:
EXPRESS specification:
*)
FUNCTION list_to_array(lis : LIST [0:?] OF GENERIC : T;
low,u : INTEGER) : ARRAY [low:u] OF GENERIC : T;
LOCAL
n : INTEGER;
res : ARRAY [low:u] OF GENERIC : T;
END_LOCAL;
n := SIZEOF(lis);
IF (n <> (u-low +1)) THEN
RETURN(?);
ELSE
res := [lis[1] : n];
REPEAT i := 2 TO n;
res[low+i-1] := lis[i];
END_REPEAT;
RETURN(res);
c ISO 2001– All rights reserved 3
ISO 10303-42:2000/Cor.1:2001(E)
END_IF;
END_FUNCTION;
(*
Clause 4.6.30, p. 172
The EXPRESS specification of the function make_array_of_array omits the array dimensions for the
return variable. Remove the EXPRESS specification and replace with the following:
EXPRESS specification:
*)
FUNCTION make_array_of_array(lis : LIST[1:?] OF LIST [1:?] OF GENERIC : T;
low1, u1, low2, u2 : INTEGER):
ARRAY [low1:u1] OF ARRAY [low2:u2] OF GENERIC : T;
LOCAL
res : ARRAY[low1:u1] OF ARRAY [low2:u2] OF GENERIC : T;
END_LOCAL;
(* Check input dimensions for consistency *)
IF (u1-low1+1) <> SIZEOF(lis) THEN
RETURN (?);
END_IF;
IF (u2 - low2+1)<> SIZEOF(lis[1]) THEN
RETURN (?) ;
END_IF;
(* Initialise res with values from lis[1] *)
res := [list_to_array(lis[1], low2, u2) : (u1-low1 + 1)];
REPEAT i := 2 TO HIINDEX(lis);
IF (u2-low2+1) <> SIZEOF(lis[i]) THEN
RETURN (?);
END_IF;
res[low1+i-1] := list_to_array(lis[i], low2, u2);
END_REPEAT;
RETURN (res);
END_FUNCTION;
(*
Clause 4.6.31, p. 173
The EXPRESS specification of the function make_array_of_array_of_array omits the array dimensions
for the return variable. Remove the EXPRESS specification and replace with the following:
EXPRESS specification:
*)
FUNCTION make_array_of_array_of_array(lis: LIST[1:?] OF
LIST [1:?] OF LIST [1:?] OF GENERIC : T;
4c ISO 2001– All rights reserved
ISO 10303-42:2000/Cor.1:2001(E)
low1, u1, low2, u2, low3, u3 : INTEGER):
ARRAY[low1:u1] OF ARRAY[low2:u2] OF ARRAY[low3:u3] OF GENERIC : T;
LOCAL
res : ARRAY[low1:u1] OF ARRAY [low2:u2] OF
ARRAY[low3:u3] OF GENERIC : T;
END_LOCAL;
(* Check input dimensions for consistency *)
IF (u1-low1+1) <> SIZEOF(lis) THEN
RETURN (?);
END_IF;
IF (u2-low2+1) <> SIZEOF(lis[1]) THEN
RETURN (?);
END_IF;
(* Initialise res with values from lis[1] *)
res := [make_array_of_array(lis[1], low2, u2, low3, u3) : (u1-low1 + 1)];
REPEAT i := 2 TO HIINDEX(lis);
IF (u2-low2+1) <> SIZEOF(lis[i]) THEN
RETURN (?);
END_IF;
res[low1+i-1] := make_array_of_array(lis[i], low2, u2, low3, u3);
END_REPEAT;
RETURN (res);
END_FUNCTION;
(*
Clause 6 p. 231
The EXPRESS specification of geometric_model_schema requires an additional external reference to
support the corrected definition of the box_domain and rectangle_domain entities. Remove the defini-
tion and the EXPRESS specification and replace with the following:
The following EXPRESS declaration begins the geometric_model_schema and identifies the necessary
external references.
EXPRESS specification:
*)
SCHEMA geometric_model_schema;
REFERENCE FROM geometry_schema;
REFERENCE FROM topology_schema;
REFERENCE FROM measure_schema(length_measure,
positive_length_measure,
plane_angle_measure,
plane_angle_unit,
positive_plane_angle_measure);
REFERENCE FROM representation_schema(founded_item);
(*
c ISO 2001 – All rights reserved 5
ISO 10303-42:2000/Cor.1:2001(E)
NOTE 1 - The schemas referenced above can be found in the following Parts of ISO 10303:
geometry_schema Clause 4 of this part of ISO 10303
topology_schema Clause 5 of this part of ISO 10303
measure_schema ISO 10303-41
representation_schema ISO 10303-43
NOTE 2 - See annex D, figures D.16 - D.18, for a graphical presentation of this schema.
Clause 6.4.34 p. 265
The EXPRESS specification of revolved_face_solid contains an error in the DERIVE statement. The
usage here of dummy_gri is not supported by all compilers. Remove the EXPRESS specification and
replace with the following:
EXPRESS specification:
*)
ENTITY revolved_face_solid SUBTYPE OF (swept_face_solid);
axis : axis1_placement;
angle : plane_angle_measure;
DERIVE
axis_line : line := representation_item(’’)||
geometric_representation_item()|| curve()||
line(axis.location, representation_item(’’)||
geometric_representation_item()||
vector(axis.z, 1.0));
END_ENTITY;
(*
Clause 6.4.38 p. 269
The EXPRESS specification of revolved_area_solid contains an error in the DERIVE statement. The
usage here of dummy_gri is not supported by all compilers. Remove the EXPRESS specification and
replace with the following:
EXPRESS specification:
*)
ENTITY revolved_area_solid
SUBTYPE OF (swept_area_solid);
axis : axis1_placement;
angle : plane_angle_measure;
DERIVE
axis_line : line := representation_item(’’)||
ge
...








Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.
Loading comments...