Disfactory / frontend

Frontend of disfactory.tw. Built with Vue.js. For backend please checkout https://github.com/Disfactory/Disfactory
https://disfactory.tw
MIT License
19 stars 16 forks source link

在新增工廠時顯示地號圖層 #96

Open Yukaii opened 3 years ago

Yukaii commented 3 years ago
Yukaii commented 3 years ago
new ol.layer.Tile({
  name: 'DMAPS',
  title: '地籍圖(僅供參考)',
  type: 'overlay',
  opacity: 1.0,
  visible: false,
  source: new ol.source.WMTS({
    url:
      'https://landmaps.nlsc.gov.tw/S_Maps/wmts/DMAPS/default/EPSG:3857/{TileMatrix}/{TileRow}/{TileCol}',
    layer: 'DMAPS',
    requestEncoding: 'REST',
    matrixSet: 'GoogleMapsCompatible',
    format: 'image/png',
    transparente: true,
    projection: projection,
    tileGrid: new ol.tilegrid.WMTS({
      origin: ol.extent.getTopLeft(projectionExtent),
      matrixIds: matrixIds,
      resolutions: resolutions,
    }),
    style: 'default',
    maxZoom: 21,
  }),
});
Yukaii commented 3 years ago

國土測繪雲 QA

https://maps.nlsc.gov.tw/MbIndex_qryPage.action?fun=5

「地籍圖」為特殊圖資,牽涉到原始資料與坐標系統不同等原因(請參考圖資說明),本系統試行以地籍圖原樣提供服務,但不包含地號顯示,因此圖形顯示上會有接邊重疊或空白間隔的情形發生,可由圖層設定內啟用地籍圖層,此地籍圖資料與地政事務所資料存在時間差,因此各種圖資套疊之結果,僅提供空間相對位置參考使用,同時亦提供地段地號定位供公眾使用參考。 查詢之地籍資料如涉及土地實際權利界址,應以各地政事務所鑑界為準。 目前地籍圖在不收費的情況下不能顯示地號。

為符合Open Data潮流,本系統自102年6月13日提供管有圖資全面開放WMS服務,開放圖資種類如下: 1、臺灣通用電子地圖及其透明圖層 2、臺灣通用正射影像 3、國土利用調查成果圖 4、段籍圖 5、村里界圖

因地籍圖閱覽為各地方政府的收費項目,因此僅提供顯示地籍圖經界線,但可用點選查詢功能查詢地號。 而地籍圖的資料其坐標並不與GPS坐標相同,因此必需依資料移至僅供參考的位置,但 查詢之地籍資料如涉及土地實際權利界址,應以各地政事務所鑑界為準。

請注意不可以預先將圖資大量的用 cache 的方式儲存於伺服器上再提供服務,這符合「著作權法」第3條的「重製」及「發行」,屬嚴重侵權的違法行為。

QQ

Yukaii commented 3 years ago

related #104

Yukaii commented 3 years ago
Screen Shot 2021-06-16 at 9 05 34 PM

用 proxy request 暫時可行,不過能不能這樣用需要諮詢 😨

const express = require('express');
const createProxyMiddleware = require('http-proxy-middleware');

const app = express();

app.use('/maps', createProxyMiddleware({
  target: 'https://landmaps.nlsc.gov.tw',
  changeOrigin: true,
  pathRewrite: {
    '^/maps': ''
  },
  headers: {
    Referer: 'https://maps.nlsc.gov.tw/'
  },
  onProxyRes: function (proxyRes, req, res) {
    proxyRes.headers['Access-Control-Allow-Origin'] = '*';
  }
}));

app.listen(8888);
Yukaii commented 3 years ago

https://github.com/Disfactory/frontend/blob/aaa3ba7497ac0794f266f26321992f94f6e168f7/src/lib/image.ts#L59-L77

想到操作 tile map image pixel 是否也算重置範疇,需要一起考量 😂 (動搖專案本)

deeper747 commented 3 years ago

這個我應該要去諮詢NLSC是嗎XD

cheweiliu commented 3 years ago

MOI_WFS_001地籍圖WFS 一般使用者: 依有效回傳筆數計費,每筆 1 元 https://cop.land.moi.gov.tw/Services/service_Info.aspx?serviceID=562943EA-0CA9-4758-8127-25DAD3E0605D 螢幕快照 2021-06-18 上午9 32 11

Yukaii commented 3 years ago

另一個方法可以從 Ronny 的 API 拿到地段範圍,並繪製於目前座標的圖層上

  1. 從 Easymap 拿到地段
  2. https://twland.ronny.tw/ 拿到圖資
  3. 繪製到地圖上

不過 1. 的 easymap 現在在後端是 async job,是否要開個 API、是否會增加後端負擔、速度表現,可能都需要再想想