Point in View

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

  • Point in View

    Heute habe ich eine kleine Frage.

    Ich habe mein Grundraster (UIView) der kann mit der Pinch Geste gezoomt werden und natürlich mit Pan verschoben werden.
    Auf diesem Grundraster werden meine UIImages platziert. Normalerweise liegt der Punkt x = displayBreite - 100, y = displayHoehe/2

    Nun habe ich das Problem wenn das Grundwasser gezoomt ist wird das UIImage außerhalb des sichtbaren Bereichs platziert.
    Was natürlich erst mal sehr blöd ist, da der User das Grundwasser verschieben muss um das neue Image zu sehen.

    Nun möchte ich das das Image nicht mehr an einer festen Position platziert wird sondern natürlich abhängig vom gezoomten Bereich, der ja auch verschoben sein kann.
    Natürlich habe ich ja im Grundraster iPhone 4s (0,0 480,320) dann auch negative x,y Werte und das Grundraster ist bei meinem 4s nicht mehr 480x320 sondern z.B.: Grundraster daten : -293.406128, -194.804260, 617.608521, 926.412781

    Es gibt doch Convert Point in View.......

    CGPoint p = [grundraster convertPoint:imageView.center fromView:grundraster];
    bringt mit hier nicht die Lösung.

    Schön wäre es wenn das UIImage (imageView) an der Position 380,160 platziert werden würde vom Fenster, und nicht im abhängig vom Koordinatensystem des Grundrasters.

    Wie kann ich nun raus finden wo der richtige Punkt ist damit das imageView rechte Seite in der Mitte auf dem grundraster platziert wird egal wie weit gezoomt und verschoben das Grundwasser ist.

    Ich habe mir die Apple Dev Doku auch angeschaut aber komme da leider auch nicht weiter.
    Wenn Dich alles verlässt kommt das allein sein.
    Wenn Du alles verlässt kommt die Einsamkeit.
  • ok. ich glaube ich habe die Lösung doch selber gefunden, manchmal steht man eben auf dem Schlauch ;)


    Quellcode

    1. CGPoint p = [grundraster convertPoint:input fromView:self.view];
    Input ist mein 380,160 Punkt an dem die images platziert werden sollen.
    Wenn Dich alles verlässt kommt das allein sein.
    Wenn Du alles verlässt kommt die Einsamkeit.
  • Svennse schrieb:

    CGPoint p = [grundraster convertPoint:imageView.center fromView:grundraster];
    bringt mit hier nicht die Lösung.
    Du konvertierst einen Punkt von einem View in den gleichen View. Damit ist p immer gleich imageView.center, wenn der Imageview im Grundraster liegt. Was soll das bringen?



    Svennse schrieb:

    Schön wäre es wenn das UIImage (imageView) an der Position 380,160 platziert werden würde vom Fenster, und nicht im abhängig vom Koordinatensystem des Grundrasters.
    Wenn du mit absoluten Koordinaten arbeitest, hast du einen falschen Ansatz.
    „Meine Komplikation hatte eine Komplikation.“
  • Es ist richtig, das das so mit dem imageView nicht funktioniert, da dieses ja auf dem grundraster platziert ist. :)

    Ich habe das imageView durch einen Punkt ersetzt und durch den Converter gejagt.
    Und dann habe ich dem ImageView.center den neuen Punkt p zugewiesen und das hat dann funktioniert :D

    In meinem zweiten Post habe ich ja die Lösung schon bepostet.
    Wenn Dich alles verlässt kommt das allein sein.
    Wenn Du alles verlässt kommt die Einsamkeit.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Svennse ()