Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.49 MB
Время: 0.023 c
8-1124463831
Артём
2005-08-19 19:03
2006.01.29
Проблема с DBCLICK


4-1132453919
hed
2005-11-20 05:31
2006.01.29
Системная директория Windows


15-1136731107
Kobik
2006-01-08 17:38
2006.01.29
Тупим. Помогите решить :)


5-1123256001
Radgar
2005-08-05 19:33
2006.01.29
Создание компонента


5-1123523118
leolick
2005-08-08 21:45
2006.01.29
отрубить DataSource но без DisableControls




   Наверх