FUNCTION valid_units
(* SCHEMA integrated_cnc_schema; *)
FUNCTION valid_units (
m : measure_with_unit
) : BOOLEAN;
IF 'INTEGRATED_CNC_SCHEMA.LENGTH_MEASURE'
IN TYPEOF(m.value_component) THEN
IF derive_dimensional_exponents(m.unit_component) <>
dimensional_exponents(1, 0, 0, 0, 0, 0, 0) THEN
RETURN (FALSE);
END_IF;
END_IF;
IF 'INTEGRATED_CNC_SCHEMA.TIME_MEASURE'
IN TYPEOF(m.value_component) THEN
IF derive_dimensional_exponents(m.unit_component) <>
dimensional_exponents(0, 0, 1, 0, 0, 0, 0) THEN
RETURN (FALSE);
END_IF;
END_IF;
IF 'INTEGRATED_CNC_SCHEMA.PLANE_ANGLE_MEASURE'
IN TYPEOF(m.value_component) THEN
IF derive_dimensional_exponents(m.unit_component) <>
dimensional_exponents(0, 0, 0, 0, 0, 0, 0) THEN
RETURN (FALSE);
END_IF;
END_IF;
IF 'INTEGRATED_CNC_SCHEMA.SOLID_ANGLE_MEASURE'
IN TYPEOF(m.value_component) THEN
IF derive_dimensional_exponents(m.unit_component) <>
dimensional_exponents(0, 0, 0, 0, 0, 0, 0) THEN
RETURN (FALSE);
END_IF;
END_IF;
IF 'INTEGRATED_CNC_SCHEMA.RATIO_MEASURE'
IN TYPEOF(m.value_component)
THEN
IF derive_dimensional_exponents(m.unit_component) <>
dimensional_exponents(0, 0, 0, 0, 0, 0, 0) THEN
RETURN (FALSE);
END_IF;
END_IF;
IF 'INTEGRATED_CNC_SCHEMA.POSITIVE_LENGTH_MEASURE'
IN TYPEOF(m.value_component) THEN
IF derive_dimensional_exponents(m.unit_component) <>
dimensional_exponents(1, 0, 0, 0, 0, 0, 0) THEN
RETURN (FALSE);
END_IF;
END_IF;
IF 'INTEGRATED_CNC_SCHEMA.POSITIVE_PLANE_ANGLE_MEASURE'
IN TYPEOF(m.value_component) THEN
IF derive_dimensional_exponents(m.unit_component) <>
dimensional_exponents(0, 0, 0, 0, 0, 0, 0) THEN
RETURN (FALSE);
END_IF;
END_IF;
RETURN (TRUE);
END_FUNCTION; -- 10303-41: measure_schema
Referenced By
Defintion valid_units is references by the following definitions:
[Top Level Definitions] Generated by STEP ToolsTM EXPRESS to HTML Converter
on 2010-01-12T10:42:26-02:00