(* SCHEMA step_merged_ap_schema; *)
-- IN AP238 STEP-NC
ENTITY machining_approach_retract_strategy
   SUBTYPE OF (machining_strategy);
   WHERE
      WR1:
         SELF.description IN [ 'along path', 'approach retract angle', 'approach retract tangent', 'plunge helix', 'plunge ramp', 'plunge toolaxis', 'plunge zigzag' ];
      WR2:
         verify_optional_action_property(SELF, 'tool orientation') AND verify_rep_item_for_action_property(SELF, 'tool orientation', [ 'STEP_MERGED_AP_SCHEMA.DIRECTION' ]);
      WR3:
         NOT (SELF.description = 'along path') OR (1 <= get_count_of_relating_amr(SELF, [ 'STEP_MERGED_AP_SCHEMA.MACHINING_TOOLPATH_SEQUENCE_RELATIONSHIP' ])) AND verify_related_type_for_amr(SELF, [ 'STEP_MERGED_AP_SCHEMA.MACHINING_TOOLPATH_SEQUENCE_RELATIONSHIP' ], [ 'STEP_MERGED_AP_SCHEMA.MACHINING_TOOLPATH' ]);
      WR4:
         NOT (SELF.description = 'approach retract angle') OR ((verify_required_action_property(SELF, 'travel angle') AND verify_angle_measure_action_property(SELF, 'travel angle')) AND verify_required_action_property(SELF, 'travel length')) AND verify_length_measure_action_property(SELF, 'travel length');
      WR5:
         NOT (SELF.description = 'approach retract tangent') OR verify_required_action_property(SELF, 'travel radius') AND verify_length_measure_action_property(SELF, 'travel radius');
      WR6:
         NOT (SELF.description IN [ 'plunge helix', 'plunge ramp', 'plunge zigzag' ]) OR verify_required_action_property(SELF, 'plunge angle') AND verify_angle_measure_action_property(SELF, 'plunge angle');
      WR7:
         NOT (SELF.description = 'plunge helix') OR verify_required_action_property(SELF, 'plunge radius') AND verify_length_measure_action_property(SELF, 'plunge radius');
      WR8:
         NOT (SELF.description = 'plunge zigzag') OR verify_required_action_property(SELF, 'plunge width') AND verify_length_measure_action_property(SELF, 'plunge width');
END_ENTITY;
  | 
Generated by STEP Tools® EXPRESS to HTML Converter
2020-07-28T17:02:16-04:00