робота функции CONTOUR

Автор kostya, 28.11.02, 17:51:46

« предыдущая - следующая »

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

kostya

Народ помогите разобраться сроботой функции Contour и
ksispointinsidecontour

Если можно простой пример на delphi на
rovnodima2001@rambler.ru

Help, дайте help`a

Victor

Функция reference Contour( unsigned short style /*стиль линии см библиотеки стилей линий*/ ); предназначена для формирования замкнутого контыра состоящего из отрезков дуг и пр. графических примитивов
построение контура осуществляется так:
Contour(1); /* определение контура */
  LineSeg ( 10,  10,  10,  20,  1 );
  LineSeg ( 10,  20,   40, 20,  1 );
  LineSeg ( 40,  20,   40, 30,  1 );
  LineSeg ( 40,  30,   70, 30,  1 );
  LineSeg ( 70,  30,   70, 10,  1 );
  LineSeg ( 70,  10,   10, 10,  1 );
p = EndObj();   /* закончить формирование контура */
p - указатель на полученный контур
при формировании контура следующий отрезок или дуга должены выходить из точки в которой закончился предыдующий
последний отрезок должен завершиться в начале первого отрезка
иначе контур не соберется

Для замкнутого контура можно проверить поподает ли в его границы точка для этого используется функция ksIsPointInsideContour
int  ksIsPointInsideContour (reference  p, double x, double y, double precision);
Параметры:
p      - указатель на контур
x, y      - координаты точки
precision    - точность проверки в миллиметрах (от 1 до 1E-6)
Функция проверяет, расположена ли точка внутри указанного контура.
Функция возвращает 0 в случае неудачи, 1, если точка вне контура, 2, если точка на контуре, и 3, если точка внутри контура.  
 
 
 

Victor

Насчет Helpа
Help поставляется со всеми лицензионными версиями Компаса