ArcGIS Pro開發Web3D應用(1)——環境搭建與初始實例


1、搭建環境

1.1 ArcGIS Web3D軟件環境

  • ArcGIS Pro 2.0(必須)
  • ArcGIS for Enterprise 10.5.1 (從10.5開始稱呼為Enterprise)
    包括: 
  • ArcGIS Server 10.5.1(必須)
  • Portal for ArcGIS 10.5.1(必須)
  • ArcGIS Web Adpter (IIS) (必須,理論上一台服務器可安裝20+個)
  • ArcGIS Data Store 10.5.1(必須,三維緩存,關系數據庫PostgreSQL)
  • ArcGIS for Desktop 10.5.1(一般都安裝)
  • WebAppBuilder 2.4 (無代碼即應用)
  • ArcGIS Earth 1.0 (Web3D 瀏覽器,Option)
  • CityEgnine 2016/3d Max/Sketch Up(Option)
  • Oracle11G/12C\PostgreSQL\MongoDB(SDE托管,Option)

1.2 硬件配置

  推薦內存16G+(8G卡出翔),4G+獨立顯卡(三維很耗性能)

2、先看幾張成圖

1、Portal 中的三維Scene場景

2、WebAppBuilder中的三維場景

3、環境搭建要點

1、軟件安裝授權許可,安裝沒有順序,不過一般還是先Arcgis Desktop——ArcGIS Pro——ArcGIS Server——ArcGIS WebAdapter——ArcGIS Data Store過程,其他軟件后續安裝。

    此處詳細見《實踐 ArcGIS Web 3D》.

2、ArcGIS Pro授權許可要點

  現階段不存在破解可能,ESRI重點推薦產品,前期提供60天授權試用時間,后面只有21天試用了,試用申請地址:http://www.esri.com/arcgis/trial

  如果有正版授權最好了,試用許可提供5個Named User,200個credit。

3、ArcGIS WebAdapter配置

  從ArcGIS Server10.4(貌似10.3.1也有)開始,提供http和https雙重標准,推薦https安全協議。

  ArcGIS Server和Portal for ArcGIS默認都使用https,為此WebAdapter需要配置https方可使用,並且一般需要安裝2個WebAdapter來分別匹配Server和Portal。

  IIS/Tomcat配置https安全協議,如果有獨立域名可以申請正式SSL協議證書,如果沒有就使用自簽名證書(以IIS為例,如何創建自行搜索)。

  Portal for ArcGIS的WebAdapter要創建在默認80端口上,可以配置默認443的HTTPS;ArcGIS Server的WebAdapter可以任意端口配置。

4、ArcGIS Data Store安裝使用

  ArcGIS Data Store專用於Portal for ArcGIS使用,高性能,分布式部署備份(主從復制備份),此處參考《ArcGIS Data Store空間數據庫的那點事兒》,詳細描述安裝使用。

  注意1:這里安裝不能安裝在有空格的文件夾(比如Program Files)、不能有中文、最好根目錄的文件夾、一般需要10G多的空間;

  注意2:關系、切片緩存、時空3個類型的最好分開安裝,而且為了保存主從復制備份機制,一般需要2個數據庫存儲計算機。

  注意3:千萬要注意ArcGIS Data Store的通信端口(好幾個),在諸如VMVare\VSphere虛擬環境中,要開放端口(建立出入站規則);

  注意4:為了遠程訪問,一般建議使用IP來配置,比如輸入ArcGIS Server站點名稱:https://IP:6443,協議為https。

  

5、Portal for ArcGIS與ArcGIS Server聯合服務器

  1)注冊托管存儲器必須通過門戶WebAdapter的方式來進行,即不能通過7443的內部端口訪問;

   2)添加聯合服務器的時候分WebAdapter和內部6443的形式,碰到IP配置不成功的情況下,使用服務器機器名。

6、三維場景發布(Scene Layer)

  從CityEngine或其他三維軟件導入的要素,可以先導入GDB或通過“Layer 3D to Feature Class"預先處理下,為多面體要素(MultiPatch)。

  此處可參考《深度技術向:ArcGIS如何發布場景圖層

 1)一般登錄ArcGIS Pro后默認激活的是ArcGIS Online,需要切換到自己的Portal門戶。(在無網絡情況下,需要首先切換到offline模式)

  

  2)在Share Web Layer/Web Scene時出現發布失敗時可以,先”Create Scene Layer Package",然后再上傳發布共享使用。

4、前端開發初始實例

  WebStorm/VSCode,

//define(function () {
    var myMap, view;
    require([
      "esri/Basemap",
      "esri/layers/TileLayer",
      "esri/Map",
      "esri/views/MapView",
      "esri/views/SceneView",
      "esri/WebScene",
      "vue",
      "dojo/domReady!"
    ], function (Basemap, TileLayer, Map, MapView, SceneView, WebScene, Vue) {
        //esriConfig.portalUrl = "https://10.0.0.65/myportal";

        //創建VUE對象
        Vue.component("camara-info",{
            props:["camera"],
            template:"<div>"+
                "<h2>視角:</h2>"+
                "<p><strong>Heading</strong>:{{camera.heading.toFixed(3)}}</p>"+
                "<p><strong>Tilt</strong>:{{camera.tilt.toFixed(3)}}</p>"+
                "<p><strong>經度</strong>:{{camera.position.longitude.toFixed(3)}}</p>"+
                "<p><strong>緯度</strong>:{{camera.position.latitude.toFixed(3)}}</p>"+
                "</div>"
        });

        myMap = new Map({
            basemap: "hybrid",
            ground: "world-elevation"
        });

        // basemap: "osm",
        // ground: "world-elevation"
        var scene = new WebScene({
            portalItem: {
                id: "a38bd1cf11f548aaafe0b86560e6a5cd"  //Web Scene Layer在Portal中的ID
            }
        });


        view = new SceneView({
            container: "sceneviewDiv",
            map: scene
            //scale: 50000000,
            //center: [117.265, 34.57]
        });

        view.then(function () {
            var info = new Vue({
                el:"#info",
                data:{camera:view.camera}
            });
            view.ui.add(info.$el,"top-right");
            view.watch("camera",function () {
                info.camera = view.camera;
            });

        });


    });
//});

  到此,基於ArcGIS 的3D環境搭建和初始實例完成。

  【版權所有,轉載請說明出處,尊重原作。】

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM