Hallo liebe Wissenden,
Ich schreibe im moment ein Programm das bestimmte Punkte auf einem 1680x1050 Bildschirm erfasst.
Ich habe gedacht, dass diese Punkte auch auf einem 1024x768
erfassbar sind doch, dazu brauche ich bestimmte Koordinaten und ich habe keine lust über 170 punkte auszuprobieren, da ich diese Punkte bereits auf einem 1680x1050 habe.
Und so habe ich mir gedacht, dass man dass mit dem Strahlensatz errechnen kann, aber irgendwie bekomme ich das net hin
ich habe das ganze in einem Bild veranschaulicht, wäre schön wenn jemand rat wüsste
http://img359.imageshack.us/img359/5130/strahlensatz…
A,B,C & D EckPunkte des 1024x768 monitor
E,F,G & H EckPunkte des 1680x1050 monitor
X der Punkt auf dem 1680x1050 Bildschirm den ich gerne auf dem 1024x768 hätte
Danke schon mal im Vorraus Sebastian
Ich schreibe im moment ein Programm das bestimmte Punkte auf
einem 1680x1050 Bildschirm erfasst.
deshalb gehoert der thread auch nach programmierung allg.
Ich habe gedacht, dass diese Punkte auch auf einem 1024x768
erfassbar sind doch, dazu brauche ich bestimmte Koordinaten
und ich habe keine lust über 170 punkte auszuprobieren, da ich
diese Punkte bereits auf einem 1680x1050 habe.
Und so habe ich mir gedacht, dass man dass mit dem
Strahlensatz errechnen kann, aber irgendwie bekomme ich das
net hin
ich habe das ganze in einem Bild veranschaulicht, wäre schön
wenn jemand rat wüsste
http://img359.imageshack.us/img359/5130/strahlensatz…
A,B,C & D EckPunkte des 1024x768 monitor
das ist ein koordinatensystem mit b[0,0] und d[1024,768]
E,F,G & H EckPunkte des 1680x1050 monitor
das ist ein koordinatensystem mit f[0,0] und h[1680,1050]
X der Punkt auf dem 1680x1050 Bildschirm den ich gerne auf dem
1024x768 hätte
nenne das X den punkt p[x,y] (damit man mit x und y koordinaten rechnen kann) und projeziere ihn als p’ auf das sytem abcd.
p’[x] = d[x] * ( h[x] / p[x] )
sinngemaess fuer den y teil
Hallo.
nenne das X den punkt p[x,y] (damit man mit x und y
koordinaten rechnen kann) und projeziere ihn als p’ auf das
sytem abcd.
p’[x] = d[x] * ( h[x] / p[x] )
sinngemaess fuer den y teil
Hast du hier nicht d und p vertauscht?
Meiner Meinung nach müsste das p’[x] = p[x] * (h[x] / d[x]) heißen.
Mal an einem kleinen Beispiel, angenommen d = 20, h = 100 und p = 10.
Der Punkt liegt also genau in der Mitte des Bildschirms, p’ müsste also in der Mitte des großen Bildschirms liegen, somit muss p’=50 rauskommen.
Deine Formel: p’ = 20 * (100/10) = 200, p’ liegt also außerhalb des Bildschirms.
Meine Formel: p’ = 10 * (100/20) = 50, scheint zu passen.
Sebastian.
Hallo.
nenne das X den punkt p[x,y] (damit man mit x und y
koordinaten rechnen kann) und projeziere ihn als p’ auf das
sytem abcd.
p’[x] = d[x] * ( h[x] / p[x] )
sinngemaess fuer den y teil
Hast du hier nicht d und p vertauscht?
Meiner Meinung nach müsste das p’[x] = p[x] * (h[x] / d[x])
heißen.
Mal an einem kleinen Beispiel, angenommen d = 20, h = 100 und
p = 10.
Der Punkt liegt also genau in der Mitte des Bildschirms, p’
müsste also in der Mitte des großen Bildschirms liegen, somit
muss p’=50 rauskommen.
Deine Formel: p’ = 20 * (100/10) = 200, p’ liegt also
außerhalb des Bildschirms.
Meine Formel: p’ = 10 * (100/20) = 50, scheint zu passen.
nein, fuer dein beispiel muss 2 rauskommen - „10 hunderstel von 20“
du hast aber recht, meine loesung habe ich verhauen. was ich eigentl. im sinn hatte war:
p’[x] = d[x] * p[x] / h[x]
„ueberkreuz“ halt.
Hallo.
Mal an einem kleinen Beispiel, angenommen d = 20, h = 100 und
p = 10.
Der Punkt liegt also genau in der Mitte des Bildschirms, p’
müsste also in der Mitte des großen Bildschirms liegen, somit
muss p’=50 rauskommen.
Deine Formel: p’ = 20 * (100/10) = 200, p’ liegt also
außerhalb des Bildschirms.
Meine Formel: p’ = 10 * (100/20) = 50, scheint zu passen.
nein, fuer dein beispiel muss 2 rauskommen - „10 hunderstel
von 20“
du hast aber recht, meine loesung habe ich verhauen. was ich
eigentl. im sinn hatte war:
p’[x] = d[x] * p[x] / h[x]
„ueberkreuz“ halt.
Tja, so ist das, wenn ich versuche, andere zu korrigieren. Da mach ich dann selber Fehler. Ich hatte irgendwie ABCD (und damit d) und EFGH (und damit h) vertauscht.
Sebastian.