Примечание - На рисунке 22 - расстояние между двумя точками кривой, а - длина дуги, соединяющей две точки.
287 × 234 пикс.   Открыть в новом окне |
Рисунок 22 - Самопересекающаяся кривая
EXPRESS-спецификация:
*) |
ENTITY self_intersecting_curve |
SUBTYPE OF(self_intersecting_geometry); |
SELF\shape_data_quality_criterion.assessment_specification : |
shape_data_quality_assessment_by_logical_test; |
arc_length_separation_factor: REAL; |
interference_tolerance: length_measure; |
WHERE |
WR1 : validate_measured_data_type(SELF, |
'SHAPE_DATA_QUALITY_INSPECTION_RESULT_SCHEMA.BOOLEAN_VALUE'); |
WR2 : validate_inspected_elements_type(SELF, |
['GEOMETRY_SCHEMA.CURVE']); |
WR3 : validate_locations_of_extreme_value_type(SELF, |
['GEOMETRY_SCHEMA.POINT_ON_CURVE', |
'GEOMETRY_SCHEMA.POINT_ON_CURVE']); |
WR4 : validate_accuracy_types(SELF, |
['MEASURE_SCHEMA.LENGTH_MEASURE']); |
END_ENTITY; |
(* |
Определения атрибутов
SELF\shape_data_quality_criterion.assessment_specification - объектshape_data_quality_assessment_by_logical_test, который задает проверку наличия пересечения, что соответствует значению 'TRUE', или его отсутствия;
arc_length_separation_factor - фактор, который используется для умножения на значение атрибута interference_tolerance для того, чтобы определить, является ли длина дуги кривой между точками достаточной;
interference_tolerance - допуск, используемый при проверке совпадения точек.
Формальные положения
WR1: Атрибут representative_measured_value объектаshape_data_quality_inspection_criterion_report, атрибут measured_value объектаshape_data_quality_inspection_instance_report_item и атрибуты measured_value всех объектов extreme_instance, на которые ссылается объектinstance_report_item_with_extreme_instances, во всех экземплярах, связанных с настоящим объектом, должны иметь значение типа boolean_value (булево значение).
WR2: Все объекты, играющие роль атрибута inspected_elements во всех экземплярах объекта shape_data_quality_inspection_instance_report_item, связанных с настоящим объектом, должны быть объектами типа curve.
WR3: Во всех объектах instance_report_item_with_extreme_instances, связанных с настоящим объектом, во всех объектах типа extreme_instance, на которые ссылается объектinstance_report_item_with_extreme_instances, объекты, на которые ссылается атрибутlocations_of_extreme_value, должны быть двумя объектами типа point_on_curve. Это показывает, что в этих двух точках кривая самопересекается в пределах допуска.
WR4: Если для данного измерения задана точность, то значение атрибута range должно быть значением типа length_measure (мера длины).
7.4.49 Объект self_intersecting_surface
Объект self_intersecting_surface представляет утверждение, что в пределах области определения поверхности существует самопересечение. Согласно требованию к измерению, соответствующему настоящему объекту, необходимо выполнить измерение, обнаруживающее точки на кривой, значение расстояния между которыми не превышает значения атрибутаinterference_tolerance, а геодезическое линейное расстояние между ними больше, чем значение, получаемое в результате умножения значения атрибута interference_tolerance на значение атрибута arc_length_distance_factor. В случае замкнутой поверхности пары точек, расстояние которых от границы поверхности, измеренное вдоль дуги изопараметрической кривой, не превышает значения атрибута interference_tolerance, исключаются из проверки. При выполнении проверки замкнутой поверхностью считается поверхность, у которой в направлении хотя бы одного из параметров расстояние между граничными кривыми при начальном и конечном значениях этого параметра не превышает значения атрибутаinterference_tolerance.
Примечание - На рисунке 23 - расстояние между двумя точками кривой, а - геодезическое линейное расстояние между ними.
463 × 183 пикс.   Открыть в новом окне |
Рисунок 23 - Самопересекающаяся поверхность
EXPRESS-спецификация:
*) |
ENTITY self_intersecting_surface |
SUBTYPE OF(self_intersecting_geometry); |
SELF\shape_data_quality_criterion.assessment_specification: |
shape_data_quality_assessment_by_logical_test; |
geodesic_separation_factor : REAL; |
interference_tolerance : length_measure; |
WHERE |
WR1 : validate_measured_data_type(SELF, |
'SHAPE_DATA_QUALITY_INSPECTION_RESULT_SCHEMA.BOOLEAN_VALUE'); |
WR2 : validate_inspected_elements_type(SELF, |
['GEOMETRY_SCHEMA.SURFACE']); |
WR3 : validate_locations_of_extreme_value_type(SELF, |
['GEOMETRY_SCHEMA.POINT_ON_SURFACE', |
'GEOMETRY_SCHEMA.POINT_ON_SURFACE']); |
WR4 : validate_accuracy_types(SELF, |
['MEASURE_SCHEMA.LENGTH_MEASURE']); |
END_ENTITY; |
(* |
Определения атрибутов
SELF\shape_data_quality_criterion.assessment_specification - объектshape_data_quality_assessment_by_logical_test, который задает проверку наличия пересечения, что соответствует значению 'TRUE', или его отсутствия;
geodesic_separation_factor - фактор, который используется для умножения на значение атрибута interference_tolerance для того, чтобы определить, является ли длина дуги между точками достаточной;
interference_tolerance - допуск, используемый при проверке совпадения точек.
Формальные положения
WR1: Атрибут representative_measured_value объектаshape_data_quality_inspection_criterion_report, атрибут measured_value объектаshape_data_quality_inspection_instance_report_item и атрибуты measured_value всех объектов extreme_instance, на которые ссылается объектinstance_report_item_with_extreme_instances, во всех экземплярах, связанных с настоящим объектом, должны иметь значение типа boolean_value (булево значение).
WR2: Все объекты, играющие роль атрибута inspected_elements во всех экземплярах объекта shape_data_quality_inspection_instance_report_item, связанных с настоящим объектом, должны быть объектами типа surface.
WR3: Во всех объектах instance_report_item_with_extreme_instances, связанных с настоящим объектом, во всех объектах типа extreme_instance, на которые ссылается объектinstance_report_item_with_extreme_instances, объекты, на которые ссылается атрибутlocations_of_extreme_value, должны быть двумя объектами типа point_on_curve. Это показывает, что в этих двух точках поверхность самопересекается в пределах допуска.
WR4: Если для данного измерения задана точность, то значение атрибута value_componentдолжно быть значением типа length_measure (мера длины).
7.4.50 Объект nearly_degenerate_geometry
Объект nearly_degenerate_geometry является таким подтипом объекта inapt_geometry, который является супертипом для критериев, используемых для обнаружения геометрических данных, близких к вырождению.
EXPRESS-спецификация:
*) |
ENTITY nearly_degenerate_geometry |
ABSTRACT SUPERTYPE OF (ONEOF( |
small_area_surface, |
short_length_curve, |
entirely_narrow_surface)) |
SUBTYPE OF(inapt_geometry); |
END_ENTITY; |
(* |
7.4.51 Объект short_length_curve
Объект short_length_curve представляет утверждение, что длина дуги кривой меньше предельного значения. Согласно требованию к измерению, соответствующему настоящему объекту, необходимо выполнить измерение, включающее вычисление значения длины дуги кривой. Полученное значение длины при оценке должно сравниваться с заданным предельным значением.
EXPRESS-спецификация:
*) |
ENTITY short_length_curve |
SUBTYPE OF(nearly_degenerate_geometry); |
SELF\shape_data_quality_criterion.assessment_specification : |
shape_data_quality_assessment_by_numerical_test; |
WHERE |
WR1 : ('SHAPE_DATA_QUALITY_CRITERIA_SCHEMA.'+ |
'SHAPE_DATA_QUALITY_UPPER_VALUE_LIMIT' |
IN TYPEOF(SELF\shape_data_quality_criterion. |
assessment_specification.threshold)) |
AND ('MEASURE_SCHEMA.LENGTH_MEASURE' |
IN value_limit_type(SELF\shape_data_quality_criterion. |
assessment_specification.threshold)); |
WR2 : validate_measured_data_type(SELF, |
'MEASURE_SCHEMA.LENGTH_MEASURE'); |
WR3 : validate_inspected_elements_type(SELF, |
['GEOMETRY_SCHEMA.CURVE']); |
WR4: validate_locations_of_extreme_value_type(SELF, |
[]); |
WR5 : validate_accuracy_types(SELF, |
['MEASURE_SCHEMA.LENGTH_MEASURE']); |
END_ENTITY; |
(* |
Определение атрибута
SELF\shape_data_quality_criterion.assessment_specification - объектshape_data_quality_assessment_by_numerical_test, который задает проверку длины дуги кривой и сравнение с заданным предельным значением.
Формальные положения
WR1: Атрибут threshold объекта, играющего роль атрибута assessment_specificationнастоящего объекта, должен в качестве значения иметь объект типаshape_data_quality_upper_value_limit, атрибут value_component которого должен быть экземпляром данных типа length_measure (мера длины).
WR2: Атрибут representative_measured_value объектаshape_data_quality_inspection_criterion_report и атрибут measured_value объектаshape_data_quality_inspection_instance_report_item во всех экземплярах, связанных с настоящим объектом, должны иметь значение типа length_measure (мера длины).
WR3: Все объекты, играющие роль атрибута inspected_elements во всех экземплярах объекта shape_data_quality_inspection_instance_report_item, связанных с настоящим объектом, должны быть объектами типа curve.
WR4: Объект shape_data_quality_inspection_instance_report_item, связанный с настоящим объектом, не должен быть объектом типаinstance_report_item_with_extreme_instances.
WR5: Если для данного измерения задана точность, то значение атрибута value_componentдолжно быть значением типа leng_thmeasure (мера длины).
7.4.52 Объект small_area_surface
Объект small_area_surface представляет утверждение, что площадь поверхности слишком мала. Согласно требованию к измерению, соответствующему настоящему объекту, необходимо выполнить измерение, при котором должна быть вычислена площадь поверхности. Полученное значение площади при оценке должно сравниваться с заданным предельным значением. Поверхности с бесконечной площадью при вычислении площади игнорируются.
EXPRESS-спецификация:
*) |
ENTITY small_area_surface |
SUBTYPE OF(nearly_degenerate_geometry); |
SELF\shape_data_quality_criterion.assessment_specification: |
shape_data_quality_assessment_by_numerical_test; |
WHERE |
WR1 : ('SHAPE_DATA_QUALITY_CRITERIA_SCHEMA.' + |
'SHAPE_DATA_QUALITY_UPPER_VALUE_LIMIT' |
IN TYPEOF(SELF\shape_data_quality_criterion. |
assessment_specification.threshold)) |
AND ('MEASURE_SCHEMA.AREA_MEASURE' |
IN value_limit_type(SELF\shape_data_quality_criterion. |
assessment_specification.threshold)); |
WR2 : validate_measured_data_type(SELF, |
'MEASURE_SCHEMA.AREA_MEASURE'); |
WR3 : validate_inspected_elements_type(SELF, |
['GEOMETRY_SCHEMA.SURFACE']); |
WR4 : validate_locations_of_extreme_value_type(SELF, |
[]); |
WR5 : validate_accuracy_types(SELF, |
['MEASURE_SCHEMA.AREA_MEASURE']); |
END_ENTITY; |
(* |