Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2006.01.29;
Скачать: [xml.tar.bz2];

Вниз

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

 
Карелин Артем ©   (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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.038 c
2-1137172222
n0p
2006-01-13 20:10
2006.01.29
Single => String


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


2-1137069390
Alexlovanov
2006-01-12 15:36
2006.01.29
кодировка


1-1135332163
DVDR
2005-12-23 13:02
2006.01.29
Файлы wks


2-1136796548
M@X_1
2006-01-09 11:49
2006.01.29
Подскажите чайнику





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский