實現的底層邏輯和方法跟實現popup彈窗功能類似,只需要修改對應的建立的html內容和css樣式,即可定義出更好看的標籤。
實現效果
原始碼labelplot 標籤類
const defaultnamefield =
"label"
;const defaultidfield =
"id"
;const billboardpointdatasourcename =
"labelplot_billboard_point"
/** * 標籤類
*/class
labelplot
let labelplotid = _this.
_getkeyval
(info.properties,defaultidfield);if
(!labelplotid)
_this.id = labelplotid;
_this.ctn =$(
"+ _this.id +
"'>");
$(_this.viewer.container)
.(_this.ctn)
; _this.ctn.
(_this.
_createhtml
(info.properties));
//生成底座小圓點if(
!!info.showbillboardpoint)
try)
}catch(e
)}//關閉當前標籤
close()
}//清除所有的小圓點
static
clearbillboardpointentitycollection()
)}}_render
(geometry)
else */}}
//生成標籤
_createhtml
(properties)
//生成底下的小圓點
_createbillboardpoint
(position)
}let entity =
newcesium.entity
(entityoption);if
(entity && myentitycollection)
return entity;
}_getkeyval
(data,keyname)}}
return keyval;
}_getbillboardpointentitycollection()
else
return myentitycollection;}}
export
default labelplot;
css樣式
.labelplot-container
.labelplot-content
.labelplot-container:before
呼叫示例
let labelplotlist =
;let handler3d =
newcesium.screenspaceeventhandler
(viewer.scene.canvas)
; handler3d.
setinputaction
(function
(click)
, showbillboardpoint:
true})
labelplotlist.
push
(labelplot);}
}}, cesium.screenspaceeventtype.
left_click
)//清除標籤if(
!!labelplotlist && labelplotlist.length))}
labelplotlist =
;
Cesium 結合canvas實現自定義氣泡點
canvas 首先利用canvas動態繪製氣泡 詳細看canvas簡述 固定 let canvas document.queryselector canvas let ctx canvas.getcontext 2d 這兩句 是獲取canvas標籤,獲取畫布 獲取上下文,獲取繪製的工具箱。canva...
Cesium介面自定義設定
二 自定義設定背景 1.css方式 在html頁面中 2.js方式var viewer new cesium.viewer cesiumcontainer 去除logo viewer.cesiumwidget.creditcontainer.style.display none 1.遮蔽天空盒,設定...
spring 自定義標籤實現
參考資料 dubbo對spring自定義標籤的擴充套件的實現 spring官方文件 42.1中,介紹了如何自定義spring標籤,步驟如下 1 編寫乙個xml schema描述您的自定義元素 2 編寫自定義命名空間處理程式實現,實現namespackhandler介面 3 編寫乙個或多個自定義的be...