Enschränkungen der GDI?!?



  • Hallo Leute,

    ich habe da ein Problem mit der GDI. Wie ich bereits gelesen habe, akzeptieren GDI-Befehle under Win9x nur echte 16Bit Koordinaten. Unter Win2k scheint sich das ganze auf ca. 130.000 Pixel ausdehnen zu lassen. So pervers das klingt, das ist mir zu wenig!!!
    Eigentlich geht es nur um einen simplen Grafen, den ich mit MoveTo, LineTo zeichne (reicht eigentlich auch voll und ganz) bis auf die Tatsache, das das Ding etwas größer ist.
    Hat jemand ne Idee, wie man diese Einschränkungen umgehen kann?

    Danke

    [ Dieser Beitrag wurde am 14.03.2003 um 18:26 Uhr von ManniHH editiert. ]



  • Sag doch erstmal was genau du vor hast. Ich kann mir nur sehr schlecht vorstellen, wo du eine so hohe Auflösung hast 😕 .
    Ausserdem sind die Koordinaten INTs, also 32Bit (4294967296 x 4294967296 Pixel)!



  • Original erstellt von D@niel $chumann:
    Sag doch erstmal was genau du vor hast. Ich kann mir nur sehr schlecht vorstellen, wo du eine so hohe Auflösung hast 😕 .
    Ausserdem sind die Koordinaten INTs, also 32Bit (4294967296 x 4294967296 Pixel)!

    In 16 Bit ist int aber 16 bit, ein long wäre in 16 bit auch 32 bit.



  • Ich versuche ein Programm zur Analyse sogennanter NMR-Spektren zu Schreiben. Das sind einfache XY-Kurven mit einer Auflösung von 32768 Punkten, sollen auf dem Monitor aber vergrößert dargestellt werden können, da jeder Punkt prinzipiell interessant ist. Also ist schon bei einer Vergrößerung um den Faktor 2 die 16Bit Grenze für Koordinaten erreicht! Ich möchte aber Vergrößerungen zwischen Faktor 5 und 10 (nach Möglichkeit) erreichen.

    Mein Problem liegt nicht in der Verarbeitung der eigentlichen Zahlen. Klar ist int 32bit breit, nur die GDI-Befehle höhren mit der Verarbeitung irgendwann auf, so daß meine Kurve ab einer gewissen Größe im Linken Teil doppelt und im rechten Teil gar nicht gezeichnet wird. Das ist sicher ein internes Problem der GDI und nicht der Variablentypen. Hier werden von den übergebenen 32bit anscheinened nur 17bit verarbeitet!

    Daher die Frage: Gibt es einfache Zeichenfunktionen im Stile von MoveTo/LineTo, die mehr als 130000 Pixel Auflösung verkraften?

    Sicher sind diese Auflösungen ungewöhnlich, die verdammten Graphen sind aber leider so lang 😞



  • Wie wäre es, wenn du nur das zeichnest, was man auch sieht ?



  • Hab ich auch schon probiert, dann kriege ich aber Probleme mit der Koordination der Scrollbars. Ist nicht sehr übersichtlich, wenn man zwar links einen Auschnitt zeichnet, die Scrolls dir aber nur den rechten Teil anzeigen...


Anmelden zum Antworten