国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

ArcGIS API for JavaScript 4.x 教程(四) 添加點(diǎn)、線和多邊形

這篇具有很好參考價(jià)值的文章主要介紹了ArcGIS API for JavaScript 4.x 教程(四) 添加點(diǎn)、線和多邊形。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

了解如何在地圖中顯示點(diǎn)、線和多邊形圖形。

圖形是用于在地圖或場景中顯示點(diǎn)、線、多邊形和文本的視覺元素。圖形由幾何圖形、符號(hào)和屬性組成,單擊時(shí)可以顯示彈出窗口。您通常使用圖形來顯示未連接到數(shù)據(jù)庫(即GPS位置)的地理數(shù)據(jù)。
在本教程中,您將學(xué)習(xí)如何將地圖上的點(diǎn)、線和多邊形顯示為圖形。

筆記
有關(guān)在應(yīng)用程序中實(shí)現(xiàn)圖形的更多背景信息,請(qǐng)?jiān)L問《映射API和位置服務(wù)》指南中的圖形、樣式和數(shù)據(jù)可視化。

步驟

創(chuàng)建新筆

若要開始,請(qǐng)完成“顯示地圖”教程或使用此筆。

設(shè)置API鍵

要訪問ArcGIS服務(wù),您需要一個(gè)API密鑰。
轉(zhuǎn)到您的儀表板以獲取API密鑰。
在CodePen中,將apiKey設(shè)置為您的密鑰,這樣它就可以用于訪問basemap層和位置服務(wù)。

esriConfig.apiKey = "YOUR_API_KEY";
const map = new Map({
  basemap: "arcgis-topographic" // Basemap layer service
});

添加模塊

