開始使用
起始版本: 1.1.0使用 mapThree.prototype.three 創建 3D 圖層

3D圖層操作
add3dLayer
add3dLayer(options, beforeLayerId)
新增 3D 圖層。
參數:
- options
Object
: 要設定的圖層參數。
名稱 | 描述 |
---|---|
options.id string | 圖層 ID(必填)。 |
options.minzoom number | 最小縮放 (0-24) (選填),當縮放級別小於 minzoom ,圖層將隱藏,預設為 12 |
options.maxzoom number | 最大縮放 (0-24) (選填),當縮放級別大於 maxzoom ,圖層將隱藏,預設為 24 |
- beforeLayerId
string
: 插入在指定圖層之前(選填),預設為undefined
。
範例:
remove3dLayer
remove3dLayer(id)
移除 3D 圖層。
參數:
- id
string
: 欲移除的圖層 ID。
範例:
3D物件操作
add3dModel
add3dModel(options)
新增 3D 模型。注意:模型新增為非同步操作。
參數:
- options
Object
: 要設定的模型參數。
名稱 | 描述 |
---|---|
options.layerId string | 圖層 ID(選填),預設為 'kw_3d_layer' 。如果找不到對應的圖層,將自動新增。若需自訂 minzoom 、maxzoom 或 beforeLayerId ,請使用 three.add3dLayer() 手動建立圖層 |
options.id string | 模型 ID(選填),預設使用 UUID |
options.obj string | 模型檔案(必填),可使用 URL 或是 Three.js Object3D |
options.type string | 模型檔案類型(選填),可設定為 'gltf' 、'fbx' 、'dae' ,若使用 Three.js Object3D 則免填,預設為 'gltf' |
options.coordinates array | 三維座標(必填) |
options.anchor string | 錨點(選填),可設定為 'auto' 、'top' 、'bottom' 、'left' 、'right' 、'center' 、'top-left' 、'top-right' 、'bottom-left' 、'bottom-right' ,預設為 'auto' |
options.scale Object | 縮放比例(選填),可填數字或是物件,預設為 { x: 1, y: 1, z: 1 } |
options.rotation Object | 旋轉角度(選填),預設為 { x: 0, y: 0, z: 0 } |
options.adjustment Object | 位置調整(選填),預設為 { x: 0, y: 0, z: 0 } |
options.hideWhenOutOfBounds boolean | 超出視窗時隱藏(選填),預設為 false |
回傳:
Promise<Object>
: 3D 模型,為非同步操作,詳情請看 3D 模型。
範例:
點選「開始使用」,即可開始操作地圖
使用 URL 新增 3D 模型:
使用 Three.js Object3D 新增 3D 模型:
add3dLine
add3dLine(options)
新增 3D 線條。
參數:
- options
Object
: 要設定的線條參數。
名稱 | 描述 |
---|---|
options.layerId string | 圖層 ID(選填),預設為 'kw_3d_layer' 。如果找不到對應的圖層,將自動新增。若需自訂 minzoom 、maxzoom 或 beforeLayerId ,請使用 three.add3dLayer() 手動建立圖層 |
options.id string | 線條 ID(選填),預設使用 UUID |
options.coordinates array | 線條的三維座標(必填) |
options.color string | 顏色(選填),預設為 '#000000' |
options.opacity number | 透明度(選填),預設為 1 |
options.width number | 寬度(選填),預設為 3 |
options.zCoordinate number | Z 座標(選填),若填入則會將所有座標的 Z 座標設為此值,預設為 undefined |
options.hideWhenOutOfBounds boolean | 超出視窗時隱藏(選填),預設為 false |
回傳:
Object
: 3D 線條。
範例:
點選「開始使用」,即可開始操作地圖
個別設定 Z 座標:
使用統一 Z 座標:
add3dDashLine
add3dDashLine(options)
新增 3D 虛線。
參數:
- options
Object
: 要設定的虛線參數。
名稱 | 描述 |
---|---|
options.layerId string | 圖層 ID(選填),預設為 'kw_3d_layer' 。如果找不到對應的圖層,將自動新增。若需自訂 minzoom 、maxzoom 或 beforeLayerId ,請使用 three.add3dLayer() 手動建立圖層 |
options.id string | 虛線 ID(選填),預設使用 UUID |
options.coordinates array | 虛線的三維座標(必填) |
options.color string | 顏色(選填),預設為 '#000000' |
options.opacity number | 透明度(選填),預設為 1 |
options.width number | 寬度(選填),預設為 3 |
options.zCoordinate number | Z 座標(選填),若填入則會將所有座標的 Z 座標設為此值,預設為 undefined |
options.dashSize number | 虛線大小(選填),預設為 1 |
options.gapSize number | 虛線間隔(選填),預設為 1 |
options.hideWhenOutOfBounds boolean | 超出視窗時隱藏(選填),預設為 false |
回傳:
Object
: 3D 虛線。
範例:
點選「開始使用」,即可開始操作地圖
個別設定 Z 座標:
使用統一 Z 座標:
add3dMeasureLine
add3dMeasureLine(options)
新增 3D 測量線。
參數:
- options
Object
: 要設定的虛線參數。
名稱 | 描述 |
---|---|
options.layerId string | 圖層 ID(選填),預設為 'kw_3d_layer' 。如果找不到對應的圖層,將自動新增。若需自訂 minzoom 、maxzoom 或 beforeLayerId ,請使用 three.add3dLayer() 手動建立圖層 |
options.id string | 測量線 ID(選填),預設使用 UUID |
options.start Array | 起點三維座標(必填) |
options.end Array | 終點三維座標(必填) |
options.lineColor string | 線條顏色(選填),預設為 '#613BFB' |
options.lineOpacity number | 線條透明度(選填),預設為 1 |
options.lineWidth number | 線條寬度(選填),預設為 5 |
options.labelColor string | 標籤顏色(選填),預設為 '#FC2B5F' |
options.labelFontSize string | 標籤字型大小(選填),預設為 '16px' |
options.hideWhenOutOfBounds boolean | 超出視窗時隱藏(選填),預設為 false |
回傳:
Object
: 3D 測量線。
範例:
點選「開始使用」,即可開始操作地圖
get3dObjectById
get3dObjectById(id)
使用 ID 獲取 3D 物件。
參數:
- id
string
: 3D 物件 ID。
回傳:
Object | null
: 3D 物件或是空值。
範例:
remove3dObjectById
remove3dObjectById(id)
使用 ID 移除 3D 物件。
參數:
- id
string
: 3D 物件 ID。
範例:
remove3dObject
remove3dObject(object)
移除 3D 物件。
參數:
- object
Object
: 3D 物件。
範例:
detect3dObject
detect3dObject(point)
偵測 3D 物件。
參數:
- point
Array
: canvas 座標。
回傳:
Object | null
: 3D 物件或是空值。
範例:
點選「開始使用」,即可開始操作地圖
鏡頭操作
fixedCameraToModel
fixedCameraToModel(options)
將鏡頭鎖定在模型上。
參數:
- options
Object
: 設定的參數。
名稱 | 描述 |
---|---|
options.model Object | 模型(必填) |
options.rotateWithDirection boolean | 是否隨著運動方向旋轉(選填),預設為 false |
options.releaseCameraOnClick boolean | 點選地圖後釋放鏡頭(選填),預設為 false |
範例:
點選「開始使用」,即可開始操作地圖
releaseCamera
releaseCamera()
釋放鏡頭。
範例: