клас tcanvas

Много обекти са собственост Canvas (платно, платно), който се използва за изготвяне на различни линии: елипси, правоъгълници и т.н. - на повърхността на обекта, съответстваща на свойствата на задача за фон на текста изход. Платно собственост принадлежи TCanvas на класа, така че трябва да се помисли за помощ Delphi (накратко) този клас.

Основа на клас метод TCanvas:

  • процедура MoveTo (X, Y: цяло число); - писалката се поставя на място с Coord. X, Y (необходимо преди да се направят някои линии, като отсечка - виж LineTo)
  • процедура LineTo (X, Y: цяло число); - проведе права линия до точката с Coord. X, Y (виж MoveTo)
  • процедура елипса (X1, Y1, X2, Y2: цяло число); претоварване; Ellipse. X1, Y1, X2, Y2 - координатите на горния ляв и долния десен ъгъл на описаната правоъгълника. или:
    процедура елипса (конст Rect: TRect); претоварване; Rect - правоъгълник (както е описано). претоварване - претоварване на метода, т.е., методът може да се използва с всеки от тези параметри 2 за това.
  • процедура FillRect (конст Rect: TRect); - пълнеж (запълва във фонов режим) Rect правоъгълник. Фонови свойства трябва да бъдат определени, използвайки Canvas.Brush (вж имоти, четка)
  • процедура Arc (X1, Y1, X2, Y2, X3, Y3, Х4, Y4: цяло число); - дъга от елипса.
  • процедура FloodFill (X, Y: цяло число; Цвят: TColor; FillStyle: TFillStyle); - Напълнете затворен тип форма TFillStyle = (fsSurface, fsBorder); - ако FillStyle = fsSurface, цветът - цветът на пълни форми, ако FillStyle = fsBorder, цветът - цвета на границата.
  • процедура PolyBezier (CONST точки: масив от TPoint); - направи сплайн през точките, определени от масив от точки.
  • процедура правоъгълник (X1, Y1, X2, Y2: цяло число); претоварване; - параметри определят правоъгълник (виж елипса)
    процедура правоъгълник (конст Rect: TRect); претоварване;
  • процедура RoundRect (X1, Y1, X2, Y2, X3, Y3: цяло число); - правоъгълник, ъглите са закръглени.
  • процедура TextOut (X, Y: Integer; Конст Текст: низ); - показва текста. X, Y - Coord на горния ляв ъгъл на правоъгълник, съдържащ текста.
За да настроите параметрите на линията, използван за изготвяне тези цифри изисква свързване на Canvas.Pen. Да разгледаме основните комуникационни класове острови TPen:
  • имот Цвят: TColor;
  • имот Стил: TPenStyle;
    Типове TPenStyle = (psSolid, psDash, psDot, psDashDot, psDashDotDot, psClear); - твърди, пунктирана, и така нататък.
  • имот Ширина: Integer; - дебелина на линията.

Въз основа на свойствата TCanvas клас:

  • имот с четка TBrush; - (четка). - Определя цвета и вида на пълнене за попълване на затворени фигури. След това - виж свойства TBrush клас.
  • собственост на шрифта: TFont; - определя собствеността на шрифта, използван метод TextOut (виж по-горе).
  • имот Pen: TPen; - "писалка", който се използва по методи TCanvas клас за изготвяне линии. Тя ви позволява да зададете свойствата на линиите. Клас TPen описано по-горе.
  • Пиксели собственост [X, Y: Integer]: TColor; - С помощта на тази St-в, можете да укажете на цвета на всеки пиксел (пиксел определени координати, X, Y, базовата точка - в горния ляв ъгъл на собственика).

Алгоритъмът е проста анимация

Обикновено анимация - това е просто постоянно движение на фигурата (на фигурата) по отношение на фона. С помощта на свойствата и методите на класа TCanvas проста анимация, можете да го направите:
  1. Начертайте навсякъде тази цифра. Нека координатите на горния ляв ъгъл на покритието (както е описано) на правоъгълника: X, Y, и тази цифра - височина на правоъгълник Н, широчина В. Draw може да бъде толкова: canvas.rectangle (X, Y, X + B, Y + Н);
  2. За да се поддържа време на пауза за възприемане на формата на окото (например 50 милисекунди). Той е удобен за използване на kompoent таймер, т.е. коригира Timer1.Interval = 50.
  3. Изтриване на фигурата (можете да го направи отново на същото място с цвета на фона или да използвате метод FillRect - може би това е по-бързо)
  4. Промени координати за изготвяне на малко количество (например, смола DX = Dy = 2)
  5. Начертайте форма на ново място. Т.е. за нашия правоъгълник:
    X: = X + DX; Y: = Y + ди; canvas.rectangle (X, Y, X + B, Y + Н);
  6. Повторете стъпки от 1 - 5, след цифра все още не стигнал до крайно положение.
Всички тези действия трябва да бъдат пуснати в метода на тялото Timer1Timer. Пълният текст unit1.pas модул, създаване на анимацията: и всички файлове на този проект може да бъде изтеглен тук

Можете да направите анимация по-лесно, ако се преместите (промените позицията) обекта на снимката, която съдържа снимка. В този случай, не е нужно да се притеснявате за изтриване и живопис. Ти просто трябва да промените координатите, пауза и т.н. Например, възможно е да се променят проекта ТИР (Заменете възлагане на случайни числа като координира - номера, които варират непрекъснато, като описва траекторията на движение)..