Extensible 3D (X3D)
Part 1: Architecture and base components
32 CAD geometry component
32.1 Introduction
32.1.1 Name
The name of this component is "CADGeometry". The
CADGeometry component provides X3D support for Computer-Aided Design (CAD) model
geometry. This name shall be used when
referring to this component in the COMPONENT statement (see
7.2.5.4 Component statement).
32.1.2 Overview
This clause describes the CADGeometry component of this part of ISO/IEC 19775.
This includes how 3D geometry is specified and what shapes are available.
Table 32.1 provides links to the major topics in this clause.
The CADGeometry component consists of two types of nodes: product structure
nodes and quad geometry nodes.
Together, these node types are used to describe CAD specific data representations for X3D worlds.
32.2.2 Product structure nodes
Three nodes maintain CAD structural relationships. These nodes
are, in hierarchy order:
This
hierarchy structures the file in a way that facilitates reuse of the CAD data in
different domains.
32.2.3 CAD layer relationships
The CADLayer node maintains CAD layer relationships. CAD layers are used to
visually and/or functionally organize geometric content.
32.2.4 Quad nodes
Quad nodes represent collections of planar quadrilateral polygons. The
IndexedQuadSet node specifies the vertices using
indices while the QuadSet node
specifies the vertices directly.
32.2.5 Common geometry fields
Several 3D CADGeometry nodes share common fields to describe attributes. These
fields that specify the vertex ordering and whether the shape is solid are named
ccw and solid respectively.
Common 3D geometry fields are described in 11.2.3
Common geometry fields.
The CADFace node holds the geometry representing a face of a part.
The name field specifies the name of the CADFace.
The shape field contains the Shape node providing the geometry and appearance for the face or an
LOD node containing
different detail levels of the shape. If an LOD node is provided,
each child of the LOD node shall be a single Shape of varying complexity. If the shape field contains a Transform node,
the Transform node can only contain one Shape node or else one LOD node as specified above. Thus, only one Shape is ever active at a single time.
The CADLayer node defines a hierarchy of nodes used for showing layer structure
for the CAD model.
The name field describes the content of the layer.
The children field contains all nodes defined for this layer.
The visible field specifies whether a particular child and its sub-children are visible.
If the number of values is less than the number of children, the remaining children
shall be visible.
The CADPart node is a grouping node that defines a coordinate system for
its children that is relative to the coordinate systems of its ancestors.
See 4.3.5 Transformation
hierarchy and 4.3.6
Standard units and coordinate system for a description of coordinate
systems and transformations.
The CADPart node represents the location and faces that constitute a part in
the CAD model.
The bboxCenter and bboxSize fields specify a bounding box that
encloses the children of the Part node. This is a hint that may be used
for optimization purposes. The results are undefined if the specified bounding
box is smaller than the actual bounding box of the children at any time. A default
bboxSize value, (-1, -1, -1), implies that the bounding box
is not specified and, if needed, shall be calculated by the browser. The bounding
box shall be large enough at all times to enclose the union of the group's children's
bounding boxes; it shall not include any transformations performed by the group
itself (i.e., the bounding box is defined in the local coordinate system of
the children).
The translation, rotation, scale, scaleOrientation
and center fields define a geometric 3D transformation consisting of
(in order):
a (possibly) non-uniform scale about an arbitrary point;
a rotation about an arbitrary point and axis;
a translation.
The center field specifies a translation offset from the origin of the
local coordinate system (0,0,0). The rotation field specifies a rotation
of the coordinate system. The scale field specifies a non-uniform scale
of the coordinate system. The scale field may have values that are positive, negative
(indicating a reflection), or zero. A value of zero indicates that any child
geometry shall not be displayed.
The scaleOrientation specifies a rotation of the coordinate system before
the scale (to specify scales in arbitrary orientations). The scaleOrientation
applies only to the scale operation. The translation field specifies
a translation to the coordinate system.
Given a 3-dimensional point P and Part node, P is transformed
into point P' in its parent's coordinate system by a series of intermediate
transformations. In matrix transformation notation, where C (center),
SR (scaleOrientation), T (translation), R (rotation), and
S (scale) are the equivalent transformation matrices,
P' = T * C * R * SR * S * -SR * -C * P
The following Part node:
CADPart {
center C
rotation R
scale S
scaleOrientation SR
translation T
children [...]
}
is equivalent to the nested sequence of:
CADPart {
translation T
children CADPart {
translation C
children CADPart {
rotation R
children CADPart {
rotation SR
children CADPart {
scale S
children CADPart {
rotation -SR
children CADPart {
translation -C
children [...]
}}}}}}}
The IndexedQuadSet node represents a 3D shape composed of a collection of
individual quadrilaterals (quads) as depicted in Figure 32.1. IndexedQuadSet uses the indices in its index
field to specify the vertices of each quad from the coord field. Each
quad is formed from a set of four vertices of the X3DCoordinateNode node
identified by four consecutive indices from the index field If the index
field does not contain a multiple of four coordinate values, the remaining
vertices shall be ignored.
The IndexedQuadSet node is specified in the local coordinate system and
is affected by the transformations of its ancestors. Descriptions of the
color, coord, normal, and texCoord fields are provided
in the X3DColorNode, X3DCoordinateNode,
X3DNormalNode, and
X3DTextureCoordinateNode nodes, respectively. If
values are provided for the color, normal and texCoord
fields, the values are applied in the same manner as the values from the
coord field and there shall be at least as many values as are present in the
coord field. The value of the colorPerVertex field is ignored and
always treated as TRUE. If the normal field is
not supplied, normals shall be generated as follows:
If normalPerVertex is TRUE, the normal at
each vertex shall be the average of the normals for all quads that share
that vertex.
If normalPerVertex is FALSE, the normal
at each vertex shall be perpendicular to the face for that quad.
The solid field determines whether the IndexedQuadSet is visible when viewed
from the inside. 11.2.3 Common
geometry fields provides a complete description of the solid field.
The QuadSet node represents a 3D shape that represents a collection of
individual planar quadrilaterals.
The coord field contains an
X3DCoordinateNode node that defines the 3D vertices
that define the quad. Each quad is formed from a consecutive set of four
vertices of the coordinate node. If the coordinate node does not contain a multiple
of four coordinate values, the remaining vertices
shall be ignored.
Figure 32.1 depicts a QuadSet node with two quads.
The ordering of the vertices is also shown.
Figure 32.1 — QuadSet node
The QuadSet node is specified in the local coordinate system and is
affected by the transformations of its ancestors. Descriptions of the color, coord,
normal, and texCoord fields are provided in the X3DColorNode, X3DCoordinateNode,
X3DNormalNode, and
X3DTextureCoordinateNode nodes, respectively. If values are provided for the
color, normal, and texCoord fields, there shall be at least as
many values as are present in the coord field. The value of the
colorPerVertex field is ignored and always treated as
TRUE. If the normal field is not supplied, the normal
shall be generated as perpendicular to the face for either
version of normalPerVertex.
The solid field determines whether the QuadSet is visible when viewed
from the inside. 11.2.3 Common
geometry fields provides a complete description of the solid field.
32.5 Support levels
The CADGeometry component provides two levels of support as specified in
Table 32.2.
Level 1 provides quad support.
Level 2 adds support to describe product structure and layers.
Table 32.2 — CADGeometry component support levels
Level
Prerequisites
Nodes/Features
Support
1
Core 1
Grouping 1
Rendering 1
Shape 1
IndexedQuadSet
All fields fully supported.
QuadSet
All fields fully supported.
2
Core 1
Grouping 1
Rendering 1
Shape 1
CADAssembly
All fields fully supported.
CADFace
All fields fully supported.
CADLayer
All fields fully supported.
CADPart
All fields fully supported.
"Is that how you feel?" Arthur enquired. He came nearer still, as though to hear better. But the other got into a muddle with his affirmative. He flapped an ear in staccato fashion, and Arthur hastily withdrew. Louvain had been destroyed because a crowd of wanton soldiers, who were garrisoned there, who hated the Belgians, and who had been kept within bounds with difficulty, seized on their own stupid mistake to give rein to their passions. That sounds well, doesn't it, Daddy? But I don't wish to mislead you. or not so long as they are pretty? One can't help thinking, though, 247 “I’m not worrying about Jeff.” Larry was caught by the suspicious action of their “detective” in taking the day watch while nothing occurred at night. It was characteristic of Felipa that she forgot him altogether and reread the letter, her breath coming in audible gasps. He listened in agony to the regiment on the right marching off, to the cautions and admonitions given those who were carrying off the badly-wounded, and then to Lieut. Bowersox starting off with the right of the 200th Ind. "No," answered the Lieutenant. "This is the place where we intended to get off. We were quietly getting out so as to attract no notice when you started your circus. I saw you were doing well, hiving those fellows together, so I let you go ahead, while I slipped the boys around to gather them all in. Pretty neat job for a starter, wasn't it?" "Great Scott!" gasped Si, "you couldn't be walkin' around with the side of your head knocked out. I'm astonished at you." She smiled suddenly as she finished speaking. It was a sweet smile, rather aloof, but lighting up the whole of her face with a sudden flash of youth and kindness. Richard gazed at her, half fascinated, and mumbled lamely—"you're welcome, ma'am." Suddenly Backfield's fist crashed into Realf's body, full on the mark. The wind rushed out of him as out of a bellows, and he doubled up like a screen. This time he made no effort to rise; he lay motionless, one arm thrown out stiff and jointless as a bough, while a little blood-flecked foam oozed from between his teeth. Margaret was so shocked and overpowered, that she obeyed. HoME先费看欧美一级1片
ENTER NUMBET 0018www.foline.com.cn 0471777.com.cn www.sc8zio92.com.cn www.siq491h7.com.cn b043.com.cn pacdata.com.cn www.gjuq.com.cn hhqqq.com.cn 8xlp.com.cn nczh.com.cn