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

       

Геометрические Утилиты


Одна группа функций дает возможность приложениям получить геометрическую информацию.

AcutDistance () функция находит, что  расстояние между двумя точками, acutAngle () находит угол между линией, и X ось текущих ВЕРХНИХ РЕГИСТРОВ (в КООРДИНАТНОМ плане), и acutPolar () находит точку посредством полярных координат (относительно начальной точки). В отличие от большинства функций ObjectARX, эти функции не возвращают значение состояния. AcdbInters () функция находит пересечение двух линий; это возвращает RTNORM, если это находит точку, которая соответствует спецификации.

ОБРАТИТЕ ВНИМАНИЕ В отличие от acedOsnap (), функции в этой группе просто вычисляют точку, линию, или угловые значения, и фактически не сделают запрос текущего рисунка.

Следующий типовой кодовый фрагмент показывает некоторый простой, вызывает к геометрическим сервисным функциям.

ads_point pt1, pt2;

ads_point base, endpt;

ads_real rads, length;

.

. // Инициализирует pt1 и pt2.

.

// Возвратить угол в КООРДИНАТНОМ плане текущих ВЕРХНИХ РЕГИСТРОВ, в радианах.

rads = acutAngle (pt1, pt2);

// Расстояние Возвращения в трехмерном пространстве{*пробеле*}.

length = acutDistance (pt1, pt2);

base [X] = 1.0; base [Y] = 7.0; base [Z] = 0.0;

acutPolar (base, rads, length, endpt);

Запрос к acutPolar () устанавливает endpt в точку, которая является тем же самым расстоянием от (1,7), поскольку pt1 - от pt2, и это - под тем же самым углом от X оси как угол между pt1 и pt2.



Содержание раздела