PDA

Показать полную графическую версию : Как узнать параметры мыши?


Страниц : 1 [2]

Grabber2006
15-09-2023, 09:06
Такой мышью будет невозможно перемещаться по одному пикселю. »
Наоборот, чем выше DPI мыши, тем точнее позиционирование курсора.

bredych
15-09-2023, 10:31
Не понимаю, что дадут 5 000 точек на дюйм. »
точность позиционирования

Qk3
15-09-2023, 10:50
Наоборот, чем выше DPI мыши, тем точнее позиционирование курсора. »Не подскажите, где почитать про этот процесс, что бы разобраться каким образом улучшается точность позиционирования курсора при повышении DPI мыши?

dmitryst
15-09-2023, 11:34
Qk3, Ну что вы как первый раз в интернете...

раз (https://ichip.ru/obzory/periferiya/dpi-dlya-myshi-naskolko-eto-vazhno-736092)
два (https://server.by/novosti-i-obzory/chto-takoe-dpi-myshi-i-skol-ko-ego-nuzhno.html)
три - с картинками даже (https://dtf.ru/esport/1440245-dpi-v-myshke-prosto-i-ponyatno-stoit-li-perehodit-na-400-dpi)

Qk3
15-09-2023, 11:59
Ну что вы как первый раз в интернете... »Не первый. Найти хорошую статью очень сложно.

Большое спасибо за ссылки! Но это не тех. информация. Таких статей в сети миллиарды...
Мне нужна конкретная информация, что и как работает, что при этом происходит, т.е. - принцип работы.

dmitryst
15-09-2023, 12:03
Qk3, да там по третьей ссылке вполне нормально объясняют, даже с картинками. Ну не переписывать же всё сюда...

Qk3
15-09-2023, 12:28
по третьей ссылке вполне нормально объясняют »Нормально. Но мне этого мало. Мне нужно видеть как управляющие перемещением курсора импульсы взаимодействуют с драйвером, с железом компьютера, что при этом происходит. Нет такой информации. Я привык к технической справочной литературе. Все, что нахожу в сети, для меня выглядит детским, поверхностным, не конкретным, не информативным, бестолковым, рекламно-маркетинговым.

Вот у меня есть поле точек - матрица монитора, напр. 800 х 600 точек. По идее, мышь должна посетить каждую точку, при ее перемещении. Расстояние, которое нужно преодолеть мыши по коврику, что бы она выдала один импульс, - это чувствительность мыши. Мышь можно переместить на 1 см, и только на 2-м см она выдаст следующий импульс. Но можно и так задрать чувствительность, что при перемещении мыши по коврику на 1 мм, она выдаст 5000 импульсов (курсор переместится на 5000 точек). Как управлять такой бешеной мышью? о_О

Grabber2006
15-09-2023, 12:55
Как управлять такой бешеной мышью? »
Масштабирование происходит. Чем больше чувствительность, тем больше возможных положений при том же расстоянии.

Qk3
15-09-2023, 13:11
Масштабирование происходит. »Как? Где читать?
Зачем 5000 возможных положений, если нужно только 1, - для перемещения мыши на 1 точку? о_О

dmitryst
15-09-2023, 13:16
Как управлять такой бешеной мышью? »
Просто )). Видимо, часть статей придется переписывать...
DPI - это количество точек на дюйм, в случае с мышью - количество независимых отсчетов на дюйм перемещения мыши. Т.е. если разрешение мыши 1000DPI, то при перемещении мыши на 1 дюйм строго по вертикали или горизонтали она выдаст 1000 независимых отсчетов, передавая их драйверу. Драйвер может преобразовать эти отсчеты в пикселы перемещения по экрану, используя настройки мыши типа "чувствительность" (множитель, то есть) и "ускорение" (тут, думаю, понятно). Если разрешение мыши мало, то получится "рисование кирпичом" (мышь при перемещении долго пересылает драйверу последний отсчет), если велико - всё будет плавно и гладко, но медленно. Поэтому обычно ставят среднее значение, которое оптимально для эффективной работы.

Зачем 5000 возможных положений »
вы знаете, что такое "дискретность"? Чем больше отсчетов, тем меньше дискретность и плавнее результат.

Qk3
15-09-2023, 14:11
независимых отсчетов »Что из себя представляет "независимый отсчет" на выходе мыши?
Цифровую "1" (какое-то напряжение), или пакеты импульсов определенной скважности, зависящей от скорости движения мыши? Хотелось бы это узнать.
Алгоритмы и коды драйверов - "тёмный лес". Это очень печально. Ничего не понятно. Только итоговые косвенные наблюдения..

часть статей придется переписывать... »
Каких статей?

количество независимых отсчетов на дюйм перемещения мыши »Это до формирования выходного сигнала, "кухня мыши"?

при перемещении мыши на 1 дюйм строго по вертикали или горизонтали она выдаст 1000 независимых отсчетов, передавая их драйверу »Если бы не драйвер, то курсор улетел бы за экран? Драйвер решает, сколько отсчетов уйдет на перемещение курсора на один пиксель?

"чувствительность" (множитель, то есть) и "ускорение" (тут, думаю, понятно) »Да, и понятно, и ничего не понятно. Понятно то, что происходит снаружи. И не понятно, что происходит внутри (в софте).

"рисование кирпичом" »Может - с тормозами?

разрешение ... если велико - всё будет плавно и гладко, но медленно. »У меня в голове все наоборот. При неизменных настройках дравера, мышь с малым к-вом отсчетов должна перемещаться медленно и точно, а с большим - летать как стрекоза, рывками.
Драйверу дали 1) 100 имульсов, 2) 10 000. Во втором случае драйвер сместит курсор на 100 расстояний 1-й мыши.

dmitryst
15-09-2023, 14:28
Что из себя представляет "независимый отсчет" на выходе мыши? »
ну вот смотрите.. Мышь стоит на месте, но комп (драйвер) ее опрашивает. Мышь выдает "стою на позиции 0, движения нет". Это условно отсчет 0. Далее, начинаем мышь двигать, двигаем потихоньку, двигаем... А мышь не видит, что ее двигают, по-прежнему выдает отсчет 0. Почему? Потому что сенсор (неважно, это "оптика" или "механика") с низким значением DPI, т.е. просто туповат. Двигаем дальше... "О, меня, кажется, подвинули!" - и выдает условный отсчет 1. Драйвер принимает отсчет 1, смотрит в переменные коэффициента умножения, коэффициента ускорения и (грубо говоря) двигает курсор на экране на определенное кол-во пикселов. Если разрешение сенсора выше, то он раньше поймет, что его сдвинули с "отсчета 0", и раньше выдаст "отсчет 1", далее по той же схеме. "Отсчет", если я правильно помню, это просто номер последовательности, обнуленной с момента включения мыши. Драйвер мыши опрашивает мышь с нужной частотой (можно установить в свойствах мыши в панели управления), так что тут не просто импульсы, а пакеты импульсов, содержащие закодированные параметры типа отсчетов и нажатых кнопок.
Цитата dmitryst:
количество независимых отсчетов на дюйм перемещения мыши »
Это до формирования выходного сигнала, "кухня мыши"? »
да, контроллер мыши определяет, что положение мыши изменилось, и вместо условной координаты 0,0 посылает 0,1
не понятно, что происходит внутри (в софте) происходит. »
исходники драйверов есть в свободном доступе, можете рассмотреть, как там и что (правда, они под *nix, но принцип понять можно)
мышь с малым к-вом отсчетов должна перемещаться медленно и точно »
мышь мы ведем медленно и с постоянной скоростью, а курсор на экране стоит. Ведем, ведем, бац! - курсор подвинулся! С большим значением DPI (отсчетов на дюйм) - ведем мышь так же, но курсор на экране движется более-менее равномерно, не рывками, потому что мышь чаще посылает сигнал драйверу "меня подвинули, двигай курсором давай!".

Qk3
15-09-2023, 14:54
Двигаем дальше... "О, меня, кажется, подвинули!" »Так это и нужно, что бы можно было без напряга работать с отдельными пикселями. Бешеную мышь еще не успел тронуть, как она уже через 10 пикселей перепрыгивает на 25-й.

Большое спасибо за подробности!

исходники драйверов есть в свободном доступе, можете рассмотреть, как там и что (правда, они под *nix, но принцип понять можно) »Я не программист, и не математик, боюсь, что ничего не пойму. Я не знаю высокоуровневые языки. Когда-то давно интересовался ассемблером. Но не было временени, что бы его хорошо освоить.

мышь мы ведем медленно и с постоянной скоростью, а курсор на экране стоит. Ведем, ведем, бац! - курсор подвинулся! »Именно это мне нужно. Что бы не перескакивать через пиксель.

С большим значением DPI ... курсор на экране движется более-менее равномерно, не рывками»Сколько мышей перепробовал, все они перепрыгивают через пиксель. Очень трудно выделять попиксельно. Только одна мышь справлялась более-менее хорошо - древняя Microsoft с шариком.
https://i.ibb.co/fHB89qy/1m.png

dmitryst
15-09-2023, 15:04
Бешеную мышь еще не успел тронуть, как она уже через 10 пикселей перепрыгивает на 25-й. »
снижайте DPI (обычно кнопка на корпусе или своя утилита, т.е. управляется с компа)
Я не программист »
я тоже :biggrin: так что тут сами..
Именно это мне нужно. Что бы не перескакивать через пиксель. »
нет-нет, если именно перескакивает через пиксель, это как раз настройка чувствительности в панели управления ("скорость перемещения указателя"). Потаскайте ее туда-сюда, и все поймете (с минимальной скоростью установить максимальное значение DPI на мыши, и наоборот).
И зачем вам попиксельная точность? Все порядочные редакторы графики имеют масштабирование аж с прошлого века ;)

Qk3
15-09-2023, 15:16
снижайте DPI »Чем хуже мышь с низким DPI? Какая разница, взять мышь 100500 DPI, снизить ее скорость до 400 DPI, и если взять простую мышь с 400 DPI? :)
Маркетинг, - чем выше "число", тем лучше (и дороже)? :)

настройка чувствительности в панели управления »Я эту настройку уже затаскал.. :)

И зачем вам попиксельная точность? »Я всю жизнь имел дело с мелкими вещами, - точность в руках большая. А тут мышь прыгает,.. как у алкаша с трясущимися руками. Бьет по мозгам.
Мне нужна нормальная мышь чисто для сохранения уравновешенности и комфорта.

Да, иногда пользуюсь масштабированием, когда нужна точость в 1 пиксель. Но это мне неудобно, и отнимает время.

dmitryst
15-09-2023, 15:23
Чем хуже мышь с низким DPI? »
она больше похожа на кирпич. Попробуйте кирпичом нарисовать что-то маленькое и аккуратное ;)
Я эту настройку уже затаскал.. »
потаскайте в комплексе с чувствительностью самой мыши (если есть таковые на самой мыше)
Я всю жизнь имел дело с мелкими вещами, - точность в руках большая. А тут мышь прыгает.. Бьет по мозгам. »
я вас не понимаю, ну да ладно. Мне проще масштаб увеличить и там мышью на пол-стола шерудить, чем.... ну, вы поняли :jester:

Qk3
15-09-2023, 15:34
я вас не понимаю »И не нужно. Кто-то поймет, кто-то нет. Суть не в этом. Просто мне нужна точная мышь. Вот и все.
Кому она не нужна, тот и искать не будет. А кому нужна - знает для чего.

потаскайте в комплексе с чувствительностью самой мыши (если есть таковые на самой мыше) »Таскал, DPI переключал. Все испробовал.




© OSzone.net 2001-2012