Графични възможности Delphi

Графични възможности Delphi. Платно.

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







Ø сваляне и съхраняване на графични изображения

Ø Създаване на нови и промяна на съхранените снимки с помощта на писалка, четка, шрифт

Ø Рисуване и оцветяване на различни форми, линии, текст

Ø Комбинацията от различни изображения

За да можем да направим нещо по форма или компонент (Canvas поддържа много от компонентите), ние трябва да бъдем в състояние да определи позицията на екрана, за да черпим. За тази цел платно координатна система е свързана със следното:

Графични възможности Delphi

Забележка. (0,0) е в горния ляв ъгъл. Познат координатна система "обърнат"

Всяка точка по случая е много малък правоъгълник (И тъй като това не е точно на мястото, терминът се използва - "пиксел").

Основните методи на платно

Помислете за част от методите, чрез които можете да създадете прости рисунки.

Обръща дъга от кръг или елипса

Arc метод обръща дъга от кръг или елипса, използващи настоящата стилус параметри писалка (тези параметри, които считаме-долу). Точка (х 1, у 1) и (x2, y2) определя от правоъгълника описващ елипса. Началната точка на дъгата се определя от точката на пресичане на елипсата с линията, минаваща през центъра и точка (х 3, Y3). Крайната точка на дъгата се определя от точката на пресичане на елипсата с линията, минаваща през центъра и точка (х4, Y4). Дъгата се изтегля обратно на часовниковата стрелка от началната точка до крайната точка на.

Image1.Canvas.Arc (0,0, 200 200, 200,0, 0,0);

Image2.Canvas.Arc (0,0, 200 200, 0,0, 200,0);

Графични възможности Delphi

Обръща напълнен затворена форма, ограничена дъга от кръг или елипса и хорда

метод акорд обръща затворена форма: дъгата на кръг или елипса, затворен акорд, използвайки текущите настройки на писалка писалка. Фигура попълнено четка ток (обсъдени по-долу). Point (x1, y1) и (x2, y2), определен от правоъгълник, описващ елипса. Отправна точка на дъгата на елипсата, определена от пресечната точка с линията, минаваща през центъра и точката (х 3, у 3). Крайната точка на дъгата се определя от точката на пресичане на елипсата с линията, минаваща през центъра и точка (х4, Y4). Дъгата се изтегля обратно на часовниковата стрелка от началната точка до крайната точка на. Точката за акорд свързване (x3, y3) и (x4, y4).

Image1.Canvas.Chord (0,0, 200 200, 200,0, 0,0);

Image2.Canvas.Chord (0,0, 200 200, 0,0, 200,0);

Графични възможности Delphi

Обръща графично представяне на определената позиция на платното

Начертайте метод обръща изображението, съдържаща се в обекта, определена от параметър Graphic, поддържане на изображението на цял размер източника и прехвърляне на изображението, за да TCanvas платно обект, в горния ляв ъгъл, който се определя от параметрите на х и у. Източникът на изображението може да бъде малко по-матрица, или икона мета файл.

Форма 1. платно. Равен (10,10, Bitmap 1);

Бои за платното на форми Form1 Bitmap1 изображението на компонент за координатите на горния ляв ъгъл (10,10).

Чертае изображението правоъгълник, който се използва за показване на рамката за фокусиране, XOR операция

DrawFocusRect (конст Rect TRect.);

метод DrawFocusRect обръща върху платното в Rect правоъгълник образ като този, използван обикновено за показване на рамката за фокусиране, т.е. точки. При изготвянето операция XOR се използва, което позволява да премахнете изображение правоъгълник чертеж на неговото препредаване.

Следваща комплект със събития, свързани с мишка, рисуване върху компонента платно Imag д 1 правоъгълна рамка 10 х 10 около курсора и плъзнете eepri движете мишката, докато държите натиснат бутона:

Процедура TForm1.Image1MouseDown (Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);

Когато натиснете бутона на мишката, като първият пакет е съставен, съхранявани координати на курсора и режим на кадър ход се активира (променливата плъзнете = True). Когато се движите мишката, за да се премести в режим на кадър се изтрива предишната рамка, рамка в нова позиция и нови координати на курсора се съхраняват. Когато отпуснете бутона на мишката, изтрити рамка и изключване режим преместите рамката.

Обръща запълнен кръг или елипса

