![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
Здравствуйте! Есть двумерный массив координат объектов на Канве.
Хочу представить заполнение канвы графически. Код HTML:
Чтобы при совпадении чисел по горизонтали, шло сложение по вертикали. И результат построение кривой. Может кто подскажет что-нибудь похожее. |
|
#2
|
||||
|
||||
|
Пройти по массиву двумя циклами, если есть совпадения - сложить.
Код:
i:=0;
while i<cht-1 do
begin
j:=i+1;
while j<cht do
begin
if crdt[i,1]=crdt[j,1] then
begin
crdt[i,2]:=crdt[i,2]+crdt[j,2]
for k:=j to cht-1 do
begin
crdt[k,1]:=crdt[k+1,1];
crdt[k,2]:=crdt[k+1,2];
end;
dec(cht);
dec(j);
end;
inc(j);
end;
inc(i);
end;Offtop: Представляю, какая жуть получится... |
|
#3
|
|||
|
|||
|
Что-то не получается. как это сделать практически?
Canvas.MoveTo(0,0); Canvas.LineTo(crdt[k,1],crdt[k,2]); ReleaseDC(0, DC); Последний раз редактировалось pharmestik, 27.06.2011 в 18:12. |
|
#4
|
||||
|
||||
|
ReleaseDC тут ни при чем.
Код:
Canvas.MoveTo(crgt[0,1],crdt[0,2]); for i:=1 to cht-1 do Canvas.LineTo(crgt[i,1],crdt[i,2]); |
|
#5
|
||||
|
||||
|
А что удаляется строкой ReleaseDC(0, DC);?
p.s. ух, проспал. |