Графические возможности TurboPascal 7.0 — страница 10

  • Просмотров 6138
  • Скачиваний 577
  • Размер файла 3666
    Кб

координаты второго конца линии. Процедура LineRel. Вычерчивает линию от текущего положения указателя до положения, заданного приращениями его координат. Заголовок: Procedure LineRel (DX, DY: Integer); Здесь DX, DY - приращения координат нового положения указателя. В процедурах LineTo и LineRel линия вычерчивается текущим стилем и текущим цветом. Процедура SetLineStyle. Устанавливает новый стиль вычерчиваемых линий. Заголовок: Procedure SetLineStyle(Type,Pattern,Thick: Word) Здесь

Type, Pattern, Thick - соответственно тип, образец и толщина линии. Тип линии может быть задан с помощью одной из следующих констант: const SolidLn = 0; {Сплошная линия} DottedLn = 1; {Точечная линия} CenterLn = 2; {Штрих-пунктирная линия} DashedLn = 3; {Пунктирная линия} UserBitLn = 4; {Узор линии определяет пользователь} Параметр Pattern учитывается только для линий, вид которых определяется поль­зователем (т.е. в случае, когда Type = UserBitLn). При этом два байта параметра Pattern

определяют образец линии: каждый установленный в единицу бит этого слова соответствует светящемуся пикселю в линии, нулевой бит - несветящемуся пикселю. Таким образом, параметр Pattern задает отрезок линии длиной в 16 пикселей. Этот образец периодически повторяется по всей длине линии. Параметр Thick может принимать одно из двух значений: const NormWidth = 1; {Толщина в один пиксель} ThickWidth = 3; {Толщина в три пикселя} Процедура GetLineSettings.

Возвращает текущий стиль линий. Заголовок: Procedure GetLineSettings(var Stylelnfo: LineSettingsType) Здесь Stylelnfo - переменная типа LineSettingsType, в которой возвращается теку­щий стиль линий. Тип LineSettingsType определен в модуле Graph следующим образом: type LineSettingsType = record LineStyle: Word; {Тип линии} Pattern -. Word; {Образец} Thickness: Word {Толщина} end; Процедура SetWriteMode. Устанавливает способ взаимодействия вновь выво­димых линий с уже существующим на экране изображением. Заголовок:

Procedure SetWriteMode(Mode); Здесь Mode - выражение типа Integer, задающее способ взаимодействия выводимых линий с изображением. Если параметр Mode имеет значение 0, выводимые линии накладываются на существующее изображение обычным образом (инструкцией MOV центрального процессо­ра). Если значение 1, то это наложение осуществляется с применением логической операции XOR (исключительное ИЛИ): в точках пересечения выводимой линии с имеющимся на экране

изображением светимость пикселей инвертируется на обрат­ную, так что два следующих друг за другом вывода одной и той же линии на экран не изменяет его вид. Режим, установленный процедурой SetWriteMode, распространяется на процедуры Drawpoly, Line, LineRel, LineTo и Rectangle. Для задания параметра Mode можно ис-юльзовать следующие определенные в модуле константы: const CopyPut = 0; {Наложение операцией MOV} XORPut = 1; {Наложение операцией XOR} В следующем примере на