Как проверить идентичность объектов?

Автор Akew, 23.11.15, 18:58:05

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Akew

Добрый вечер!

Что является необходимым и достаточным условием идентичности двух объектов, заданных разными указателями типа IModelObject?

В моем случае объектами являются грани (ksFaceDefinition).
Из этого интерфейса можно получить и ksSurface, и ksEntity, и т.д. Нужно ли их сравнивать, или достаточно сравнить сами IModelObjectы? Или не то и не другое, а что-то иное?

Спасибо


Akew

ЦитироватьПо геометрии
Вы имеете ввиду интерфейс математической поверхности ksSurface (ISurface)?


Akew

Sabahs, можно немного поподробнее?
Я считал, что ksSurface и есть геометрия (т.е., математическая поверхность).

Вы, тогда покажите, как сравнивать будете.
На картинке две разные поверхности, разного типа, но ребра поверхностей совпадают, можно сделать, что тип и поверхности будут совпадать, но не будут совпадать границы, т.ч. Ваш вопрос абстрактный, непонятно, что Вы в итоге хотите получить.

Akew

Уверен, что моя задача гораздо проще. Извините, что сразу не расписал ее подробно.

В двух словах, имеется операция удаления граней IFaceRemover, и массив граней IModelObject.
Требуется определить, какие грани этого массива представлены в операции удаления (т.е., в свойстве Faces этой операции, - в массиве VARIANT удаленных граней, представленных как IModelObject).

Достаточно ли будет просто проверить на равенство элементы этих массивов (т.е., в формате IModelObject), или необходимо сравнивать что-то другое (ksDefinitionFace, ksSurface, etc)?

По идеи IModelObject.Reference у одинаковых граней должны совпадать.
+ Благодарностей: 1

Akew