Ellipse метод обръща кръг или елипса, използвайки текущите настройки на писалка писалка. Фигура попълнено четка текущата стойност. Точка (х 1, у 1) и (2 х, у 2) определяне на правоъгълник, който описва елипса.

Със снимка 1. Платно правят // оператор в скоби преди всеки ред добавя снимка 1. платно.

Елипса (0, 0, Image1.Width, Image1.Height);

Попълва каза платно правоъгълник, като се използва текущата стойност на четката.

Метод FillRect запълва платно правоъгълник определен параметър Rect, използвайки текущата стойност на четката. Запълва областта включва горната и лявата страна на правоъгълника, но тя не включва правото и долната страна.







Тя почиства цялата очертанията на компонента Image1, изпълвайки я с фона, когато той се намира в имота четка.

Запълва затворено пространство на текущата четката на платното, определен цвят.

Тип TFillStyle = (fsSurfase, fsBorder);

Процедура FloodFill (х, у: цяло число; Цвят: TColor; FillStyle: TFillStyle);

Метод FloodFill ток четка четка бои затворен участък на платното, и определен цвят картина начална точка (х. Y). Точката с координатите х и у е произволна точка във вътрешността на формата, която може да има произволна форма. Границата на този регион се определя от комбинация от параметри и Color FillStyle. Цвят опция се задава цвета, който се използва при определяне на границите на защрихованата област, като параметър FillStyle определя как това се определя от цвета на границата. Ако FillStyle = fsSurface. тя е пълна с сенчесто място представлява цвета на цвят. и методът спира и в други цветове. Ако FillStyle = fsBorder, а напротив, районът е пълен с боядисана всеки цвят, не е равно на цвят и цвят на цвят метод спира.

С Image1.Canvas да започнат

Тези субекти са оцветени бели бои компонент Image1 всички пиксели, съседни на пиксел с координати (х, у) и имат същия цвят като този на пиксел.

С Image1.Canvas да започнат

Тези субекти са оцветени бели бои компонент Image1 всички пиксели, съседни на пиксел с координати (х, у) и с цвят, различен от черно. При достигане на границата на черните засенчващи спирки.

Рисува върху платното с четка на текущата правоъгълника.

FrameRect метод обръща контур в правоъгълна рамка около района Rect, използвайки текущата инсталация четка четка. Дебелината на кадъра - 1 пиксел. Районът в рамката четка не е боядисана. Правоъгълник метод се различава от тази рамка, изготвен с цвят четка (по метода на правоъгълник - Pen цвят писалка) и областта не е боядисан (правоъгълник е боядисан в метода).

С Form1.Canvas направя

Рисува върху платното на Form1 черна рамка.

Рисува върху платно правата линия, която започва с текущата позиция писалка и се стигне до определен момент.

метод LineTo основава на схема права линия, която започва от текущата позиция на писалката и завършва PenPos точка (х, у). Текущи движи PenPos писалка позиция и завършва точка (х, у), с изключение на много точка (х, у). Момента позиция PenPos писалка премества в точка (х, у). При изготвянето използва текущите настройки на писалка писалка.

Форма 1. платно. MoveTo (х 1, у 1);

Насочва по части счупен права линия, свързваща точки (x1, y1), (x2, y2) и (x3, y3).

Променя текущата позиция на писалката на снимачната площадка, без да прави нищо в този случай.

MoveTo метод променя текущата позиция писалка до предварително определена точка (х, у). Това е еквивалентно на създаването директно с хотела PenPos. Ако преместите стилус метод MoveTo нищо се изтегля.

Обръща напълнен затворена форма - сегмент от кръг или елипса.

метод пай обръща затворена форма - сектор от кръг или елипса, използвайки текущите настройки писалката писалка. Фигура попълнено четка текущата стойност. Point (x1, y1) и (x2, y2), определен от правоъгълник, описващ елипса. Началната точка на дъгата се определя от точката на пресичане на елипсата с линията prohodyascheycherez му център и точка (х 3, Y3). Крайната точка на дъгата се определя от точката на пресичане на елипсата с линията, минаваща през центъра и точка (х4, Y4). Дъгата се изтегля обратно на часовниковата стрелка от началната точка до крайната точка на. Наравно линии очертаващ сегмент и минаваща през центъра на елипсата и точката (х 3, у 3) и (4 х, у 4).

Image1.Canvas.Pie (0,0, 200 200, 200,0, 0,0);

Image2.Canvas.Pie (0,0, 200 200, 0,0, 200,0);

