(* SCHEMA associative_draughting; *)
ENTITY geometrically_bounded_2d_wireframe_representation
SUBTYPE OF (shape_representation);
WHERE
wr1: SELF.context_of_items\geometric_representation_context.
coordinate_space_dimension = 2;
wr2: SIZEOF(QUERY ( item <* SELF.items | (NOT (SIZEOF(TYPEOF(item) *
['ASSOCIATIVE_DRAUGHTING.GEOMETRIC_CURVE_SET',
'ASSOCIATIVE_DRAUGHTING.AXIS2_PLACEMENT_2D',
'ASSOCIATIVE_DRAUGHTING.MAPPED_ITEM']) = 1)) )) = 0;
wr3: SIZEOF(QUERY ( item <* SELF.items | (SIZEOF(TYPEOF(item) * [
'ASSOCIATIVE_DRAUGHTING.GEOMETRIC_CURVE_SET',
'ASSOCIATIVE_DRAUGHTING.MAPPED_ITEM']) = 1) )) >= 1;
wr4: SIZEOF(QUERY ( mi <* QUERY ( item <* SELF.items | (
'ASSOCIATIVE_DRAUGHTING.MAPPED_ITEM' IN TYPEOF(item)) ) | (
NOT (('ASSOCIATIVE_DRAUGHTING.' +
'GEOMETRICALLY_BOUNDED_2D_WIREFRAME_REPRESENTATION') IN
TYPEOF(mi\mapped_item.mapping_source.mapped_representation)))
)) = 0;
wr5: SIZEOF(QUERY ( gcs <* QUERY ( item <* SELF.items | (
'ASSOCIATIVE_DRAUGHTING.GEOMETRIC_CURVE_SET' IN TYPEOF(item)) )
| (NOT (SIZEOF(QUERY ( elem <* gcs\geometric_set.elements
| (NOT (SIZEOF(TYPEOF(elem) * [
'ASSOCIATIVE_DRAUGHTING.B_SPLINE_CURVE',
'ASSOCIATIVE_DRAUGHTING.CIRCLE',
'ASSOCIATIVE_DRAUGHTING.COMPOSITE_CURVE',
'ASSOCIATIVE_DRAUGHTING.ELLIPSE',
'ASSOCIATIVE_DRAUGHTING.OFFSET_CURVE_2D',
'ASSOCIATIVE_DRAUGHTING.POINT',
'ASSOCIATIVE_DRAUGHTING.POLYLINE',
'ASSOCIATIVE_DRAUGHTING.TRIMMED_CURVE']) = 1)) )) = 0)) )) =
0;
wr6: SIZEOF(QUERY ( gcs <* QUERY ( item <* SELF.items | (
'ASSOCIATIVE_DRAUGHTING.GEOMETRIC_CURVE_SET' IN TYPEOF(item)) )
| (NOT (SIZEOF(QUERY ( crv <* QUERY ( elem <* gcs\
geometric_set.elements | ('ASSOCIATIVE_DRAUGHTING.CURVE' IN
TYPEOF(elem)) ) | (NOT valid_basis_curve_in_2d_wireframe(crv,
'ASSOCIATIVE_DRAUGHTING')) )) = 0)) )) = 0;
wr7: SIZEOF(QUERY ( gcs <* QUERY ( item <* SELF.items | (
'ASSOCIATIVE_DRAUGHTING.GEOMETRIC_CURVE_SET' IN TYPEOF(item)) )
| (NOT (SIZEOF(QUERY ( pnt <* QUERY ( elem <* gcs\
geometric_set.elements | ('ASSOCIATIVE_DRAUGHTING.POINT' IN
TYPEOF(elem)) ) | (NOT (SIZEOF(TYPEOF(pnt) * [
'ASSOCIATIVE_DRAUGHTING.CARTESIAN_POINT',
'ASSOCIATIVE_DRAUGHTING.POINT_ON_CURVE']) = 1)) )) = 0)) ))
= 0;
wr8: SIZEOF(QUERY ( gcs <* QUERY ( item <* SELF.items | (
'ASSOCIATIVE_DRAUGHTING.GEOMETRIC_CURVE_SET' IN TYPEOF(item)) )
| (NOT (SIZEOF(QUERY ( pl <* QUERY ( elem <* gcs\
geometric_set.elements | ('ASSOCIATIVE_DRAUGHTING.POLYLINE'
IN TYPEOF(elem)) ) | (NOT (SIZEOF(pl\polyline.points) > 2)) ))
= 0)) )) = 0;
END_ENTITY; -- geometrically_bounded_2d_wireframe_representation
|
Generated by STEP Tools® EXPRESS to HTML Converter
2012-03-27T17:14:12-04:00