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

Вниз

Подскажите программу для измерения расстояния   Найти похожие ветки 

 
Карелин Артем ©   (2006-01-10 12:46) [0]

между точками на экране.
Самому делать времени/желания нет. Нужно просто расстояние в пикселях и все.


 
Думкин ©   (2006-01-10 12:48) [1]

Фотошоп наверное или Маткад. Не знаю.


 
syte_ser78 ©   (2006-01-10 12:51) [2]

Да это очень сложная программа... :)
примерно следующего содержания

лабел1.каптион=sqrt(sqr(х-х_олд)-sqr(y-y_олд));

где х=моусе.курсорпоз.х
аналогично для у

И это вре запихнуть в обработчик таймера.


 
syte_ser78 ©   (2006-01-10 12:53) [3]

sqrt(sqr(х-х_олд)+sqr(y-y_олд));
есесно


 
Карелин Артем ©   (2006-01-10 13:04) [4]


> syte_ser78 ©   (10.01.06 12:51) [2]

Еще отслеживать тыки/перемещения мыши в неклиентской части экрана. Честно - не занимался ловлей таких событий и не хочу.


 
Барлог(с)   (2006-01-10 13:09) [5]

Если наро расстояние на рисунке померить - сними скриншот и вставь на форму.


 
Карелин Артем ©   (2006-01-10 13:13) [6]

На экране надо. Пока скриншоты делаю и в пайнт.


 
DiamondShark ©   (2006-01-10 13:13) [7]


> syte_ser78 ©   (10.01.06 12:53) [3]
> sqrt(sqr(х-х_олд)+sqr(y-y_олд));


. . . . . .
. . . . * .
. . . . . .
. . . . . .
. * . . . .
. . . . .
.


не работает формула ;)


 
Джо ©   (2006-01-10 13:34) [8]


Distance := Sqrt (Sqr(Pt1.x-Pt2.x)+Sqr(Pt1.y-Pt2.y))


 
Джо ©   (2006-01-10 13:36) [9]

Сорри, как-то проглядел [3] syte_ser78 ©


 
Ломброзо ©   (2006-01-10 13:38) [10]

Карелин Артем ©   (10.01.06 13:04) [4]
А формочку полупрозрачную поверх всего и на весь экран и на ней мерять. Выход - по Esc


 
syte_ser78 ©   (2006-01-10 14:21) [11]

Карелин Артем ©   (10.01.06 13:04) [4]
Неклиентская в смысле то что не в форме или то что не влезло в экран?
Если в первом смысле то алгоритм прокатит.


 
DiamondShark ©   (2006-01-10 14:29) [12]


> Джо ©   (10.01.06 13:34) [8]
>
> Distance := Sqrt (Sqr(Pt1.x-Pt2.x)+Sqr(Pt1.y-Pt2.y))

Если Pt1 = (0,0), Pt2=(100,100) формула даёт 141,42
А если пальцем по точкам посчитать, то там ровно 100


 
Карелин Артем ©   (2006-01-10 14:31) [13]


> syte_ser78 ©   (10.01.06 14:21) [11]

За пределами формы.

Как-то встречал в нете программу для вэб-мастера. Там экранная линейка была удобная и еще пара простеньких, но полезных приблуд. Думал подскажет кто это дело...


 
Джо ©   (2006-01-10 14:36) [14]

> [12] DiamondShark ©   (10.01.06 14:29)
> Если Pt1 = (0,0), Pt2=(100,100) формула даёт 141,42
> А если пальцем по точкам посчитать, то там ровно 100

Вывод: не нужно считать пальцем по точкам :)
А если серьезно, то понятие "расстояние по диагонали в пикселах" требует уточнения, конечно.


 
Юрий Зотов ©   (2006-01-10 14:46) [15]

А задача вообще-то решение имеет?

Пусть расстояние по X - 50 пикселей, по Y - 70 пикселей. Сколько пикселей будет по диагонали?

Ответ: уж точно не целое число. А "дробные пиксели" - это как-то что-то не то, видимо.

Так что решение есть только тогда, когда обе точки лежат на горизонтали, вертикали или диагонали квадрата. И оно тривиально.


 
Хинт ©   (2006-01-10 14:51) [16]

var
pt1,pt2:TPoint;
...
function Distance:integer;
begin
result:=Round(sqrt(sqr(pt1.x-pt2.x)+sqr(pt1.y-pt2.y)));
end;
...
procedure ...
begin
GetCursorPos(pt1);
end;

procedure ...
begin
GetCursorPos(pt2);
end;


 
DiamondShark ©   (2006-01-10 14:52) [17]


> А если серьезно, то понятие "расстояние по диагонали в пикселах"
> требует уточнения, конечно.

Если взять самое общее понятие "расстояние", как "кратчайший из возможных путей", то сразу видно, что в дискретном пространстве возможно два типа путей, в зависимости от того, какие точки считать соседними, -- четырёхсвязный и восьмисвязный.

Для четырёхсвязных путей расстояние бедет abs(x1-x2) + abs(y1-y2)
Для восьмисвязных -- max(abs(x1-x2), abs(y1-y2))


 
Ega23 ©   (2006-01-10 14:59) [18]

Screen надо использовать, вроде...


 
Jeer ©   (2006-01-10 16:32) [19]

CoolRuler.exe поищи.


 
Джо ©   (2006-01-10 17:11) [20]

А ведь, с другой стороны, почему допустимо считать расстояние только в целых пикселах? Например, разработчики GDI+ спокойно ввели в библиотеку возможность использования координат, заданных вещественными числами.



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

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

Наверх




Память: 0.51 MB
Время: 0.046 c
6-1130125898
Exorcist
2005-10-24 07:51
2006.01.29
Номера соединений у TSeverSocket


2-1136806368
psa247
2006-01-09 14:32
2006.01.29
TListItem ?


3-1133353334
alex_***
2005-11-30 15:22
2006.01.29
ORACLE и xml


2-1136744291
kami
2006-01-08 21:18
2006.01.29
Как связать TClient/ServerSocket через I-net


15-1136185376
begin...end
2006-01-02 10:02
2006.01.29
С Днём рождения! 2 января