![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Dynamic Array
__ALX__ © (2003-03-10 23:58:00)Господа,
помогите.
Имеетя список (TList) в котором хранятся указатели на Tpoint, далее имеется номер первой точки фигуры, и количество точек.
Необходимо нарисовать регион (и закрасить его). Например: 1-ая точка фигуры - 120-ый элемент листа, количество точек полигона 6 (т.е. 120,121,122,123,124,125 элемент листа). Для рисования полигона необходимо указать массив с точками, и кол-во точек. Кол-во известно, а вот массив... Неизвестно заранее скока точек 5, 10 ,30...
Чувствую что необходимо будет использовать динамический массив... но как? В Дельфи (в хелпе) написано что так array of TBaseType.. но ведь tpoint - не Base.
__ALX__ (2003-03-11 22:33:00) [1]aga
ya obichno pol"zuyus WinAPI
polygon(Form1.canvas.handle,da[0],4);
toka ya pochemu to dumal, chto esli postavit" prosto
polygon(Form1.canvas.handle,da,4) , eto i budet ssilka na 1-iy element massiva...
MBo (2003-03-11 16:36:00) [2]В этом случае оно само определяется по high(da)
Хелп-то читал?
__ALX__ (2003-03-11 16:35:00) [3]canvas.Polygon(da);
a kolichestv?
MBo (2003-03-11 15:55:00) [4]или так
polygon(Form1.canvas.handle,da[0],4);
или так
canvas.Polygon(da);
__ALX__ (2003-03-11 15:45:00) [5]k primeru
var
list:tlist;
pt:^Tpoint;
da:array of tpoint;
begin
list:=tlist.create;
new(pt);
pt^.x:=100;
pt^.y:=120;
list.add(pt);
//nu i tak dalee, zapolnyayem list, dopustim tam 4 znacheniya
setlength(da,4);
pt:=list.items[0];
da[0].x:=pt^.x;
da[0].y:=pt^.y;
//i tak dalee
polygon(Form1.canvas.handle,da,4);
end;
MBo (2003-03-11 13:52:00) [6]покажи минимальный код
__Alx__ (2003-03-11 13:28:00) [7]Spasibo MBo,
ya tak proboval, no ne poluchaetsa... oshibok ne vidayot, no risuet bileberdu
MBo (2003-03-11 06:14:00) [8]var Pts:array of TPoint;
SetLength(Pts, число точек);
Pts[0]:=PPoint(List[120])^;
... и т.д. заполнение массива
Polygon(Pts);
array of TBaseType - имеется в виду, что тип элементов любой