Ubuntu16.0.4 TileMill安裝部署及簡單使用

聲 明1 : 本人才疏學淺,用郭德綱的話說“我是一個小學生”,如有錯誤,歡迎討論,請勿謾罵^_^。
聲 明2 : 原創博客請在轉載時保留原文鏈接或在文章開頭加上本人博客地址,否則保留追究法律責任的權利。

簡介

TileMill is a modern map design studio。簡單來說,TileMill就是一個地圖設計器,簡化配圖設計的複雜度。
GitHub地址:傳送門
幫助文檔:傳送門

環境要求

  • Ubuntu 10.04+ (only tested with 18.04.2)
  • Node 8.11.x+ (may work on earlier version, not tested)
  • 2 GB memory
  • A modern browser (Chrome, Firefox)
  • Internet connection for remote datasources

準備工作

更換鏡像源爲阿里雲鏡像源,方便後面的下載Node.js引用的包。(這塊可以參考我之前的文章),這塊如果你有比較好用的梯子或者外國服務器的話,可以略過此步。

安裝

  1. 安裝Node.JS

    sudo apt install curl
    curl -sL https://deb.nodesource.com/setup_8.x | sudo bash -
    sudo apt-get install -y nodejs
    
  2. 安裝gcc

    sudo apt-get install gcc g++ make
    
  3. 安裝git並下載TileMill倉庫代碼

    sudo apt install git
    git clone https://github.com/tilemill-project/tilemill.git
    cd tilemill
    npm install
    
  4. 啓動TileMill服務

    ./index.js --server=true --listenHost=0.0.0.0 --coreUrl=${_SERVER_IP_}:20009 --tileUrl=${_SERVER_IP_}:20008
    

    如:./index.js --server=true --listenHost=0.0.0.0 --coreUrl=192.168.80.218:20009 --tileUrl=192.168.80.218:20008
    ${SERVER_IP} 請替換爲實際的服務器IP,然後在瀏覽器端輸入 ${SERVER_IP}:20009 就可以訪問TileMill了。如果一些順利的話,會看到如下的場景:
    在這裏插入圖片描述

  5. 後臺運行(可選)
    如果想後臺運行,建議安裝screen。關於screen的使用參考這篇博文linux screen工具

    apt install screen
    

簡單使用

  1. 新建工程
    在這裏插入圖片描述
  2. 添加數據,這塊我以postgis爲例
    在這裏插入圖片描述
    # 圖層ID,這塊我輸入的是building,後面配置符號是會使用
    # 數據庫連接信息
    host=192.168.90.110 port=5432 user=postgres password=postgres dbname=osm
    # 添加圖層SQL,這塊您也可以只保留您需要的字段,不建議使用*
    select gid,geom from gis_osm_buildings_a_free_1
    # 設置key Field,這塊我的是gid
    # 設置Geometry Field,這塊我的是geom
    # 設置Extent,這塊我選擇的是默認的,這塊您也可以指定好具體的範圍
    # 設置座標系SRS,這塊我選擇的WGS84
    
  3. 配置符號
    在右側的style.mss文件中,配置符號,配置完點擊右上角的save按鈕生效。
    在這裏插入圖片描述
    style.mss文件內容如下所示:
    Map {
      background-color: #b8dee6;
    }
    
    #building {
      ::outline {
        line-color: #85c5d3;
        line-width: 2;
        line-join: round;
      }
      polygon-fill: rgb(255,255,0);
    }
    #water {
      ::outline {
        line-color: #85c5d3;
        line-width: 2;
        line-join: round;
      }
      polygon-fill: rgb(0,255,255);
    }
    

這塊的顏色支持輸入以下幾種格式:
- rgb格式,如 rgb(128,128,128)
- argb格式,如rgba(128,128,128,1)
- 16進制顏色,如#ffff。(RGB顏色值與十六進制顏色碼轉換工具
5. 導出xml格式
在這裏插入圖片描述

符號化

條件符號化

繪製順序

TileMill的圖層順序可以在左側的圖層列表中看到,跳轉圖層順序可以將鼠標移動到幾何圖標處移動圖層。
在這裏插入圖片描述

  1. 圖層:“較高”圖層模糊“較低”圖層。
  2. 樣式表從左到右應用。
  3. 樣式表中的規則從上到下應用。

其他

待補充

參考資料

  1. Walkthrough: Creating tiles with Mapnik using TileMill
  2. TileMill 快速入門
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章