SpiroMania!

Я увяжу большинство элементов, которые должен объяснить в этой главе, посредством реализации в Delphi моего бедного, ушедшго в небытие пластмассового Спирографа. Как и в случае о нашим проектированием калькулятора закладных, генератор циклоид является "механизмом" в его собственном отдельном модуле. Но, в отличие от калькулятора закладных, механизм циклоид делает выбор экрана посредством параметра TargetCanvas процедуры SpinWheels. Так как TargetCanvas не может принимать полотна Delphi, механизм циклоид может рисовать - или на полотне формы, или на полотне принтера. Кнопки присутствуют для того, чтобы позволить вам очистить форму, нарисовать кривую, установить параметры принтера для Windows и выйти из программы.

Характер выводимых на экран кривых определяется тремя значениями: А, В, и D. Каждое из этих трех значений имеет элемент управления SpinEdit, связанный с ним на левой стороне окна. Вы можете - или ввести одно из трех новых значений, или послать стрелки up/down на элементах управления SpinEdit. Если вы изменяете любое из трех значений, нажмите на кнопку Spin, чтобы перерисовать циклоид в соответствии с новым значением. Нажатие на кнопку Clear очищает изображение на экране. При рисовании узора старое изображение автоматически не сбрасывается; это позволяет вам при желании рисовать один узор поверх другого. Это может быть особенно эффективным для узоров, которые накладываются на контрастные краски. Элемент управления выбором цвета предписывает, в каком цвете появиться следующему изображению узора. (Этот выбор цвета не влияет на цвет печати, если даже у вас цветной принтер. Дополнительная поддержка цвета принтером была бы хорошим исследовательским проектом, если вы один из немногих счастливцев, работающих с цветным принтером.) Любой блок цвета, имеющий в себе маркер "FG" (передний план), будет цветом изображения. Чтобы изменить его, надо просто нажать на другой блока цвета.

Щелкнув на кнопку Print, вы печатаете тот самый узор, который видите в окне на принтере, установленном в Windows по умолчанию. Напечатанный узор будет гораздо более высокого разрешения, чем изображенный узор, в особенности на лазерном принтере. Когда вы печатаете узор, три определяющих значения А, В и D будут напечатаны ниже узора, так что если вы получите хороший узор, то будете знать как воссоздать его.

Программирование в среде Delphi
Рис. 12.8 Форма экрана SpiroMania.

Листинг 12.5 является главным модулем формы для Spiro Mania. И снова главный модуль формы реализует интерфейс пользователя. В Листинге 12.4 представлен код, который фактически порождает циклоиду, и может затем вызываться подпрограммой интерфейса пользователя листинга 12 5

ЛИСТИНГ 12.4 SPinriER-PAS, генератор кривой циклоиды

Spiro Mania SPINNER.PAS : Генератор циклоидных кривых Джефф Дантеманн KG7JF Покаааный здесь генератор циклоидных кривых, генерирует узоры так же, как старая игрушка Спирограф

Написано для ^Исследователя программирования в Delphi *

Охраняется авторским правом (с) 1995 The Coriolis Group, Inc.

Последняя модификация 3/9/95


⇐ Предыдущая страница| |Следующая страница ⇒

Программирование в среде Delphi



Новости за месяц

  • Декабрь
    2021
  • Пн
  • Вт
  • Ср
  • Чт
  • Пт
  • Сб
  • Вс
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31