Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   С/С++, C#, Delphi, .NET, Asm (https://forum.antichat.xyz/forumdisplay.php?f=24)
-   -   Задачка на графику в Delphi (https://forum.antichat.xyz/showthread.php?t=50407)

Knight_of_Darkness 03.10.2007 17:26

Задачка на графику в Delphi
 
Дано: Черный рисунок 300х100 пикселей, по которому произвольно расставлены 4 белых точки(по 1px). Задача в следующем: определить и вывести местоположение каждой точки.
Кто поможет - буду признателен.

a1ex 03.10.2007 17:29

ТОбишь, тебе нужно что бы пре запуске программы она посказывала координаты этих 4-ёх точек?

Knight_of_Darkness 03.10.2007 18:08

Ну не при запуске, а при нажатии на кнопку. И программа должна быть не консольной, а Vcl.

a1ex 03.10.2007 18:39

Блин дружище чё-та я немогу найти исходник похожой проги.
Найду - дам.
Ненайду сорри.

da_ff 04.10.2007 09:22

а где должны проходить оси координат?

Brun 04.10.2007 11:14

Цитата:

for i := 1 to 300 do
for j := 1 to 100 do
Begin
if (Form1.Image1.Canvas.Pixels [i,j] = 255) then
Begin
Form1.StringGrid1.Cells[0,RowCount-1] := IntToStr (i);
Form1.StringGrid1.Cells[1,RowCount-1] := IntToStr (j);
RowCount := RowCount + 1;
End;
End;
где 255 - цвет точки которых ты ищеш.

P.S. Не проверял, так как нет под рукой Delphi. Но принцып должен быть такой.

Knight_of_Darkness 06.10.2007 17:57

Решил пример так:
Код:


if (Form1.Image1.Canvas.Pixels [i,j] = $00FFFFFF) then
Begin
Form1.StringGrid1.Cells[0,Form1.StringGrid1.RowCount-1] := IntToStr (i);
Form1.StringGrid1.Cells[1,Form1.StringGrid1.RowCount-1] := IntToStr (j);
Form1.StringGrid1.RowCount := Form1.StringGrid1.RowCount + 1;
End;

заменил 255 на $00FFFFFF и получилось, сенкс. Всем, кто учавствовал ставлю +2 -- что могу.


Время: 22:32