new ov.ModelSetLayer()
模型集圖層
Extends
Members
-
boundary
-
Boundary
Properties:
Name Type Description Boundary
GeoBoundary 圖層邊界。
-
enableShadow
-
陰影顯示
Properties:
Name Type Description enableShadow
Boolean 是否顯示陰影
-
readonlyname
-
圖層名稱
Properties:
Name Type Description name
String 名稱。
-
show
-
圖層顯示
Properties:
Name Type Description show
Boolean 是否顯示圖層。
-
tooltipSetting
-
Tooltip設定。
Properties:
Name Type Description positionMode
ov.TOOLTIP_POSITION_MODE 定位模式。
show
Boolean 是否顯示。
offset
GeoPoint 偏移。
style
Object Tooltip style,可自行擴充。
preProcessing
ov.Layer~tooltipPreProcessingCallback 內容前處理方法。
positionPreProcessing
ov.Layer~tooltipPositionPreProcessingCallback 座標前處理方法。
Methods
-
addBuildingFloorColor(buildingID, buildingFloor, color, mix)
webgl/ov-ModelSetLayer.js, line 342 -
設定指定建築物ID樓層顏色。
Name Type Default Description buildingID
Number 建築物ID。
buildingFloor
Number 建築物樓層。
color
ov.Color new ov.Color("#FF0000") optional 顏色。
mix
Number 1.0 optional 混色權重。
-
enableAlphaTest(enable)
webgl/ov-ModelSetLayer.js, line 322 -
開關Alpha測試,判斷若圖點的透明度達到一定程度便直接不輸出該點。
Name Type Description enable
Boolean 是否使用Alpha Test
-
inherited enableOrderIndependentTransparency(enable)
webgl/ov-Layer.js, line 280 -
透明度是否使用OIT演算法,正確性較高但效能會降低。
Name Type Description enable
Boolean 啟用OIT透明。
-
getAttrs(id, callback)
webgl/ov-ModelSetLayer.js, line 42 -
取得指定圖素的所有屬性值。
Name Type Description id
Number 指定圖素的ID。
callback
ov.ModelSetLayer~getAttrsCallback 非同步取得屬性後的回呼。
-
getColAndAttrs(id, callback)
webgl/ov-ModelSetLayer.js, line 127 -
取得指定圖素的所有屬性欄位名稱和屬性值。
Name Type Description id
Number 指定建物的ID。
callback
ov.ModelSetLayer~getColAndAttrsCallback 非同步取得屬性後的回呼。
-
inherited getHeader(callback)
webgl/ov-Layer.js, line 96 -
取得圖層標頭物件。
Name Type Description callback
ov.Layer~setOnGetHeaderCallback 請求標頭物件的回呼,不給則同步回傳(不保證回傳速度)。
-
inherited goto(callback)
webgl/ov-Layer.js, line 288 -
飛到圖層的位置。
Name Type Description callback
ov.Layer~gotoCallback 移動完成後執行的回呼。
-
removeBuildingFloorColor(buildingID)
webgl/ov-ModelSetLayer.js, line 355 -
移除指定建築物ID樓層顏色。
Name Type Description buildingID
Number 建築物ID。
-
removeEntityColorFunction(){Boolean}
webgl/ov-ModelSetLayer.js, line 263 -
清除
ov.ModelSetLayer#setEntityColorFunction
設定的顏色函數。Returns:
Type Description Boolean 是否清除成功。 -
resetAllHideEntityID(){Boolean}
webgl/ov-ModelSetLayer.js, line 186 -
重設所有圖素隱藏狀態。
Returns:
Type Description Boolean 是否重設成功。 -
resetAllOpacityEntityID(){Boolean}
webgl/ov-ModelSetLayer.js, line 214 -
重設所有建築物不透明度。
Returns:
Type Description Boolean 是否重設成功。 -
searchByDistance(epsg, geo, distance, sql, callback)
webgl/ov-ModelSetLayer.js, line 97 -
查詢在指定幾何範圍以內的圖素,並以SQL篩選。
Name Type Description epsg
Number 幾何的EPSG。
geo
GeoPolygon 指定幾何。
distance
Number 指定距離,單位公尺。
sql
String SQL篩選條件。
callback
ov.ModelSetLayer~searchByDistanceCallback 查詢的回呼。
-
searchByInclude(epsg, geo, sql, callback)
webgl/ov-ModelSetLayer.js, line 80 -
查詢被指定幾何包圍的圖素,並以SQL篩選。
Name Type Description epsg
Number 幾何的EPSG。
geo
GeoPolygon 指定幾何。
sql
String SQL篩選條件。
callback
ov.ModelSetLayer~searchByIncludeCallback 查詢的回呼。
-
searchByIntersect(epsg, geo, sql, callback)
webgl/ov-ModelSetLayer.js, line 113 -
查詢在指定幾何相交的圖素,並以SQL篩選。
Name Type Description epsg
Number 幾何的EPSG。
geo
GeoPolygon 指定幾何。
sql
String SQL篩選條件。
callback
ov.ModelSetLayer~searchByIntersectCallback 查詢的回呼。
-
searchBySQL(sql, callback)
webgl/ov-ModelSetLayer.js, line 64 -
以SQL條件查詢圖層中的圖素。
Name Type Description sql
String SQL查詢條件。
callback
ov.ModelSetLayer~searchBySQLCallback 查詢的回呼。
-
inherited setAllowHoverEntity(allow)
webgl/ov-Layer.js, line 199 -
設定圖層的圖素是否能Hover。
Name Type Description allow
Boolean 是否能Hover。
-
inherited setAllowSelectEntity(allow)
webgl/ov-Layer.js, line 207 -
設定圖層的圖素是否能被選取。
Name Type Description allow
Boolean 是否能被點選。
-
setAlphaFunc(func, ref)
webgl/ov-ModelSetLayer.js, line 331 -
若有使用Alpha測試,則可設定Alpha參考值的值與比較方法
Name Type Description func
ov.ALPHA_TEST_FUNC 比較的方法
ref
Number 比較的值,0.0 ~ 1.0
-
setCullType(type)
webgl/ov-ModelSetLayer.js, line 55 -
設置剔除模式。
Name Type Description type
ov.ENUM_MESH_CULLTYPE 剔除模式。
-
inherited setDepthFunc(depthFunc)
webgl/ov-Layer.js, line 313 -
設置圖層深度測試的方式。
Name Type Description depthFunc
ov.DEPTH_FUNC 深度測試的方式。
-
setDrawEdge(enable)
webgl/ov-ModelSetLayer.js, line 363 -
設定是否繪製建物邊緣線。
Name Type Description enable
Boolean 是否繪製建物邊緣線。
-
setDrawMode(meshType, drawMode)
webgl/ov-ModelSetLayer.js, line 141 -
對指定建物類型設定作畫模式。
Name Type Description meshType
ov.MODELSET_MESHTYPE 要設定的建物類型。
drawMode
ov.MODEL_DRAWMODE 作畫模式。
-
inherited setDrawSelectedEntityOutline(isDraw)
webgl/ov-Layer.js, line 151 -
設定圖層的圖素是否顯示outline。
Name Type Description isDraw
Boolean 是否顯示。
-
setEdgeColor(color, opacity)
webgl/ov-ModelSetLayer.js, line 372 -
設定邊緣線顏色。
Name Type Description color
ov.Color 顏色。
opacity
Number 不透明度。
-
setEdgeZScale(scale)
webgl/ov-ModelSetLayer.js, line 423 -
設定邊緣線ZScale。
Name Type Description scale
Number ZScale的值。
-
setEntityColor(entityId, color, mix)
webgl/ov-ModelSetLayer.js, line 283 -
設定指定圖素顏色。
Name Type Description entityId
Number 指定圖素Id。
color
ov.Color optional 指定的顏色。
mix
Number optional 指定的混色比例。
Example
modelSetLayer.setEntityColor(1234, new ov.Color("#FFFFFF"), 1.0); //白色
modelSetLayer.setEntityColor(1234, new ov.Color("#FFFFFF"), 0.5); //原本的顏色與白色各半混色,比如這樣,會看起來有些像高亮
modelSetLayer.setEntityColor(1234, null); //清除顏色設定
modelSetLayer.setEntityColor(-1); //清除整張圖層的顏色設定 -
setEntityColorFunction(entityField, colorFunction){Boolean}
webgl/ov-ModelSetLayer.js, line 243 -
設置顏色函數,要注意提供的colorFunction性能。
Name Type Description entityField
Array.<String> 依據屬性的欄位名稱。
colorFunction
ov.ModelSetLayer~setEntityColorFunctionCallback 根據屬性輸出顏色的函數,傳入圖素ID、屬性、設定用的顏色,回傳false將此棟建物隱藏。
Returns:
Type Description Boolean 是否設置成功。 Example
modelSetLayer.setEntityColorFunction(["Type"], function(id, attrs, color) {
if (attrs[0] === "工業") {
color[0] = 255;
color[1] = 0;
color[2] = 0;
} else {
color[0] = 0;
color[1] = 0;
color[2] = 0;
}
return true;
}); -
setEntityColors(entityIds, colors, mix)
webgl/ov-ModelSetLayer.js, line 300 -
批次設定指定圖素顏色。
Name Type Description entityIds
Array.<Number> 批次指定圖素Id。
colors
Array.<ov.Color> optional 批次指定的顏色,若只給一個ov.Color則全部使用這個顏色。
mix
Number optional 指定的混色比例。
Example
modelSetLayer.setEntityColors([1,2,3,4], new ov.Color("#FFFFFF"), 1.0); //白色
modelSetLayer.setEntityColor([1,2,3,4], [new ov.Color("#FFFF00"), new ov.Color("#00FFFF"), new ("#FF00FF"), new ov.Color("#FFFF00")], 1.0);
modelSetLayer.setEntityColor([1,2,3,4], null); //清除顏色設定 -
inherited setEntitySelected(entityID)
webgl/ov-Layer.js, line 324 -
設定圖素選取狀態。
未選取則變成選取狀態。
選取則變成未選取狀態。
-1清除所有選取狀態。Name Type Description entityID
Number 圖素ID。
-
inherited setFadeNearFar(near, far){Boolean}
webgl/ov-Layer.js, line 272 -
設定圖層開始淡出與完全消失的距離。
Name Type Description near
Number 開始淡出的距離。
far
Number 完全消失的距離。
Returns:
Type Description Boolean 設定是否成功,當near > far時,會失敗。 -
setFloorModeScale(scale)
webgl/ov-ModelSetLayer.js, line 149 -
設定作畫時外牆的單位比例。
Name Type Description scale
Number 作畫時外牆的單位比例。
-
inherited setHide(mode)
webgl/ov-Layer.js, line 305 -
設定圖層隱藏模式。
Name Type Description mode
ov.HIDE 隱藏模式。
-
setHideByEntityID(entityId, mode){Boolean}
webgl/ov-ModelSetLayer.js, line 173 -
設定圖素隱藏模式。
Name Type Description entityId
Number 圖素ID。
mode
ov.HIDE 隱藏模式。
Returns:
Type Description Boolean 是否設定成功。 -
inherited setHoverEntityHighlightColor(color, opacity)
webgl/ov-Layer.js, line 188 -
設定圖層圖素的Hover高亮顏色。
Name Type Description color
ov.Color Hover高亮的顏色。
opacity
Number 不透明度。
-
setIDFilter(enable)
webgl/ov-ModelSetLayer.js, line 399 -
邊緣線是否使用ID過濾。
Name Type Description enable
Boolean true為開,false為關。
-
setInvisibleDraw(invisibleDraw){Boolean}
webgl/ov-ModelSetLayer.js, line 33 -
設定是否將圖素隱藏,與Show不同,仍可以被點選。
Name Type Description invisibleDraw
Boolean 是否隱藏圖素。
Returns:
Type Description Boolean 是否成功。 -
setNormalFilter(enable)
webgl/ov-ModelSetLayer.js, line 383 -
邊緣線是否使用法線向量過濾。
Name Type Description enable
Boolean true為開,false為關。
-
setNormalFilterSensitivity(sensitivity)
webgl/ov-ModelSetLayer.js, line 407 -
設定邊緣線法線向量過濾靈敏度。
Name Type Description sensitivity
Number 靈敏度。
-
inherited setOffset(x, y, z){Boolean}
webgl/ov-Layer.js, line 218 -
設定圖層的公尺平移量(目前僅支援PhotogrammetryModel、PointCloud、Model、ModelSet、Pipeline)。
Name Type Description x
Number 向東西方向偏移,單位為公尺。
y
Number 向南北方向偏移,單位為公尺。
z
Number 向垂直於地表方向偏移,單位為公尺。
Returns:
Type Description Boolean 變換是否成功,某些圖層不支持此操作時返回false。 -
inherited setOnClickEntity(callback)
webgl/ov-Layer.js, line 109 -
設定此圖層圖素被點擊時的回呼。
Name Type Description callback
ov.Layer~setOnClickEntityCallback 圖素被點擊時的回呼。
-
inherited setOpacity(opacity)
webgl/ov-Layer.js, line 143 -
設置圖層不透明程度。
Name Type Description opacity
Number 圖層不透明程度(0~1)。
-
setOpacityByEntityID(entityId, opacity){Boolean}
webgl/ov-ModelSetLayer.js, line 201 -
設定圖素不透明度。
Name Type Description entityId
Number 圖素ID。
opacity
Number 不透明度。
Returns:
Type Description Boolean 是否設定成功。 -
inherited setOutlineColor(VisibleColor, HiddenColor)
webgl/ov-Layer.js, line 160 -
設定選取圖層圖素的Outline顏色。
Name Type Description VisibleColor
ov.Color outline可視的顏色。
HiddenColor
ov.Color outline不可視的顏色。
-
setOverlayName(layerName){Boolean}
webgl/ov-ModelSetLayer.js, line 158 -
設定要疊加在ModelSetLayer上的Overlay圖層名稱,需先自行加Overlay。
Name Type Description layerName
Array.<String> 疊加的Overlay圖層名稱。
Returns:
Type Description Boolean 是否設定成功。 -
setPlaneFilter(enable)
webgl/ov-ModelSetLayer.js, line 391 -
邊緣線是否使用平面過濾。
Name Type Description enable
Boolean true為開,false為關。
-
setPlaneFilterSensitivity(sensitivity)
webgl/ov-ModelSetLayer.js, line 415 -
設定邊緣線平面過濾靈敏度。
Name Type Description sensitivity
Number 靈敏度。
-
inherited setResolutionScale(resolutionScale){Boolean}
webgl/ov-Layer.js, line 245 -
設定圖層解析度條件的Scale比例。
Name Type Description resolutionScale
Number 解析度條件的Scale比例(初始值1,越大越容易分裂,模型越細緻)。
Returns:
Type Description Boolean 是否設定成功。 -
inherited setRotate(degree){Boolean}
webgl/ov-Layer.js, line 227 -
設定圖層的旋轉量(目前僅支援PhotogrammetryModel、PointCloud、Model、ModelSet、Pipeline)。
Name Type Description degree
Number 旋轉角度。
Returns:
Type Description Boolean 變換是否成功,某些圖層不支持此操作時返回false。 -
inherited setScale(scale){Boolean}
webgl/ov-Layer.js, line 236 -
設定圖層的縮放量(目前僅支援PhotogrammetryModel、PointCloud、Model、ModelSet、Pipeline)。
Name Type Description scale
Number 縮放比例。
Returns:
Type Description Boolean 變換是否成功,某些圖層不支持此操作時返回false。 -
inherited setSelectedEntityHighlightColor(color, opacity)
webgl/ov-Layer.js, line 176 -
設定圖層圖素的選取高亮顏色。
Name Type Description color
ov.Color 選取高亮的顏色。
opacity
Number 不透明度。
-
inherited setUseFade(useFade)
webgl/ov-Layer.js, line 262 -
設定圖層是否開啟淡出功能。
Name Type Description useFade
Boolean 淡出開關。
-
inherited setZScale(zScale){Boolean}
webgl/ov-Layer.js, line 254 -
設定圖層的ZScale(ZScale:越小圖層越不會被遮擋)。
Name Type Description zScale
Number ZScale的值。
Returns:
Type Description Boolean 是否設定成功。
Type Definitions
-
getAttrsCallback(attrs)
webgl/ov-ModelSetLayer.js, line 45 -
Name Type Description attrs
Object | null 屬性物件。
- See:
-
getColAndAttrsCallback(attrs)
webgl/ov-ModelSetLayer.js, line 130 -
Name Type Description attrs
Object 屬性物件。
- See:
-
searchByDistanceCallback(entities)
webgl/ov-ModelSetLayer.js, line 100 -
Name Type Description entities
Object 圖素物件。
- See:
-
searchByIncludeCallback(entities)
webgl/ov-ModelSetLayer.js, line 83 -
Name Type Description entities
Object 圖素物件。
- See:
-
searchByIntersectCallback(entities)
webgl/ov-ModelSetLayer.js, line 116 -
Name Type Description entities
Object 圖素物件。
- See:
-
searchBySQLCallback(entities)
webgl/ov-ModelSetLayer.js, line 67 -
Name Type Description entities
Object 圖素物件。
- See:
-
setEntityColorFunctionCallback(id, attr, color)
webgl/ov-ModelSetLayer.js, line 251 -
Name Type Description id
Number 圖素id。
attr
Array.<String> 屬性。
color
Uint8Array 顏色。