Kartesisches-Koordinatensystem mit SDL



  • Guten Tag Community ;-),
    mal wieder stehe ich vor einem Problem und hoffe auf eure großartige Unterstützung ;-).
    Ich arbeite momentan an einem kleinden Editor für ein 2-dimensionales jump'n'run (ala Mario und co). Das ganze versuche ich mit SDL umzusetzen und habe auch schon einige Fortschritte gemacht ;-). Jetzt möchte ich folgendes erreichen: SDL arbeitet ja mit einem "Pixel-Koordinatensystem", dass oben links mit (0,0) beginnt. Das Koordinatensystem ins Zentrum zu verschieben ist jetzt kein Problem. Nun möchte ich aber das Koordinatenystem nicht nach Pixeln sondern z.B in cm angegeben haben, sowie ein Karthesisches aus der Mathematik. Ich dachte, man könnte das eventuel an Hand der Pixelgröße umrechnen. Allerdings ist die Pixelgröße abhängig von Variablen wie Auflösung etc.
    Hat jemand eine Idee, wie ich das umrechnen könnte???
    Falls sich jemand fragt, weshalb ich das überhaupt tue ;-). Es ist einfach auch ein wenig Übung.
    Ich bedanke mich auf jeden Fall bereits für jeden Hilfreichen Rat :-).
    Noch allen ein schönes Wochenende ;-).
    Gruß



  • Verschiebe doch die X bzw Y Koordinate um die halbe jeweils halbe breite bzw. höhe des Bildes und multipliziere dann mit einer Skalierungskonstanten. Wie viel Pixel sind denn bei dir in einem Zentimeter? Du willst doch von cm in px umrechnen. Du brauchst dann einen Wert wie viele Pixel in einem Zentimeter stecken. Deine Umrechnung von deinem gewünschten KS ins vorherige KS wäre dann:
    x = X * scale + SCREENX/2
    y = Y * scale + SCREENY/2

    Grüße, subcortex


Anmelden zum Antworten