ObjectARX, AutoCAD. Среда программирования библиотеки C++



         

Контекст примитива и координатное преобразовывание данных - часть 2


ПРИМЕЧАНИЕ, чтобы преобразовать вектор скорее чем точка, не добавьте вектор сдвига [М. 03 М. 13 М. 23] (от четвертого столбца матрицы преобразования).

Следующий типовой код определяет функцию, mcs2wcs (), который исполняет преобразования, описанные предшествующими уравнениями. Требуется матрица преобразования, возвращенная acedNEntSelP () и одиночной точкой (возможно от данных определения вложенного примитива), и возвращает оттранслированную точку.

Если третий параметр к mcs2wcs (), is_pt, установлен в 0 (ЛЖИ), последний{*прошлый*} столбец матрицы преобразования — вектор сдвига, или смещение — не добавлено к результату. Это дает возможность функции транслировать вектор также как точку.

 

X ’

М00 М01 М02 М03

X

Y ’

=

М10 М11 М12 М13

x

Y

Z ’

М20 М21 М22 М23

Z

1.0

  0.0   0.0   0.0   1.0

 

1.0

 

X ' = М. 00 X + М. 01 Y + М. 02 Z + М. 03

Y ' = М. 10 X + М. 11 Y + М. 12 Z + М. 13

Z ' = М. 20 X + М. 21 Y + М. 22 Z + М. 23.

Индивидуальные координаты преобразованной точки получены от уравнений, где М. mn - Модель к Мировой Матрице преобразования, координирует, (X, Y, Z) - точка данных определения примитива, выраженная в координатах MCS, и (X ’, Y ’, Z ’) - заканчивающаяся точка данных определения примитива, выраженная в координатах WCS. См. “ Матрицы Преобразования ” на странице 535.

ПРИМЕЧАНИЕ, чтобы преобразовать вектор скорее чем точка, не добавьте вектор сдвига [М. 03 М. 13 М. 23] (от четвертого столбца матрицы преобразования).

Следующий типовой код определяет функцию, mcs2wcs (), который исполняет преобразования, описанные предшествующими уравнениями. Требуется матрица преобразования, возвращенная acedNEntSelP () и одиночной точкой (возможно от данных определения вложенного примитива), и возвращает оттранслированную точку.

Если третий параметр к mcs2wcs (), is_pt, установлен в 0 (ЛЖИ), последний столбец матрицы преобразования — вектор сдвига, или смещение — не добавлено к результату. Это дает возможность функции транслировать вектор также как точку.




Содержание  Назад  Вперед