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

Вниз

Dynamic Array   Найти похожие ветки 

 
__ALX__   (2003-03-10 23:58) [0]

Господа,
помогите.

Имеетя список (TList) в котором хранятся указатели на Tpoint, далее имеется номер первой точки фигуры, и количество точек.

Необходимо нарисовать регион (и закрасить его). Например: 1-ая точка фигуры - 120-ый элемент листа, количество точек полигона 6 (т.е. 120,121,122,123,124,125 элемент листа). Для рисования полигона необходимо указать массив с точками, и кол-во точек. Кол-во известно, а вот массив... Неизвестно заранее скока точек 5, 10 ,30...

Чувствую что необходимо будет использовать динамический массив... но как? В Дельфи (в хелпе) написано что так array of TBaseType.. но ведь tpoint - не Base.


 
MBo ©   (2003-03-11 06:14) [1]

var Pts:array of TPoint;

SetLength(Pts, число точек);
Pts[0]:=PPoint(List[120])^;
... и т.д. заполнение массива
Polygon(Pts);


array of TBaseType - имеется в виду, что тип элементов любой


 
__Alx__   (2003-03-11 13:28) [2]

Spasibo MBo,
ya tak proboval, no ne poluchaetsa... oshibok ne vidayot, no risuet bileberdu


 
MBo ©   (2003-03-11 13:52) [3]

покажи минимальный код


 
__ALX__   (2003-03-11 15:45) [4]

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 15:55) [5]

или так
polygon(Form1.canvas.handle,da[0],4);
или так
canvas.Polygon(da);


 
__ALX__   (2003-03-11 16:35) [6]

canvas.Polygon(da);

a kolichestv?


 
MBo ©   (2003-03-11 16:36) [7]

В этом случае оно само определяется по high(da)
Хелп-то читал?


 
__ALX__   (2003-03-11 22:33) [8]

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...




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

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

Наверх




Память: 0.48 MB
Время: 0.043 c
4-84831
Вадим
2003-04-05 18:49
2003.06.26
Прокрутка текста


1-84289
Александр из Минска
2003-06-07 21:34
2003.06.26
I/O error 32


14-84650
` frizZ. `
2003-06-10 12:07
2003.06.26
От чего зависит размер скомпилированного файла ?


14-84711
gn
2003-06-04 07:03
2003.06.26
голасование


14-84703
kull
2003-06-04 18:36
2003.06.26
А кто знает какие системы регистрации багов?