GetIntersectionFacesWithBody - Определить взаимодействующие грани при пересечении данного тела с другим |
Scroll |
Синтаксис Automation:
BOOL GetIntersectionFacesWithBody (LPDISPATCH otherBody, VARIANT * intersectionFaces1,
VARIANT * intersectionFaces2,
VARIANT * connectedFaces1,
VARIANT * connectedFaces2);
Синтаксис COM:
BOOL GetIntersectionFacesWithBody (LPBODY otherBody, VARIANT * intersectionFaces1,
VARIANT * intersectionFaces2,
VARIANT * connectedFaces1,
VARIANT * connectedFaces2).
Входные параметры:
otherBody |
- второе тело. |
Выходные параметры:
intersectionFaces1 |
- пересекаемые грани первого тела, |
intersectionFaces2 |
- пересекаемые грани второго тела, |
connectedFaces1 |
- совпадающие грани первого тела, |
connectedFaces2 |
- совпадающие грани второго тела. |
Возвращаемое значение:
TRUE |
- в случае успешного завершения, |
FALSE |
- в случае неудачи. |
Примечание:
Пересекаемые и совпадающие грани возвращаются в VARIANT-е так:
•Если грань одна, то VARIANT заполняется как VT_DISPATH в автоматизации и VT_UNKNOVN в COM.
•Если граней несколько, то VARIANT заполняется как массив SafeArray типа VT_ARRAY | VT_DISPATH в автоматизации и VT_ARRAY | VT_UNKNOVN в COM.
Количество граней в массивах intersectionFaces1 и intersectionFaces2 совпадают и образуют пары, т.е. грань с индексом i из массива intersectionFaces1 пересекается с гранью i из массива intersectionFaces2.
Одна и та же грань может встречаться в массиве несколько раз, если она пересекается с несколькими гранями.
Так же заполняются и массивы connectedFaces1 и connectedFaces2.
Подразделы:
(отсутствуют)