Комментарии 8
Если речь идет о точности вычислений, то для геометрических построений C3D применяет большое количество приемов и тактик, чтобы обеспечить высокую точность.
Большинство объектов (кривых, поверхностей и пр.) выдают геометрическую информацию с максимальной возможной точностью, то есть с точностью, которую могут обеспечить числа double. Есть объекты, которые выдают геометрическую информацию, получаемую итерационными методами. В этом случае точность задается тем объектом, который использует результаты, и точность может быть разной.
Приближённые вычисления используются там, где без них нельзя обойтись, например, при расчёте объёмов или инерционных характеристик.
Если использовать double неизбежно возникают проблемы с предикатами, например, лежит ли точка на прямой. Из-за этого некоторые алгоритмы могут работать нестабильно или неправильно. Как с этой проблемой справляетесь ?
Конечно, могут быть и другие проблемы. В таких случаях мы возвращаем геометрическую модель к предыдущему равновесному состоянию и сообщаем о проблеме.
А с поверхностями как работаете? Nurbs есть? Переходы между криволинейными поверхностями сделать сможете с обеспечением G2?
И на счет точности: у вас точность задана на всю модель или на каждый энтити в Brep?
"А с поверхностями как работаете?" — Вопрос не понятен. Полноценные построения идут как создание оболочек BRep.
Nurbs есть.
"Переходы между криволинейными поверхностями сделать сможете с обеспечением G2?" — Есть у поверхности соединения. Для поверхности по сети кривых в разработке.
"И на счет точности: у вас точность задана на всю модель или на каждый энтити в Brep?" — Точность при создании модели не задается, но допустима неточная геометрия BRep при построениях и импорте. Данные о неточности содержатся в ребрах и вершинах.
Обзор САПР на геометрическом ядре C3D — 2