Текущий раздел:

Описания RDS

Приложения

Приложение А. Функции, константы и структуры RDS

А.4. Структуры RDS

А.4.12. RDS_LINEDESCRIPTION – описание отрезка внутри связи или шины

# Приложения

## Приложение А. Функции, константы и структуры RDS

### А.4. Структуры RDS

#### А.4.12. RDS_LINEDESCRIPTION – описание отрезка внутри связи или шины

Структура RDS_LINEDESCRIPTION используется для получения описания отдельного отрезка, соединяющего пару точек связи или шины в ее геометрическом изображении. Эта структура заполняется сервисными функциями rdsGetLineDescription и rdsFindNextConnectedLine. Пример ее использования приведен в §2.13.4 руководства программиста.

Структура используется только для получения описания отрезка, изменить параметры этого отрезка с ее помощью нельзя. Для изменения параметров существующих связей или шин и создания новых используется вспомогательный объект, создаваемый функцией rdsCECreateEditor.

      typedef struct {
        DWORD servSize;           // Размер этой структуры в байтах
        RDSINT32 LineType;        // Тип отрезка (RDS_LN*)
        RDSINT32 nPoint1,nPoint2; // Номера соединяемых точек
        RDSINT32 x1,y1;           // Абсолютные координаты точки nPoint1
        RDSINT32 x2,y2;           // Абсолютные координаты точки nPoint2
        RDSINT32 dx1,dy1;         // Смещения управляющей точки для nPoint1
        RDSINT32 dx2,dy2;         // Смещения управляющей точки для nPoint2
        RDS_CHANDLE Owner;        // Связь-владелец отрезка
      } RDS_LINEDESCRIPTION;
      typedef RDS_LINEDESCRIPTION *RDS_PLINEDESCRIPTION;

Поля структуры

servSize(DWORD)
  Размер этой структуры в байтах. Перед вызовом любой сервисной функции, работающей с этой структурой, полю servSize необходимо присвоить значение sizeof(RDS_LINEDESCRIPTION).
LineType(RDSINT32)
  Тип отрезка: отрезок прямой или кривая Безье В этом поле может находиться одна из двух констант:

  RDS_LNLINE | Отрезок прямой.
  RDS_LNBEZIER | Кривая Безье.

nPoint1, nPoint2(RDSINT32)
  Порядковые номера соединяемых отрезком точек связи или шины. Обращение к точкам всегда идет по их номеру, общее число точек можно получить через поле NumPoints структуры RDS_CONNDESCRIPTION.
x1, y1(RDSINT32)
  Горизонтальная (x1) и вертикальная (y1) координаты точки связи с номером nPoint1. В отличие от структуры описания точки RDS_POINTDESCRIPTION, в этой структуре всегда указываются абсолютные координаты точки на рабочем поле подсистемы в масштабе 100%.
x2, y2(RDSINT32)
  Горизонтальная (x2) и вертикальная (y2) координаты точки связи с номером nPoint2. В отличие от структуры описания точки RDS_POINTDESCRIPTION, в этой структуре всегда указываются абсолютные координаты точки на рабочем поле подсистемы в масштабе 100%.
dx1, dy1(RDSINT32)
  Горизонтальное (dx1) и вертикальное (dy1) смещение управляющей точки (точки касательной) для точки связи с номером nPoint1. Эти поля используются только для кривых Безье, то есть если LineType==RDS_LNBEZIER.
dx2, dy2(RDSINT32)
  Горизонтальное (dx2) и вертикальное (dy2) смещение управляющей точки (точки касательной) для точки связи с номером nPoint2. Эти поля используются только для кривых Безье, то есть если LineType==RDS_LNBEZIER.
Owner(RDS_CHANDLE)
  Идентификатор связи или шины, которой принадлежит данный отрезок.

См. также

rdsGetLineDescription, rdsFindNextConnectedLine, RDS_CONNDESCRIPTION, rdsGetConnDescription, rdsCECreateEditor.