[ Содержание ] | [ Перечень функций ] |
XSetDashes(display, gc, dash_offset, dash_list, n) Display *display; GC gc; int dash_offset; char dash_list[]; int n;
АРГУМЕНТЫ
Функция XSetDashes устанавлиает в графическом контексте gc информацию о размерах штрихов пунктирных линий (стили линий LineOnOffDash, LineDoubleDash).
Каждый элемент в списке dash_list отражает размер штриха линии. Нулевой размер штриха недопустим. Указание нулевого размера приведет к появлению ошибки BadValue. Нулевой элемент списка и последующие четные элементы отражают размеры соответствующих четных штрихов, а первый и последующие нечетные - размеры нечетных штрихов.
В списке должен присутствовать хотя бы один элемент, иначе появится ошибка BadValue. Также подразумевается, что в обычной ситуации количество элементов в списке должно быть четным. Если в списке нечетное количество элементов, то результат будет выглядеть как сложение списка самого с собой для получения четного количества элементов.
Аргумент dash_offset задает начальную фазу последовательности штриховки. Он указывает количество точек, которые необходимо отрисовать до начала штриховки для каждого отдельного запроса отрисовки линий. Цикл штриховки продолжается в течении всего графического запроса, проходя по объединённым линиям. Возврат к dash_offset произойдёт в начале следующего графического запроса.
Единица размера штриха линии является единицой измерения обычной системы координат. В идеале, длина должна измеряться вдоль самой линии, однако, требуется сохранять это правило лишь для вертикальных и горизонтальных линий. Из-за сложности расчета идеальной длины штрихов предложили упрощенный вариант: рассчитывать длину вдоль наиболее приоритетной оси координат. Приоритетной осью считается ось x, если наклон линии к этой оси находится в пределах от -45 до +45 градусов и от 135 до 225 градусов. Для остальных линий более приоритетной считается ось y.
Другие параметры линий, такие как ширина (line_width), стиль линий (line_style), стиль отрисовки концов линий (cap_style) и стиль отрисовки места состыковки двух линий (join_style) устанавливаются функцией XSetLineAttributes.
Функция XSetDashes может генерировать следующие ошибки:
Cм. также: XChangeGC, XSetSubwindowMode, XSetArcMode, XSetGraphicsExposures, XSetTile, XSetStipple, XSetTSOrigin, XSetLineAttributes, XSetClipOrigin, XSetClipMask, XSetClipRectangles, XSetFillStyle, XSetFillRule, XSetForeground, XSetBackground, XSetFont, XSetFunction, XSetPlaneMask, XSetState, XSetRegion.
[ Содержание ] | [ Перечень функций ] |