Как определить положение таблицы на чертеже?

Автор AndreySt, 14.08.07, 06:52:51

« назад - далее »

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

AndreySt

Доброго времени суток.
Подскажите на чертеже есть таблица, я знаю указатель на таблицу, нужно узнать координаты этой таблицы(левую верхнюю).


AndreySt


Slaviation

Pascal:

// На входе таблица
procedure getTableCoord(refTable: reference);
var
  iRectParam: ksRectParam;
  iMathPointParam: ksMathPointParam;
  iDocument2D: ksDocument2D;
  refGroup: reference;
  x1, y1, x2, y2: Double;

begin
  // Тут если нужно код получения iDocument2D

  // Создаем группу, добавляем в неё таблицу
  refGroup:=iDocument2D.ksNewGroup(1);
  iDocument2D.ksEndGroup;
  iDocument2D.ksAddObjGroup(refGroup, refTable);

  // Интерфейс для получения габарита группы
  iRectParam:=ksRectParam(iKompasObject.GetParamStruct(ko_RectParam));

   // Получаем габарит таблицы
   iDocument2D.ksGetObjGabaritRect(refGroup,iRectParam);

  //Получить параметры левой нижней точки
  iMathPointParam:=ksMathPointParam(iRectParam.GetpBot);
  x1 = iMathPointParam.x;
  y1 = iMathPointParam.y;

  //Получить параметры правой верхней точки прямоугольника
  iMathPointParam:=ksMathPointParam(iRectParam.GetpTop);
  x2 = iMathPointParam.x;
  y2 = iMathPointParam.y;

  // Ну а далее можно постичать и левую верхнюю

end;

neo

Интересное решение  Slaviation :). Получаем одно через другое - не удобно, но выхода похоже другова нет. Однако, было бы гораздо удобней если бы разработчики Компас предусмотрели в будущем, столь нужные свойства обьекта таблица - координаты одного из углов  :-\.