Поделиться через


CDC::GetPath

Получает координаты, указав конечные точки и контрольные точки кривых линий, найденных в пути, выбрав в контекст устройства.

int GetPath(
   LPPOINT lpPoints,
   LPBYTE lpTypes,
   int nCount 
) const;

Параметры

  • lpPoints
    Указывает на массив структур данных ТОЧКА или объектов CPoint, где размещаются конечные точки линии и контрольные точки кривой.

  • lpTypes
    Указатель на массив байтов, в котором размещаются типы вершины.Значения одно из следующих действий:

    • PT_MOVETO Указывает, что соответствующий пункт в lpPoints запускает диаграмма раздельных.

    • PT_LINETO Указывает, что предыдущий точку и соответствующий пункт в lpPoints конечные точки линии.

    • PT_BEZIERTO Указывает, что соответствующий пункт в lpPoints контрольной точки или конечной точки кривой Bzier.

      Типы PT_BEZIERTO всегда выполняются в наборах 3.Точка в пути непосредственно перед их определяет начальную точку кривой Bzier.Первые 2 пункта PT_BEZIERTO контрольные точки, а третий точка PT_BEZIERTO конечная точка (если задано жестко).

      Тип PT_LINETO или PT_BEZIERTO может быть объединяется со следующим флагом (с помощью битовой оператора OR) для указания того, что соответствующий укажите последнюю точку на графике и что диаграмма должна быть закрыта:

    • PT_CLOSEFIGURE Указывает, что элемент управления диаграммы автоматически закрыта после нарисована соответствующая линия или кривой.Диаграмма закрыта, чтобы нарисовать линию с конечной точки, линии или точки кривой в PT_MOVETO, соответствующее последнему.

  • nCount
    Указывает общее число структур данных ТОЧКА, которые могут быть размещены в массиве lpPoints.Это значение должно совпадать с числом байтов, которые могут быть размещены в массиве lpTypes.

Возвращаемое значение

Если параметр nCount отличен от нуля, то количество перечисляемых точек.Если nCount 0, то общее количество точек в контуре и не записывает GetPath (nothing в буферы).Если nCount не равен нулю и меньшее количество точек в контуре, то возвращаемое значение равно -1.

Заметки

Контекст устройства должен содержать закрытый путь.Точки пути возвращаются в логических координатах.Элементы хранятся в пути в координатах устройства, поэтому изменениях GetPath точки из координат в логические координаты устройства с помощью противоположности текущего преобразования.Функция-член FlattenPath может быть вызван перед GetPath, чтобы преобразовать все кривые в пути в сегменты линии.

Пример

См. пример для CDC::BeginPath.

Требования

Header: afxwin.h

См. также

Ссылки

Класс CDC

Диаграмма иерархии

CDC::FlattenPath

CDC::PolyDraw

CDC::WidenPath