arcgis.js steuert den Anzeigebereich des Kartenkörpers, sodass dieser automatisch zurückspringt, wenn er den Bereich überschreitet (Implementierungsideen)

arcgis.js steuert den Anzeigebereich des Kartenkörpers, sodass dieser automatisch zurückspringt, wenn er den Bereich überschreitet (Implementierungsideen)

Hintergrund

Vor einiger Zeit sind wir bei einem Unternehmensprojekt auf ein Problem gestoßen. Der Kartengrundkartenbereich hat nur einen Teilbereich. Wenn dieser den aktuellen Bereich überschreitet, wird ein weißer Hintergrund angezeigt, was in Bezug auf die Nutzungswirkung sehr schlecht ist. Die damit verbundenen Anforderungen sind, dass die Karte herausgezoomt werden soll und dass die Grundkarte zurückprallen muss, wenn die Maus die Karte über den Anzeigebereich der Grundkarte hinaus bewegt.

Wirkung

Bildbeschreibung hier einfügen

Ideen

1. arcgis.js steuert seinen Anzeigebereich und springt automatisch zurück, wenn er den Anzeigebereich der Basiskarte überschreitet. (1) Nachdem die Karte erstellt wurde, verwenden Sie das Listener-Ereignis, um auf die Änderung des Kartenbereichs zu hören, und rufen Sie die Methode shwoExtent auf, die die Werte der oberen linken und unteren rechten Ecke der Karte übergibt.

this.gisMap.on('Ausdehnungsänderung',this.showExtent)

(2) Bestimmen Sie, ob der aktuelle Kartenanzeigebereich den sichtbaren Bereich der Karte überschreitet, basierend auf der vollen Ausdehnung des maximalen Anzeigebereichs der Karte. Wenn der Bereich überschritten wird, wird der maximale Bereich der Karte angezeigt und die Karte wird neu ausgerichtet.

Codeausschnitt

// Ein hervorgehobener Block
let fullExtent = {
    xmin: xx,
    ymin: xx,
    xmax: xx,
    ymax: xx,
   }
zeigeExtent(extS){
   lass ext = extS.extent;  
    wenn (ext.xmin<diese.fullExtent.xmin||ext.xmax>diese.fullExtent.xmax||ext.ymax>diese.fullExtent.ymax||ext.ymin<diese.fullExtent.ymin) {
    let fullExtent = neues esri.geometry.Extent(
     {
      …dieses.volleExtent, 
      spatialReference:new esri.SpatialReference({ wkid: parseInt(4490) }) //SpatialReference legt das Koordinatensystem der Karte fest}
    );
    this.gisMap.setExtent(fullExtent);
   }
  },

Referenzdokument: https://developers.arcgis.com/javascript/3/jsapi/extent-amd.html

Hinweis: Wenn Sie die Dokumentation zu Rate ziehen, müssen Sie wissen, welche Version von arcgis.js im Projekt verwendet wird.

Dies ist das Ende dieses Artikels über die Steuerung des Anzeigebereichs von Kartenkörpern durch arcgis.js und die automatische Rückfederung, wenn der Anzeigebereich den Bereich überschreitet. Weitere relevante Inhalte zum Kartenanzeigebereich von arcgis.js finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den verwandten Artikeln weiter unten. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • ArcGIS für JS Raster-Layer-Overlay (Raster-Layer) Problem
  • So ändern Sie den Infofensterstil in ArcGIS für JS
  • Realisierung der Wirkung des ABCD-Markers der Baidu-Karte basierend auf ArcGIS für Javascript

<<:  MySQL5.6.31 winx64.zip Installations- und Konfigurationstutorial

>>:  Installieren und verwenden Sie Git und GitHub unter Ubuntu Linux

Artikel empfehlen

Implementierung der MySQL-Datendesensibilisierung (Telefonnummer, ID-Karte)

1. Erklärung zur Datendesensibilisierung Bei den ...

Detaillierte Erklärung zur Verwendung der Element-el-button-Button-Komponente

1. Hintergrund Schaltflächen werden sehr häufig v...

Dockers Mechanismus zur Integritätserkennung

Für Container ist die einfachste Integritätsprüfu...

Detaillierte Erklärung der in Node.js integrierten Module

Inhaltsverzeichnis Überblick 1. Pfadmodul 2. Bis ...

So installieren Sie MySQL 5.7.29 mit einem Klick mithilfe eines Shell-Skripts

Dieser Artikel bezieht sich auf die Arbeit des 51...

Implementierung einer nicht geheimen SSH-Kommunikation in Linux

Was ist SSH? Administratoren können sich remote a...

Detaillierte Erklärung zur Installation von PHP7 unter Linux

Wie installiere ich PHP7 unter Linux? 1. Installi...

Mehrere Methoden zur Implementierung von Karussellbildern in JS

Karussell Die Grundidee ist: Im großen Container ...

Lösung für „Spezialisierter Schlüssel war zu lang“ in MySQL

Inhaltsverzeichnis Lösung 1 Lösung 2 Beim Erstell...

Docker-Port-Mapping und externe Unzugänglichkeitsprobleme

Der Docker-Container stellt Dienste bereit und la...

So erstellen Sie MySQL-Indizes richtig

Die Indizierung ähnelt dem Erstellen bibliografis...

Detailliertes Beispiel für die Verwendung von MySQL-Triggern

Details zur MySQL-Triggersyntax: Ein Trigger ist ...

Beispielerklärung für langsame MySQL-Abfragen und -Protokolle

1. Einleitung Durch Aktivieren des Slow Query Log...