Knoten im Hirn : Bild gedreht, flippen und zentriert zeichen

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Ist hat's sich ja wahrscheinlich eh schon erledigt - deshalb nur zum Spaß: Ich hab' mir Deinen Code angeschaut, ob's irgendwie kürzer geht:

    Quellcode

    1. NSAffineTransform* inv=[[[NSAffineTransform alloc] initWithTransform:t1] autorelease];
    2. [inv invert];
    3. tRect.origin=[inv transformPoint:NSMakePoint(rectBreite/2,rectHoehe/2)];
    4. tRect.origin.x-=fRect.size.width/2;
    5. tRect.origin.y-=fRect.size.height/2;
    6. tRect.size=fRect.size;

    direkt vors Malen - dann kann der ganze tRect-Kram vorher weg. Allerdings finde ich es persönlich sauberer, sich um die Koordinaten nicht händisch zu kümmern, sondern das alles gleich in die Transformation zu packen (wie in meinem Beispielprojekt oder vermutlich in dem, was Tom9811 gebastelt hat).

    Zwei Kleinigkeiten noch: ist "rect" das von drawRect: übergebene? Das würde ich nicht nehmen, sondern die bounds, denn Quartz darf m.E. Views auch teilweise malen. Und noch eine Besserwisserei: Ich würd's "roatationAngle" nehmen, "angel" sind die Dinger mit den Flügeln... :)
    Multigrad - 360°-Produktfotografie für den Mac
  • Original von mattik
    Zwei Kleinigkeiten noch: ist "rect" das von drawRect: übergebene? Das würde ich nicht nehmen, sondern die bounds, denn Quartz darf m.E. Views auch teilweise malen.

    Wird hier in dem Fall nie passieren und daher ist es irrelevant. Wenn das Bild größer als der Schirm ist, dann wird es passend verkleinert.
    Original von mattik
    Und noch eine Besserwisserei: Ich würd's "roatationAngle" nehmen, "angel" sind die Dinger mit den Flügeln... :)


    Ja jetzt wo Du es so sagst :) Ach ich hab hier und da ein paar Tippfehler drin und bin zu faul di zu ändern. Auch sind Variablen mal deutsch. mal englisch. Den Code wird eh niemand in die Finder bekommen und ich weiß was gemeint ist :)

    Das Example werde ich bei Gelegenheit mal einbauen.

    Sven
    :wq! /dev/null