Настоящий подраздел описывает групповой ресурс сущностей для булевых результатов boolean_result и трехмерных моделей, являющихся частью схемы api_abstract_schema и определенных стандартом ИСО 10303-42.
6.1.18.1 Сущность solid_model
Сущность solid_model задает полное представление номинальной формы продукта. При этом соединяются все точки внутри тела. Все точки подразделяются на находящиеся внутри тела, вне тела или на его границе.
Существует несколько различных типов представления твердотельной модели.
Спецификация на языке EXPRESS:
*)
ENTITY solid_model
SUPERTYPE OF (ONEOF ( csg_solid, swept_area_solid))
SUBTYPE OF (geometric_representation_item);
END_ENTITY;
(*
Примечание - В контексте схемы api_abstract_schema могут существовать только сущности csg_solid и swep_area_solid. Таким образом, супертипы оказываются модифицированными.
6.1.18.2 Сущность csg_solid
Сущность csg_solid - тело, представленое моделью конструктивной блочной геометрии (CSG), составлено из простейших тел, объединенных с помощью регуляризованных булевых операций. Допустимыми булевыми операциями являются пересечение, объединение и вычитание. В частном случае CSG-тело может состоять из одной простейшей CSG-сущности.
Регуляризованным подмножеством некоторого пространства является его внутреннее замыкание (настоящую фразу следует интерпретировать в обычном топологическом смысле). Для булевых результатов boolean_result регуляризация позволяет удалить зависшие кромки и прочие аномалии рассматриваемых операций.
Полное определение CSG-тела требует наличия геометрической и структурной информации.
Геометрическая информация задается твердотельной моделью. Как правило, это простейшие тела, например цилиндры, клинья, и экструдированные тела. Твердотельная модель может быть также копией тела solid_replica (преобразованным телом) или телом в полупространстве half_space_solid.
Структурная информация задается деревом (ациклическим направленным графом) boolean_results и телом конструктивной блочной геометрии csg_solid, указывающим последовательность построения. Конечные узлы графов являются геометрическими сущностями и прочими телами. Каждое тело конструктивной блочной геометрии csg_solid имеет только один ассоциированный с ним булев результат, являющийся корневым деревом (для рассматриваемого дерева в последующем могут быть получены другие булевы результаты или операнды). Значение сущности csg_solid заключается в том, что тело, определенное с помощью ассоциированного дерева, идентифицируется как самостоятельный объект и таким образом устанавливается его отличие от прочих булевых результатов, представляющих промежуточные результаты процесса геометрического построения.
Примечание - В контексте схемы api_abstract_schema функции интерфейса позволяют построить тело конструктивной блочной геометрии csg_solid с помощью булевых результатов. Сущность csg_solid соединяется дугами, однако дуги не могут использоваться для получения булева результата.
Спецификация на языке EXPRESS:
*)
ENTITY csg_solid
SUBTYPE OF (solid_model);
tree_root_expression : csg_select;
END_ENTITY;
(*
Определение атрибута:
tree_root_expression: булево выражение для сущностей и регуляризованных операторов, описывающих тело. Корень дерева булевых выражений представлен здесь как сущность boolean_result или сущность csg_primitive.