3D模型
起始版本: 1.1.0使用 three.add3dModel 建立 3D 模型後,開始操作 3D 模型

新增 3D 模型後,即可進行屬性修改、路徑移動等操作:
屬性修改
setCoordinates
setCoordinates(coordinates)
設定 3D 物件座標。
參數:
- coordinates
Array
: 欲設定 3D 物件的座標。
範例:
setRotation
setRotation(rotation)
設定 3D 物件旋轉角度,注意:是依照 three.add3dModel
時設定的 rotation
為基準,再去另行設定旋轉角。
參數:
- rotation
Object
: 欲設定 3D 物件的旋轉角度,格式為{ x: 0, y: 0, z: 0 }
。
範例:
setScale
setScale(scale)
設定 3D 物件的縮放比例,注意:是依照 three.add3dModel
時設定的 scale
為基準,再去另行設定縮放比例。
參數:
- scale
number | Object
: 欲設定 3D 物件的縮放比例,格式可為數字或是{ x: 1, y: 1, z: 1 }
。
範例:
路徑移動
followPath
followPath(options)
3D 物件沿著路徑移動。
參數:
- options
Object
: 路徑移動選項。
名稱 | 描述 |
---|---|
options.path Array | 路徑(必填) |
options.start number | 開始時間(選填),預設為 Date.now() |
options.duration number | 持續時間(必填),單位為毫秒 |
options.trackHeading boolean | 模型是否面向路徑方向(選填),預設為 true |
options.curveOptions Object | 曲線選項,詳情參考 options.curveOptions |
options.onStart Function | 生命週期:開始時執行的回調函式 |
options.onEnd Function | 生命週期:結束時執行的回調函式 |
- options.curveOptions
Object
: 曲線選項。
名稱 | 描述 |
---|---|
curveOptions.closed boolean | 是否閉合(選填),預設為 false |
curveOptions.curveType string | 曲線類型(選填),可選值為 catmullrom 、cubicbezier 、quadraticbezier ,預設為 catmullrom |
curveOptions.tension number | 張力,預設為 0.0 |
範例:
接續下一個路徑移動:
點選「開始使用」,即可開始操作地圖
setPathScheduler
setPathScheduler(options)
設定 3D 物件路徑的時程表。
參數:
- options
Object
: 路徑時程表選項。
名稱 | 描述 |
---|---|
options.schedule Array<Task> | 任務時程(必填),詳情參考 Task |
options.trackHeading boolean | 模型是否面向路徑方向(選填),預設為 true |
options.curveOptions Object | 曲線選項,詳情參考 options.curveOptions |
options.taskOnStart Function | 生命週期:每個任務開始時執行的回調函式 |
options.taskOnEnd Function | 生命週期:每個任務結束時執行的回調函式 |
options.scheduleOnStart Function | 生命週期:時程表開始時執行的回調函式 |
options.scheduleOnEnd Function | 生命週期:時程表結束時執行的回調函式 |
- options.curveOptions
Object
: 曲線選項。
名稱 | 描述 |
---|---|
curveOptions.closed boolean | 是否閉合(選填),預設為 false |
curveOptions.curveType string | 曲線類型(選填),可選值為 catmullrom 、cubicbezier 、quadraticbezier ,預設為 catmullrom |
curveOptions.tension number | 張力,預設為 0.0 |
- Task
Object
: 任務。
名稱 | 描述 |
---|---|
Task.id string | 任務 ID(選填),若是有需修改任務時程,則需要使用 Task.id |
Task.departure string | 出發時間(必填),格式為 'HH:mm:ss' 或是 'HH:mm' |
Task.arrival string | 到達時間(必填),格式為 'HH:mm:ss' 或是 'HH:mm' |
Task.path Array | 路徑(必填) |
範例:
點選「開始使用」,即可開始操作地圖
updatePathScheduler
updatePathScheduler(schedule)
更新 3D物件路徑時程。
參數:
- schedule
Array<UpdatedTask>
: 欲修改的路徑時程。
名稱 | 描述 |
---|---|
UpdatedTask.id string | 任務 ID(必填) |
UpdatedTask.departure string | 出發時間(必填),格式為 'HH:mm:ss' 或是 'HH:mm' |
UpdatedTask.arrival string | 到達時間(必填),格式為 'HH:mm:ss' 或是 'HH:mm' |
範例: