| | |
| Stránka: 1 z 1
| [ Príspevkov: 5 ] | |
Autor | Správa |
---|
Registrovaný: 22.05.10 Prihlásený: 31.01.11 Príspevky: 9 Témy: 4 |
Zdravim, chcel by som sa spytat, ci by sa dalo v C++ Builderi naprogramovat pocitanie nabehanych pixelov mysi (nie pixelov monitora) s naslednym prepoctom tejto vzdialenosti na milimetre (zavisle od DPI mysi)? Dakujem
|
|
Registrovaný: 11.01.09 Prihlásený: 22.04.24 Príspevky: 1385 Témy: 9 Bydlisko: Hrinova | Napísal Fico: 07.09.2010 21:51 | |
|
Neviem, či som ťa správne pochopil (lebo neviem, aký je rozdiel medzi pixelmi myši a pixelmi monitora...), tak som narýchlo načmaral tento program:
Kód: #include "windows.h" #include <sstream> #include <string>
int main() {
int counter = 0; POINT pt, old; std::ostringstream stream; std::string vysledok;
GetCursorPos( &old ); // uloz pociatocnu polohu kurzora
while( !(( pt.x == 0 ) && ( pt.y == 0 )) ) { GetCursorPos( &pt ); // nasnimaj nove suradnice
if ( pt.x - old.x >= 0 ) // a pripocitaj prejdenu vzdialenost k pocitadlu counter += ( pt.x - old.x ); else counter += ( old.x - pt.x );
if ( pt.y - old.y >= 0 ) counter += ( pt.y - old.y ); else counter += ( old.y - pt.y );
old = pt; // nastavenie starych suradnic
}
stream << counter; vysledok = stream.str();
MessageBox( 0, vysledok.c_str(), "Result", MB_OK );
return 0;
}
Keď ho spustíš, začne zvyšovať premennú counter o každý pixel, ktorý prejdeš kurzorom (program zastaví, keď sa kurzor nachádza v ľavom hornom rohu [0, 0] a vypíše sa celková "prejdená dráha" ). Tak ak to je to, čo si potreboval, môžme to upraviť podľa tvojich potrieb.
|
|
Registrovaný: 22.05.10 Prihlásený: 31.01.11 Príspevky: 9 Témy: 4 |
Nefungovalo mi to, lebo tam bol na zaciatku problem so slozenou zatvorkou za "int main()" a potom na konci nieco s tym return 0, vdaka za pomoc, ale zistil som, ze keby som chcel snimat vzdialenost pomocou opt. mysi, tak by som sa jej pocas merania nemohol vobec dotknut a neviem ci by to fungovalo dost presne... Takze musim googlit nejaky novy sposob na meranie velmi malych vzdialenosti +/-10mm s presnostou na mikrometre a vysledne cislo aby bolo pouzitelne v C++ programe (cez USB).
|
|
Registrovaný: 29.10.08 Prihlásený: 30.07.12 Príspevky: 933 Témy: 2 | |
Registrovaný: 22.05.10 Prihlásený: 31.01.11 Príspevky: 9 Témy: 4 | |
| Stránka: 1 z 1
| [ Príspevkov: 5 ] | |
| Nemôžete zakladať nové témy v tomto fóre Nemôžete odpovedať na témy v tomto fóre Nemôžete upravovať svoje príspevky v tomto fóre Nemôžete mazať svoje príspevky v tomto fóre
|
|