Импорт данных из графической базы

 

FROMBASE P.n,

         P.i | C.i | K.i

         {, res} {, INTER}

 

где:

  • res – переменная результата поиска:
  • 0 – нет,
  • 1 – да;
  • INTER – признак необходимости интерактивного подтверждения результата поиска;
  • P.n – идентификатор точки положния курсора;
  • P.i, C.i, K.i – идентификатор объекта результата поиска.

 

или

 

FROMBASE K.i, N.j, Size.k, res {, INTER}

 

где:

  • K.i – идентификатор объекта результата поиска;
  • N.j – порядковый номер объекта в базе, начиная с которого требуется импорт;
  • Size.k – число требуемых элементов;
  • res – число фактически импортированных элементов;
  • INTER – признак необходимости интерактивного подтверждения результата поиска.

 

Оператор обеспечивает импорт данных из текущего сегмента открытой базы в переменные подсистемы "Геометрический процессор".

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

В зависимости от типа идентификатора экспортируемого объекта система возвращает:

  • P – координаты конечных либо узловых точек объектов следующих типов: CUT, ARC, CRK, BOX, K;
  • C – параметры объекта CRK;
  • K – контур, построенный по объектам следующих типов: CUT, ARC, CRK, BOX, K.

 

При задании параметра <INTER>, после нахождения объекта система выделит его на экране цветом и будет ожидать подверждения правильности поиска. В случае согласия следует нажать левую клавишу манипулятора "мышь" либо клавишу <Enter>, для отказа нажмите правую клавишу манипулятора либо клавишу <Esc>.

 

Пример:

 

system sgr                             ! установка

system gps                             ! подсистем

system dog 

grmode 1; grout 2

oldbase "GEAR"                         ! открытие существующей базы

shelsegm p.1, p.2                      ! запрос оболочки сегмента

window x[p.1], y[p.1], x[p.2], y[p.2]  ! установка окна

view 0, 0, 1, 1

clrview                                ! очистка окна

outsegm                                ! вывод содержимого сегмента

res = 0                                ! инициализация переменной результата

i = 1                                  ! индекс импортированного контура

key = 0

repeat

  getpos p.3, key                      ! запрос координат курсора

  if key = 13 then begin

    FROMBASE p.3, k.i, res, inter      ! импорт контура из текущей базы

    if res = 1 then i=i+1

  end

until key = 27

end

 

Подсистема DOG