Графични възможности Delphi

Бои за платно ток писалката затворени форма (полигон) на даден набор от ъглови точки, затваряне на първите и последните точки и картината над вътрешната област на формата на текущата четка.

Многоъгълника (точки: масив от TPoint);

метод многоъгълник обръща върху платно затворен фигура (многоъгълник, многоъгълник) през множество ъглови точки, предварително определен набор от точки. Първият от споменатите точки, свързани с линията на последния. Polygon Този метод се различава от Полилинии, която не се затваря крайните точки. Чертежът проведе ток Pen стилус. Вътрешната района на текущата цифра е боядисан с четка четка.

Рисува върху формата на платно правоъгълник на точките, определени по точка функции.

Чертае полигон в контур форма от точките, съхранявани в PointArray масив, който може да бъде обявена, например, както следва:

Var PointArray: масив [1..100] на TPoint;

Тя се основава форма полигон описание на първите 10 точки, съхранявани в PointArray масив от предишния пример.

Бои върху платно ток писалка по части линейна крива за даден набор от точки на.

Полигон (точки: масив от TPoint);

метод Полилинии основава на линейна крива платно по части от точки, установени определени масиви P oints. метод Полилинии за разлика от метода на Polygon е, че методът на Polygon затваря крайните точки, а методът на Полилинии - не. Чертежът проведе ток Pen стилус. Методът не се променя сегашната позиция PenPos Pen стилус.

Методът позволява да се направи графика на по части линейни функции съхраняват в тип TPoint масив. Ако е желателно да се използват, за да се направи само част от масив от точки, можете да го направите с помощта на функцията Slice. Ако трябва да се направи крива само на няколко точки, а след това да ги прехвърлите на метода на Полилинии е удобен за използване функция Point.

Това е, което прави метода Полилинии може да бъде направено с помощта на MoveTo и LineTo методи, първоначално сумиране писалка до първата точка, а след това непрекъснато вършат LineTo. Разликата ще бъде, че методът на Полилинии не се променя сегашната писалката и методите MoveTo и LineTo промяната.

Form1.Canvas. Полилиния ([точка (10,10), точка (30,10), точка (130,30), точка (240, 120)]); tsya инча този метод Полилиния schyu MoveTo и LineTo методи, първоначално сумиране писалка към първата точка. и след това

Насочва по части линейна крива с четири пункта определена точка на функциите на.

Var PointArray: масив [0..100] на TPoint;

процедура TForm1.Button1Click (Sender: TObject);

процедура TForm1.Button3Click (Sender: TObject);

Първата процедура Button1Click запълва масив PointArray точки, описващи графиката Син функция (х) за два периода (4). Втората процедура Button2Click на точки на масива обръща графика на платно Image1 компонент. Третата процедура Button3Click използва, за да се направи графиката първите 25 точки на масива.

Бои на правоъгълника платно и текущата писалката запълва настоящата си четка.

Правоъгълник метод черпи ток върху платно правоъгълник Pen писалка, в горния ляв ъгъл има координати (x1, y1) и долния десен - (x2, y2). Правоъгълник е боядисан с четка ток четка. Рисуване правоъгълник без рамка може да бъде постигнато чрез FillRect. Правоъгълник със заоблени краища, изготвен от RoundRect. Pryamougolnikbez вътрешния засенчване съставен от FrameRect.

Рисува върху правоъгълна рамка платно със заоблени ъгли.

метод RoundRect основава на правоъгълна рамка платно със заоблени ъгли, използвайки Pen писалката текущите настройки и пълнене областта на ток четка фигури четка. Рамката определя правоъгълник с ъглите координати (х1, Y1) и (x2, y2). Ъглите са заоблени, с помощта на многоточието с ширина и височина x3 y3 а.

Ако определя ширината на елипса x3 х2-X1, след това горните и долни граници на обхвата ще бъде напълно закръглени (без правата част). Ако y3 y2-y1, същото ще се случи с левия и десния границите на рамката. Ако двете измервания е по-малка от размера на елипсата не е рамката, той просто ще бъде изтеглен елипса. Но, разбира се, да се направи елипса Ellipse е по-добре да се използва метода. Ако една от размерите на елипсата настроен нула, той ще бъде боядисан в правоъгълна рамка, както и да получат по-добро използване на метода на обхват правоъгълник.

Задайте следните твърдения е по-голям, поза върху privedennomnizhe по-долу:

с Image1.Canvas направя