在require語句中,添加Graphics和GraphicsLayer模塊。

  require([
    "esri/config",
    "esri/Map",
    "esri/views/MapView",

    "esri/Graphic",
    "esri/layers/GraphicsLayer"

    ], function(esriConfig,Map, MapView, Graphic, GraphicsLayer) {

添加圖形層

圖形層是圖形的容器。它與地圖視圖一起用于顯示地圖上的圖形??梢詫⒍鄠€(gè)圖形圖層添加到地圖視圖中。圖形圖層顯示在所有其他圖層的頂部。
創(chuàng)建并添加GraphicsLayer以存儲(chǔ)圖形。

  const view = new MapView({
    map: map,
    center: [-118.80500,34.02700], //Longitude, latitude
    zoom: 13,
    container: "viewDiv"
 });

 const graphicsLayer = new GraphicsLayer();
 map.add(graphicsLayer);

添加點(diǎn)圖形

點(diǎn)圖形是使用點(diǎn)和標(biāo)記符號(hào)創(chuàng)建的。一個(gè)點(diǎn)用經(jīng)度(x)和緯度(y)坐標(biāo)定義,一個(gè)簡單的符號(hào)用顏色和輪廓定義。Point和SimpleMarkerSymbol類用于創(chuàng)建點(diǎn)圖形。
創(chuàng)建將用于創(chuàng)建圖形的點(diǎn)和simpleMarkerSymbol。

 const point = { //Create a point
    type: "point",
    longitude: -118.80657463861,
    latitude: 34.0005930608889
 };
 const simpleMarkerSymbol = {
    type: "simple-marker",
    color: [226, 119, 40],  // Orange
    outline: {
        color: [255, 255, 255], // White
        width: 1
    }
 };

創(chuàng)建圖形并設(shè)置幾何圖形和符號(hào)特性。Graphic類在構(gòu)造時(shí)將自動(dòng)播放point和simpleMarkerSymbol。

 const pointGraphic = new Graphic({
    geometry: point,
    symbol: simpleMarkerSymbol
 });
 graphicsLayer.add(pointGraphic);

驗(yàn)證點(diǎn)圖形是否位于point Dume Beach。

添加線條圖形

直線圖形是使用多段線和直線符號(hào)創(chuàng)建的。多段線定義為一系列點(diǎn)和空間參照。Polyline和SimpleLineSymbol類用于創(chuàng)建線形圖形。
定義將用于創(chuàng)建圖形的多段線和simpleLineSymbol。

 // Create a line geometry
 const polyline = {
    type: "polyline",
    paths: [
        [-118.821527826096, 34.0139576938577], //Longitude, latitude
        [-118.814893761649, 34.0080602407843], //Longitude, latitude
        [-118.808878330345, 34.0016642996246]  //Longitude, latitude
    ]
 };
 const simpleLineSymbol = {
    type: "simple-line",
    color: [226, 119, 40], // Orange
    width: 2
 };

創(chuàng)建圖形并設(shè)置幾何圖形和符號(hào)特性。Graphic類將在創(chuàng)建多段線和simpleLineSymbol時(shí)自動(dòng)播放。

 const polylineGraphic = new Graphic({
    geometry: polyline,
    symbol: simpleLineSymbol
 });
 graphicsLayer.add(polylineGraphic);

驗(yàn)證線條圖形是否沿Westward Beach定位。

添加多邊形圖形

多邊形圖形是使用多邊形和填充符號(hào)創(chuàng)建的。多邊形被定義為描述閉合邊界和空間參考的一系列點(diǎn)(環(huán))。Polygon和SimpleFillSymbol類用于創(chuàng)建和顯示多邊形圖形。
定義將用于創(chuàng)建圖形的多邊形和simpleFillSymbol

 // Create a polygon geometry
 const polygon = {
    type: "polygon",
    rings: [
        [-118.818984489994, 34.0137559967283], //Longitude, latitude
        [-118.806796597377, 34.0215816298725], //Longitude, latitude
        [-118.791432890735, 34.0163883241613], //Longitude, latitude
        [-118.79596686535, 34.008564864635],   //Longitude, latitude
        [-118.808558110679, 34.0035027131376]  //Longitude, latitude
    ]
 };

 const simpleFillSymbol = {
    type: "simple-fill",
    color: [227, 139, 79, 0.8],  // Orange, opacity 80%
    outline: {
        color: [255, 255, 255],
        width: 1
    }
 };

創(chuàng)建圖形并設(shè)置幾何圖形和符號(hào)特性。Graphic類將在創(chuàng)建多邊形和simpleFillSymbol時(shí)自動(dòng)播放它。

 const polygonGraphic = new Graphic({
    geometry: polygon,
    symbol: simpleFillSymbol,

 });
 graphicsLayer.add(polygonGraphic);

驗(yàn)證多邊形圖形是否位于馬湖里維埃拉。

創(chuàng)建彈出窗口

單擊圖形時(shí),可以顯示圖形的彈出窗口。創(chuàng)建多邊形圖形以顯示包含圖形名稱和描述的彈出窗口的代碼使用attributes和popupTemplate屬性。
在主函數(shù)中,定義popupTemplate和attributes。

 const popupTemplate = {
    title: "{Name}",
    content: "{Description}"
 }
 const attributes = {
    Name: "Graphic",
    Description: "I am a polygon"
 }

更新polygonGraphic以包含popupTemplate和屬性屬性。

 const polygonGraphic = new Graphic({
    geometry: polygon,
    symbol: simpleFillSymbol,

    attributes: attributes,
    popupTemplate: popupTemplate

 });
 graphicsLayer.add(polygonGraphic);

完整代碼

<html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no">
  <title>ArcGIS Maps SDK for JavaScript Tutorials: Add a point, line, and polygon</title>
  <style>
    html, body, #viewDiv {
      padding: 0;
      margin: 0;
      height: 100%;
      width: 100%;
    }
  </style>
  <link rel="stylesheet" href="https://js.arcgis.com/4.27/esri/themes/light/main.css">
  <script src="https://js.arcgis.com/4.27/"></script>
  <script>

  require([
    "esri/config",
    "esri/Map",
    "esri/views/MapView",

    "esri/Graphic",
    "esri/layers/GraphicsLayer"

    ], function(esriConfig,Map, MapView, Graphic, GraphicsLayer) {

  esriConfig.apiKey = "YOUR_API_KEY";

  const map = new Map({
    basemap: "arcgis-topographic" //Basemap layer service
  });

  const view = new MapView({
    map: map,
    center: [-118.80500,34.02700], //Longitude, latitude
    zoom: 13,
    container: "viewDiv"
 });

 const graphicsLayer = new GraphicsLayer();
 map.add(graphicsLayer);

 const point = { //Create a point
    type: "point",
    longitude: -118.80657463861,
    latitude: 34.0005930608889
 };
 const simpleMarkerSymbol = {
    type: "simple-marker",
    color: [226, 119, 40],  // Orange
    outline: {
        color: [255, 255, 255], // White
        width: 1
    }
 };

 const pointGraphic = new Graphic({
    geometry: point,
    symbol: simpleMarkerSymbol
 });
 graphicsLayer.add(pointGraphic);

 // Create a line geometry
 const polyline = {
    type: "polyline",
    paths: [
        [-118.821527826096, 34.0139576938577], //Longitude, latitude
        [-118.814893761649, 34.0080602407843], //Longitude, latitude
        [-118.808878330345, 34.0016642996246]  //Longitude, latitude
    ]
 };
 const simpleLineSymbol = {
    type: "simple-line",
    color: [226, 119, 40], // Orange
    width: 2
 };

 const polylineGraphic = new Graphic({
    geometry: polyline,
    symbol: simpleLineSymbol
 });
 graphicsLayer.add(polylineGraphic);

 // Create a polygon geometry
 const polygon = {
    type: "polygon",
    rings: [
        [-118.818984489994, 34.0137559967283], //Longitude, latitude
        [-118.806796597377, 34.0215816298725], //Longitude, latitude
        [-118.791432890735, 34.0163883241613], //Longitude, latitude
        [-118.79596686535, 34.008564864635],   //Longitude, latitude
        [-118.808558110679, 34.0035027131376]  //Longitude, latitude
    ]
 };

 const simpleFillSymbol = {
    type: "simple-fill",
    color: [227, 139, 79, 0.8],  // Orange, opacity 80%
    outline: {
        color: [255, 255, 255],
        width: 1
    }
 };

 const popupTemplate = {
    title: "{Name}",
    content: "{Description}"
 }
 const attributes = {
    Name: "Graphic",
    Description: "I am a polygon"
 }

 const polygonGraphic = new Graphic({
    geometry: polygon,
    symbol: simpleFillSymbol,

    attributes: attributes,
    popupTemplate: popupTemplate

 });
 graphicsLayer.add(polygonGraphic);

 });
</script>
</head>
<body>
  <div id="viewDiv"></div>
</body>
</html>

運(yùn)行應(yīng)用程序

在CodePen中,運(yùn)行代碼以顯示地圖。
地圖應(yīng)顯示所有三種圖形。當(dāng)您單擊多邊形時(shí),它應(yīng)該顯示一個(gè)彈出窗口。

注明:翻譯自esri,僅供個(gè)人查閱使用,侵刪文章來源地址http://www.zghlxwxcb.cn/news/detail-645758.html

到了這里,關(guān)于ArcGIS API for JavaScript 4.x 教程(四) 添加點(diǎn)、線和多邊形的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • ArcGIS API for JavaScript Map與地圖控件

    ArcGIS API for JavaScript Map與地圖控件

    目錄 添加網(wǎng)頁 引用接口 添加模塊與模塊實(shí)例 獲取API密鑰 創(chuàng)建地圖 創(chuàng)建地圖視圖 添加圖形圖層 在底圖之間切換 在圖庫中選擇底圖 默認(rèn)底圖視圖(Home)控件 圖層列表(Layerlist)控件 圖例(Legend)控件 比例尺(ScaleBar)控件 指北針(Compass)控件 查看我的位置(Locate)控件

    2024年02月12日
    瀏覽(25)
  • ArcGIS API for JavaScript 4.x 實(shí)現(xiàn)動(dòng)態(tài)脈沖效果

    ArcGIS API for JavaScript 4.x 實(shí)現(xiàn)動(dòng)態(tài)脈沖效果

    主要通過定時(shí)刷新,每一次的脈沖渲染圈不停的放大,并且透明度縮小,直到達(dá)到一定的大小再退回0。 這個(gè)文件拿去可以直接使用,下面是引入的方式: 然后可以調(diào)用提供的方法實(shí)現(xiàn)動(dòng)態(tài)點(diǎn)的添加,動(dòng)畫的暫停和啟動(dòng)。

    2024年02月09日
    瀏覽(29)
  • ArcGIS API for JavaScript 3.44 地圖Demo示例合集

    用于JavaScript的ArcGIS API是在web應(yīng)用程序中嵌入地圖和任務(wù)的輕量級(jí)方法。您可以從ArcGIS Online、您自己的ArcGIS Server或其他服務(wù)器獲取這些地圖。 描述 此示例演示如何創(chuàng)建一個(gè)完整的頁面映射應(yīng)用程序。此示例創(chuàng)建一個(gè)以舊金山市為中心的新地圖,并將其中一個(gè)預(yù)定義的基本地

    2024年02月13日
    瀏覽(22)
  • arcgis for javascript api4.26 本地tomcat部署,以及解決跨域訪問問題

    arcgis for javascript api4.26 本地tomcat部署,以及解決跨域訪問問題

    一、配置java_jdk以及tomcat arcgis for javascript api 部署到本地服務(wù)器,可以是 iis ,也可以是 tomcat ,我這里是部署到tomcat,所以就 介紹一下tomcat上部署的步驟 。 如果電腦上有本地服務(wù)器的,可以跳過這一章,直接從第二章開始看 下載arcgis for javascript API 要部署到tomcat,咱得有tomcat

    2024年02月07日
    瀏覽(44)
  • ArcGIS JSAPI 學(xué)習(xí)教程 - 初識(shí) ArcGIS Maps SDK for JavaScript

    ArcGIS JSAPI 學(xué)習(xí)教程 - 初識(shí) ArcGIS Maps SDK for JavaScript

    近期由于工作需要,開始接觸 ArcGIS Maps SDK for JavaScript (以下簡稱 JSAPI ),為了更好的系統(tǒng)的學(xué)習(xí),準(zhǔn)備開設(shè)專欄,作為學(xué)習(xí)記錄。 本文作為第一篇,首先介紹一下 JSAPI 的概覽、官方示例以及官方 API。 然后完成 JSAPI 的 helloworld 以及注意事項(xiàng)。 最后簡述一下 JSAPI 的優(yōu)勢劣勢

    2024年01月19日
    瀏覽(122)
  • 超詳細(xì)圖文教程:3DS Max 中創(chuàng)建低多邊形游戲長劍模型

    超詳細(xì)圖文教程:3DS Max 中創(chuàng)建低多邊形游戲長劍模型

    推薦: NSDT場景編輯器助你快速搭建可二次開發(fā)的3D應(yīng)用場景 在此,由兩部分組成的教程的第一部分中,我將向您展示如何: 對(duì)劍柄進(jìn)行建模 劍的護(hù)手模型 劍刃建模 步驟 1 在本教程中使用 正交視圖 。要更改視圖,請(qǐng)單擊視口上任意位置的 鼠標(biāo)中鍵 或屏幕左上角的小按鈕。

    2024年02月16日
    瀏覽(23)
  • 使用c#實(shí)現(xiàn)一個(gè)簡單繪圖軟件(繪制矩形、多邊形,畫筆、橡皮擦功能)的完整教程

    使用c#實(shí)現(xiàn)一個(gè)簡單繪圖軟件(繪制矩形、多邊形,畫筆、橡皮擦功能)的完整教程

    c#是微軟提供的用于開發(fā)windows軟件的開發(fā)語言,可以使用其快速的實(shí)現(xiàn)windows桌面軟件的開發(fā)。這里基于C#開發(fā)了一款簡單的繪圖軟件,可以用于繪制矩形、多邊形的繪制(基于這些可以實(shí)現(xiàn)自己的數(shù)據(jù)標(biāo)注軟件),還實(shí)現(xiàn)了畫筆、橡皮擦功能。開發(fā)C#軟件通常使用Visual Studio軟

    2024年02月03日
    瀏覽(89)
  • 如何判斷兩個(gè)多邊形是否相交?——多邊形相交判定算法詳解

    如何判斷兩個(gè)多邊形是否相交?——多邊形相交判定算法詳解 在計(jì)算機(jī)圖形學(xué)中,判斷兩個(gè)多邊形是否相交是一項(xiàng)很重要的任務(wù)。這涉及到各種應(yīng)用場景,如碰撞檢測、模擬物理效果等。在本篇文章中,我們將會(huì)介紹多邊形相交判定算法的相關(guān)知識(shí)和實(shí)現(xiàn)方式。 首先,我們

    2024年02月14日
    瀏覽(86)
  • opencv 之 外接多邊形(矩形、圓、三角形、橢圓、多邊形)使用詳解

    opencv 之 外接多邊形(矩形、圓、三角形、橢圓、多邊形)使用詳解

    本文主要講述opencv中的外接多邊形的使用: 多邊形近似 外接矩形、最小外接矩形 最小外接圓 外接三角形 橢圓擬合 凸包 將重點(diǎn)講述最小外接矩形的使用 給一個(gè)opencv官方的例程: 過程圖像如下: 橢圓擬合一般用于輪廓提取之后: 凸包繪制 計(jì)算兩個(gè)旋轉(zhuǎn)矩形交集: C++版的最

    2024年02月09日
    瀏覽(228)
  • 3DS MAX三維建模平面基礎(chǔ)與初級(jí)多邊形(可編輯多邊形的講解)

    3DS MAX三維建模平面基礎(chǔ)與初級(jí)多邊形(可編輯多邊形的講解)

    ????????3DS MAX三維建模平面基礎(chǔ)與初級(jí)多邊形(可編輯多邊形的講解) ????????歡迎大家來學(xué)習(xí)3DS MAX教程,在這里先說一下研究好3ds Max一定要一邊看教程一邊要自己學(xué)的操作才能更快的進(jìn)步,預(yù)祝大家學(xué)習(xí)順利。 ? ? ? ? 這篇是第四篇關(guān)于3ds Max的文章了,基于上一

    2024年04月12日
    瀏覽(92)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包