Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.11;
Скачать: CL | DM;

Вниз

Заливка многогранника   Найти похожие ветки 

 
Larry ©   (2004-02-11 20:01) [0]

Как с помощью Brush залить многогранник, т.е. область определения фигуры задать с помощью пяти или шести точек???


 
KilkennyCat ©   (2004-02-11 22:39) [1]

procedure FloodFill(X, Y: Integer; Color: TColor; FillStyle: TFillStyle);

Description

Use FloodFill to fill a possibly non-rectangular region of the image with the value of Brush. The boundaries of the region to be filled are determined by moving outward from the point (X,Y) until a color boundary involving the Color parameter is encountered.

FillStyle determines what type of color changes define the boundaries, as indicated in the following table.

fsSurface Fill all area that has the color indicated by the Color parameter. Stop when another color is encountered.
fsBorder Fill all area that does not have the color indicated by the Color parameter. Stop when Color is encountered.

Use the Pixels property to get the exact value of the color at the point (X,Y) when using a FillStyle of fsSurface. Similarly, when FillStyle is fsBorder, use Pixels to get the exact value of the boundary color if a point on the boundary is known.


 
Larry ©   (2004-01-23 13:18) [2]

А если подробнее и на русском. Блин, ну это же форум. Неужели нельзя своими словами?!


 
able ©   (2004-02-12 15:33) [3]

Нет нельзя! Тут подробный ответ!!


 
Dmyk   (2004-02-12 19:52) [4]

FllodFill - заливка уже нарисованного прямоугольника.

ИМХО, если мы знаем точки и их кол-во фиксировано, то лучше использовать Polygon.

var
 MyPoints: array [0..5] of TPoint;
 I: Integer;
begin
 for I := 0 to 5 do begin
   MyPoints[I} := Point(Random(Width), Random(Height)
 end; {вообще-то лучше это в другом месте формировать}
 with Canvas do begin
   Brush.Color := $00FFFFC0; //типа clSkyBlue
   Pen.Width := 0;
   Polygon(MyPoints);
 end;
end;


 
Mihey ©   (2004-02-12 20:22) [5]

Dmyk верно говорит - порой может оказаться сложно определить такую точку для FloodFill, чтобы она была внутри многоугольника.


 
Larry ©   (2004-02-13 06:42) [6]

Спасибо, Dmyk! Bv[j? енто мне и нужно было!!!



Страницы: 1 вся ветка

Текущий архив: 2004.04.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.029 c
14-1079691434
zzzzzzzzzz
2004-03-19 13:17
2004.04.11
Странная штука - жизнь!


1-1080068374
Vovans
2004-03-23 21:59
2004.04.11
Фокус в MDI приложении.


14-1082195001
Sanek_metaller
2004-04-17 13:43
2004.04.11
Чисто интересно,какя музыка нравится Программистам?


1-1080027420
Tornado
2004-03-23 10:37
2004.04.11
Вызвать раздел справки


1-1079952775
SMT
2004-03-22 13:52
2004.04.11
Исходники Quick report: файл qrprev.pas