Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
Задачка на графику в Delphi |

03.10.2007, 17:26
|
|
Познающий
Регистрация: 03.02.2007
Сообщений: 94
Провел на форуме: 267066
Репутация:
165
|
|
Задачка на графику в Delphi
Дано: Черный рисунок 300х100 пикселей, по которому произвольно расставлены 4 белых точки(по 1px). Задача в следующем: определить и вывести местоположение каждой точки.
Кто поможет - буду признателен.
|
|
|

03.10.2007, 17:29
|
|
Banned
Регистрация: 11.10.2006
Сообщений: 682
Провел на форуме: 3750406
Репутация:
271
|
|
ТОбишь, тебе нужно что бы пре запуске программы она посказывала координаты этих 4-ёх точек?
|
|
|

03.10.2007, 18:08
|
|
Познающий
Регистрация: 03.02.2007
Сообщений: 94
Провел на форуме: 267066
Репутация:
165
|
|
Ну не при запуске, а при нажатии на кнопку. И программа должна быть не консольной, а Vcl.
|
|
|

03.10.2007, 18:39
|
|
Banned
Регистрация: 11.10.2006
Сообщений: 682
Провел на форуме: 3750406
Репутация:
271
|
|
Блин дружище чё-та я немогу найти исходник похожой проги.
Найду - дам.
Ненайду сорри.
|
|
|

04.10.2007, 09:22
|
|
Участник форума
Регистрация: 11.07.2006
Сообщений: 125
Провел на форуме: 413927
Репутация:
71
|
|
а где должны проходить оси координат?
|
|
|

04.10.2007, 11:14
|
|
Участник форума
Регистрация: 21.03.2006
Сообщений: 117
Провел на форуме: 629074
Репутация:
137
|
|
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. Но принцып должен быть такой.
|
|
|

06.10.2007, 17:57
|
|
Познающий
Регистрация: 03.02.2007
Сообщений: 94
Провел на форуме: 267066
Репутация:
165
|
|
Решил пример так:
Код:
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 -- что могу.
Последний раз редактировалось Knight_of_Darkness; 06.10.2007 в 19:05..
|
|
|
|
 |
Похожие темы
|
| Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
|
Small Delphi
|
begin_end |
С/С++, C#, Delphi, .NET, Asm |
10 |
11.11.2008 10:40 |
|
Pandora Delphi Pack v1.3
|
PandoraBox |
С/С++, C#, Delphi, .NET, Asm |
0 |
30.07.2007 23:26 |
|
Delphi, задачка
|
Knight_of_Darkness |
С/С++, C#, Delphi, .NET, Asm |
17 |
24.07.2007 23:56 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|