ГОСТ Р ИСО 10303-510—2006
Пример
—
Для задания радиуса уела у детали должна использоват ься дуга окружност и, которая
представляет ся с помощ ью объекта geometrically_bounded_wlreframe_shape_representatlon. Дуга пред
ставляется отрезком линии (объект trlmmed_curve). базовой линией которой (объект basls_curve)
являет ся окружност ь (объект circle).
EXPRESS спецификация
*)
ENTITY geomotrically_bounded_wireframe_shape_representation
SUBTYPE OF (shape_representat»on).
WHERE
WR1: SIZEOF (QUERY (it <* SELF.items |
NOT (SIZEOF (TYPEOF(it) *
[’AIC_GEOMETRICALLY_BOUNDED_WIREFRAME.GEOMETRIC_CURVE_SET\
’AIC_GEOMETRICALLY_BOUNDED_WIREFRAME.AXIS2_PLACEMENT_3D\
’AIC_GEOMETRICALLY_BOUNDED_WIREFRAME.MAPPEDJTEM’]) = 1)
))=
0
;
WR2. SIZEOF (QUERY (it <* SELF.items |
SIZEOF (TYPEOF (it)*
[’AIC_GEOMETRICALLY_BOUNDED_WIREFRAME.GEOMETRIC_CURVE_SET\
’AIC_GEOMETRICALLY_BOUNDED WIREFRAME.MAPPED_ITEW])= 1
))>=
1
;
WR3. SIZEOF (QUERY (gcs <* QUERY (it<* SELF.items |
(•AIC_GEOMETRICALLY_BOUNDED_WIREFRAME.GEOMETRIC_CURVE_SET
IN TYPEOF (it))) | NOT (SIZEOF (QUERY (crv <*
QUERY (elem <* gcsVgeometric_set.elements |
(’AIC_GEOMETRICALLY_BOUNDED_WIREFRAME.CURVE’ IN TYPEOF
(elem))) |
NOT (valid_geometrically_bounded_wf_curve(crv))
)) =
0
)
» =
0
;
WR4: SIZEOF (QUERY (gcs <* QUERY (it <* SELF.items |
(‘AIC_GEOMETRICALLY_BOUNDED_WIREFRAME.GEOMETRIC_CURVE_SET
INTYPEOF (it))) |NOT (SIZEOF (QUERY (pnts <*
QUERY (elem <* gcs\geometric_set.elements |
f AIC_GEOMETRICALLY_BOUNDED_WIREFRAME.POINT INTYPEOF (elem)))|
NOT (valid_geometrically bounded_wf_point(pnts))
)) =
0
)
)) =
0
:
WR5: SIZEOF (QUERY (gcs <* QUERY (it<* SELF.items |
(‘AIC_GEOMETRICALLY_BOUNDED_WIREFRAME.GEOMETRIC_CURVE_SET
IN TYPEOF (it))) |NOT (SIZEOF (QUERY (cnc <*
QUERY (elem <*gcs\geometric_set.elements |
(•AIC GEOMETRICALLY_BOUNDED_WIREFRAME.CONIC IN TYPEOF (elem)))
|NOT(’AIC_GEOMETRICALLY_BOUNDED_WIREFRAME.AXIS2_PLACEMENT_3D’
IN TYPEOF (cncVconic.position))
)) =
0
)
)) =
0
;
WR6: SIZEOF (QUERY (gcs <* QUERY (it<* SELF.items |
(AIC_GEOMETRICALLY BOUNDED_WIREFRAME.GEOMETRIC_CURVE_SET
IN TYPEOF (it))) | NOT (SiZEOF (QUERY (pline <*
QUERY (elem <*gcs\geometric_set.elements |
CAIC_GEOMETRICALLY_BOUNDED_WIREFRAME.POLYLINE- INTYPEOF (elem)» |
NOT(SIZEOF (pline\polyline.points) >2)
)) =
0
)
)) =
0
;
WR7. SIZEOF (QUERY (mi<* QUERY (it <* SELF.items |
(•AIC_GEOMETRICALLY_BOUNDED_WIREFRAME.MAPPED_ITEM‘
4