Zoomfunktion mit Mausrad vb.net

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 24 Antworten in diesem Thema. Der letzte Beitrag () ist von Nofear23m.

    @nogood

    hat mit dem Kenntnisstand nix zu tun, wenn ich diese Wörter noch nie gehört habe woher soll ich wissen woher sie bedeuten. Es mag sein das das -Franky- Beitrag vllt ein guter Ansatz ist. Du hattest mir ja auch ein Beispiel geschickt mit deiner .Gif Datei mit dem MaxZoomen und dem MinZoomen, Wollte dich auch gefragt haben ob du mir zeigen könntest wo wie ich die Quellcode in meinem Projekt mit einbauen. Damit mit deiner Vorlageidee es testen kann, was ich da gebaut hatte. Es ist ein Versuch wert



    Wenn du ein Auto zur Werkstatt bringst weil dein Auto ein Fehler, fragst du den Meister ja auch was Kaputt war und nimmst es auch nicht so einfach mit bzw. machst eine Testfahrt damit. Um zu gucken ob der Fehler behoben wurde. ggf. fragst du den Fehler nach was kaputt war.

    mit Freundlichen Grüßen
    DerLaie
    @Der Laie

    Damit Du verstehst was ich meine, hab ich hier mal eine einfache SVG in der ZIP angehangen. Wenn Du die SVG mit einem Editor öffnest, sieht Du nur Text (XML).
    Für Dich wäre nur die Zeile <svg xmlns="http://www.w3.org/2000/svg" x="0" y="0" width="800" height="800" viewBox="0 0 800 800"> interessant. Die eigentlichen Objekte (hier 3 Kreise) wären stellvertretend für Deine Straßen, Gebäude usw. mach einen doppelklick auf die SVG und sie wird im Browser geöffnet. Schließe den Browser und ändere in der SVG die Werte der viewBox auf "0 0 1600 1600" und speicher das ganze. Doppelklick auf die SVG um diese wieder im Browser anzuzeigen. Das ganze ist nun um die Hälfte kleiner. Ändere viewBox wieder auf "0 0 800 800" und ändere die Werte von width und height auf 1600. Das ganze ist nun doppelt so groß. Ändere bei viewBox auf "100 100 800 800". Das ganze ist nun um 100 Pixel nach links und oben verschoben.

    Wie Du siehst ist es recht einfach eine SVG zu zoomen und den Inhalt zu verschieben ohne das was an den Objekten selbst etwas geändert werden muss. Das so die Grundidee.

    Zusatz: Vllt hilft Dir auch das hier weiter zum Verständniss was ich meine: Geh auf openstreetmap.org Klicke rechts in der grauen Leiste auf "Teilen". Bei "Bild" stellst Du das Format SVG ein und setzt das Häkchen bei "Ausschnitt festlegen". Stell den Maßstab zB. auf 1:22500 ein, zoom die Karte evtl. und mache einen entsprechenden kleinen Ausschnitt von zB 600x600 und klicke auf "Download". Du bekommst dann eine SVG von diesem Ausschnitt. Ändere die Werte in der SVG, wie ich das oben bereits beschrieben habe, um in die Karte herein oder heraus zu zoomen bzw den Inhalt zu verschieben.
    Dateien
    • circles.zip

      (502 Byte, 45 mal heruntergeladen, zuletzt: )
    Mfg -Franky-

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „-Franky-“ ()

    Der Laie schrieb:

    woher soll ich wissen woher sie bedeuten.
    Da gibt es eine Seite, wo man Worte und Wortgruppen erfragen kann, die einem unbekannt sind. So ungefähr: Google "das mir unbekannte Statement".
    Und sag jetzt nicht, dass Du das nicht kennst.
    Möglicherweise bist Du einfach zu träge, selbst etwas neues auszukundschaften.
    Du wartest lieber, bis es Dir hier im Forum vorgekaut wird. X(
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    @Der Laie du hast bereits mehrere Verwarnungen bez. des Anschreibens von anderen Usern bzw. wegen Fragen wie "Können wir per Messenger schreiben" bekommen und wurdest kürzlich auch deshalb gesperrt.
    Nun bist du so dreist und schreibst dies einem Moderator? Tut mir leid, das empfinde ich als puren Hohn !

    An alle in diesem Thread, sollte er euch per PN anschreiben bitte mir Bescheid geben. Eine Frechheit!

    Grüße
    If _work = worktype.hard Then Me.Drink(Coffee)
    Seht euch auch meine Tutorialreihe <WPF Lernen/> an oder abonniert meinen YouTube Kanal.

    ## Bitte markiere einen Thread als "Erledigt" wenn deine Frage beantwortet wurde. ##