Cum se adaugă caracteristici vectoriale într-o hartă a openlayers 3

OpenLayers este un instrument puternic jаvascript care ne permite să creăm și să afișăm tot felul de hărți pe un site web. Acest articol vă va ghida în adăugarea unui punct și o caracteristică a șirului de linie, apoi transformați proiecțiile lor pentru a utiliza coordonatele, apoi adăugați o culoare prin setarea stilului stratului.

Rețineți că trebuie să aveți o hartă de lucru OpenLayers instalată într-o pagină web pentru a urma acest articol. Dacă nu aveți unul, consultați Cum să faceți o hartă utilizând OpenLayers 3.

Pași

Partea 1 din 3:
Adăugarea caracteristicilor punctului și a liniei
1. Creați o caracteristică punct. Pur și simplu copiați următoarea linie de cod în dvs element:.
Var Point_Feature = New OL.Caracteristică({ })-
  • 2. Setați geometria punctului. Pentru a spune OpenLayers Unde să plasați punctul, trebuie să creați o geometrie și să o dați un set de coordonate, care este o matrice sub formă de [longitudine (e-w), latitudine (n-s)]. Următorul cod creează acest lucru și setul este geometria punctului:
    var punct_geom = nou ol.Geom.Punctul ([20, 20]) - Point_Feature.setgeometrie (punct_geom)-
  • 3. Creați o caracteristică a șirului de linie. Șirurile de linie sunt linii drepte rupte în segmente. Le creăm la fel ca punctele, dar oferim o pereche de coordonate pentru fiecare punct al șirului de linie:
    Var LineString_Feature = New OL.Caracteristică (geometrie: New OL.Geom.LINESTRING ([10, 20], [20, 10], [30, 20]])})-
  • 4. Adăugați caracteristicile unui strat vectorial. Pentru a adăuga funcțiile pe hartă, trebuie să le adăugați la o sursă, pe care o adăugați la un strat vectorial, pe care îl puteți adăuga apoi la hartă:
    var vector_layer = nou ol.strat.Vector ({sursa: nou ol.sursă.Vector ({caracteristici: [punct_feature, linestring_feature]})) hartă.Addlayer (vector_layer)-
  • Partea 2 din 3:
    Transformarea geometriei caracteristicilor pentru a utiliza coordonatele

    Ca și în cazul oricărui software puternic de cartografiere, Hărțile OpenLayers pot avea straturi diferite cu modalități diferite de afișare a informațiilor. Deoarece Pământul este un glob și nu plat, când încercăm să-l afișăm pe hărțile noastre plate, software-ul trebuie să ajusteze locațiile pentru a se potrivi cu harta apartament. Aceste modalități diferite de afișare a informațiilor despre hartă sunt numite Proiecții. Pentru a utiliza un strat vectorial și un strat de țiglă împreună pe aceeași hartă înseamnă că trebuie să transformăm straturile dintr-o proiecție la alta.

    1. Puneți caracteristicile într-o matrice. Începem prin punerea caracteristicilor pe care vrem să le transformăm împreună într-o matrice pe care o putem iterativa.
    VAR Caracteristici = [Point_Feature, LineString_Feature]-
  • 2. Scrieți funcția de transformare. În OpenLayers, putem folosi funcția de transformare () pe obiectul geometriei fiecărei funcții. Puneți acest cod de transformare într-o funcție pe care o putem apela mai târziu:
    Funcție transformare_geometry (element) {var actual_projection = nou ol.Proj.Proiecție ({cod: "EPSG: 4326"}) - Var New_Pojection = Tile_layer.GetSource ().GETPROJEION () - Element.Getgeometry ().Transformare (curent_projection, nou_projection) -) -}
  • 3. Apelați funcția de transformare a caracteristicilor. Acum pur și simplu iterați prin matrice.
    Caracteristici.foiach (transforma_geometry)-
  • Partea 3 din 3:
    Setarea stilului stratului vectorial

    Pentru a schimba ceea ce arată fiecare caracteristică pe hartă, trebuie să creăm și să aplicăm un stil. Stilurile pot schimba culorile, dimensiunile și alte atribute ale punctelor și liniilor și pot afișa și imagini pentru fiecare punct, care este foarte util pentru hărțile personalizate. Această secțiune nu este necesară, dar este distractivă și utilă.

    1. Creați umplerea și stoke. Creați un obiect de umplere și o culoare roșie semi-transparentă și un stil de curse (linie), care este o linie roșie solidă:
    Var Fill = New OL.stil.Completați ({culoarea: [180, 0, 0, 0.3]}) - Var Stroke = New OL.stil.Accident vascular cerebral ({culoarea: [180, 0, 0, 1], lățimea: 1})-
  • 2. Creați stilul și aplicați-l la strat. Obiectul stilului OpenLay este destul de puternic, dar vom stabili doar umplerea și accidentul pentru acum:
    VAR STYLE = New OL.stil.Stil ({imagine: Nou ol.stil.Cerc ({umple: umplere, cursa: cursa, raza: 8}), umplere: umplere, cursa: cursa}) - vector_layer.SetStyle (stil)-
  • Imagine intitulată 7062783 10
    3. Verificați harta finită.
  • sfaturi

    Nu vă fie frică să utilizați OpenLayers 3 Documentație API: Deși este copleșitor la început, este vital să învățați cum să faceți lucruri noi cu OpenLayers.
    Partajați pe rețeaua socială:
    Similar