diff --git a/src/Global/MultiViewportMode/index.js b/src/Global/MultiViewportMode/index.js
index 53ec9c0..9e61089 100644
--- a/src/Global/MultiViewportMode/index.js
+++ b/src/Global/MultiViewportMode/index.js
@@ -49,7 +49,11 @@ async function init(sdk) {
sdk2D.viewer.imageryLayers.removeAll()
for (let i = 0; i < imageryLayers.length; i++) {
let entity = sdk2D.viewer.imageryLayers.addImageryProvider(imageryLayers[i].imageryProvider, imageryLayers[i]._layerIndex)
+ if(imageryLayers[i]._id) {
+ entity._id = imageryLayers[i]._id
+ }
entity.show = imageryLayers[i].show
+ entity.alpha = imageryLayers[i].alpha
if (imageryLayers[i]._objectState) {
if (imageryLayers[i]._showView == 3) {
entity.show = false
@@ -136,7 +140,7 @@ async function syncData2(sdk, id, entityId) {
options.height = 0
}
- if (!that.type || (that.type !== 'tileset' && that.type !== 'bim' && that.type !== 'glb' && that.type !== 'layer')) {
+ if (!that.type || (that.type !== 'tileset' && that.type !== 'bim' && that.type !== 'glb' && that.type !== 'layer' && that.type !== 'wallStereoscopic')) {
if (that.showView == 3) {
options.show = false
}
@@ -227,7 +231,7 @@ async function syncData2(sdk, id, entityId) {
obj.options.heightReference = 1
}
let options = syncObject.tools.deepCopyObj(obj.options)
- if (!obj.type || (obj.type !== 'tileset' && obj.type !== 'bim' && obj.type !== 'glb' && obj.type !== 'layer')) {
+ if (!obj.type || (obj.type !== 'tileset' && obj.type !== 'bim' && obj.type !== 'glb' && obj.type !== 'layer' && obj.type !== 'wallStereoscopic')) {
if (obj.showView == 3) {
options.show = false
}
diff --git a/src/Global/mouseRightMenu/index.js b/src/Global/mouseRightMenu/index.js
index 0fd350e..24e360a 100644
--- a/src/Global/mouseRightMenu/index.js
+++ b/src/Global/mouseRightMenu/index.js
@@ -100,14 +100,14 @@ function MouseRightMenu(sdk, status, callBack) {
that = sdk.entityMap.get(entityId)
}
- if (that && that.picking) {
- addedMenu = `
-
-
- `
- }
+ // if (that && that.picking) {
+ // addedMenu = `
+ //
+ //
+ // `
+ // }
let position = tools.cartesian3Towgs84(cartesian, sdk.viewer)
menuElm = document.createElement('div')
menuElm.id = 'custom-menu'
diff --git a/src/Measure/MeasureDistance/index.js b/src/Measure/MeasureDistance/index.js
index 7bb3749..52755af 100644
--- a/src/Measure/MeasureDistance/index.js
+++ b/src/Measure/MeasureDistance/index.js
@@ -91,7 +91,7 @@ class MeasureDistance extends Measure {
//暂时固定取20个点
- if (d > 20) {//大于20m时,固定取20个点
+ if (d > 2) {//大于20m时,固定取20个点
meters = d / 20
await start(meters)
} else if (d < 1) {
@@ -106,8 +106,8 @@ class MeasureDistance extends Measure {
async sampleHeight(p1, index) {
- let p2 = await this.sampleHeightMostDetailed([p1])
- p1.alt = p2[0].height
+ let height = await this.getClampToHeight(p1, [...this.sdk.viewer.entities.values])
+ p1.alt = height
return {position: p1, index}
}
diff --git a/src/Obj/Base/BaseSource/BaseLayer/index.js b/src/Obj/Base/BaseSource/BaseLayer/index.js
index f4a0a79..083fd74 100644
--- a/src/Obj/Base/BaseSource/BaseLayer/index.js
+++ b/src/Obj/Base/BaseSource/BaseLayer/index.js
@@ -9,7 +9,7 @@
import Dialog from '../../../Element/Dialog';
import CoordTransform from "../../../../transform/CoordTransform";
import BaseSource from "../index";
-import { syncData } from '../../../../Global/MultiViewportMode'
+import { syncData, get2DView } from '../../../../Global/MultiViewportMode'
import { setSplitDirection, syncSplitData } from '../../../../Global/SplitScreen'
import { setActiveViewer, closeRotateAround, closeViewFollow } from '../../../../Global/global'
@@ -244,8 +244,19 @@ class BaseLayer extends BaseSource {
this.originalOptions = this.deepCopyObj(this.options)
this._DialogObject.close()
this.Dialog.confirmCallBack && this.Dialog.confirmCallBack(this.originalOptions)
- syncData(this.sdk, this.options.id)
+ // syncData(this.sdk, this.options.id)
syncSplitData(this.sdk, this.options.id)
+ let sdk2D = get2DView()
+ if (sdk2D && sdk2D != this.sdk) {
+ for(let i=0;i {
this.reset()
diff --git a/src/Obj/Base/BillboardObject/index.js b/src/Obj/Base/BillboardObject/index.js
index efcbfe7..c6275ee 100644
--- a/src/Obj/Base/BillboardObject/index.js
+++ b/src/Obj/Base/BillboardObject/index.js
@@ -433,31 +433,31 @@ class BillboardObject extends Base {
value: '链接',
key: 'link'
},
- {
- name: 'IP摄像头',
- value: 'IP摄像头',
- key: 'camera'
- },
// {
- // name: 'ISC摄像头',
- // value: 'ISC摄像头',
- // key: 'isc'
+ // name: 'IP摄像头',
+ // value: 'IP摄像头',
+ // key: 'camera'
+ // },
+ // // {
+ // // name: 'ISC摄像头',
+ // // value: 'ISC摄像头',
+ // // key: 'isc'
+ // // },
+ // // {
+ // // name: '传感器',
+ // // value: '传感器',
+ // // key: 'sensor'
+ // // },
+ // {
+ // name: '全景图',
+ // value: '全景图',
+ // key: 'vr'
// },
// {
- // name: '传感器',
- // value: '传感器',
- // key: 'sensor'
- // },
- {
- name: '全景图',
- value: '全景图',
- key: 'vr'
- },
- {
- name: '物资',
- value: '物资',
- key: 'goods'
- }
+ // name: '物资',
+ // value: '物资',
+ // key: 'goods'
+ // }
]
}
diff --git a/src/Obj/Base/PolylineObject/index.js b/src/Obj/Base/PolylineObject/index.js
index e184417..561c8c3 100644
--- a/src/Obj/Base/PolylineObject/index.js
+++ b/src/Obj/Base/PolylineObject/index.js
@@ -825,7 +825,6 @@ class PolylineObject extends Base {
set labelLineColor(v) {
this.options.label.lineColor = v
this.label.lineColor = v
- let _this = this
if (this._elms.labelLineColor) {
this._elms.labelLineColor.forEach((item, i) => {
let lineColorPicker = new YJColorPicker({
@@ -840,6 +839,29 @@ class PolylineObject extends Base {
}, //点击确认按钮事件回调
clear: () => {
this.labelLineColor = 'rgba(0,255,255,0.5)'
+ } //点击清空按钮事件回调
+ })
+ this._elms.labelLineColor[i] = lineColorPicker
+ })
+ }
+ }
+
+ get labelBackgroundColorStart() {
+ return this.options.label.backgroundColor[0]
+ }
+ set labelBackgroundColorStart(v) {
+ this.options.label.backgroundColor[0] = v
+ this.label.backgroundColor = [v, this.label.backgroundColor[1]]
+ if (this._elms.labelBackgroundColorStart) {
+ this._elms.labelBackgroundColorStart.forEach((item, i) => {
+ let labelBackgroundColorStartPicker = new YJColorPicker({
+ el: item.el,
+ size: 'mini', //颜色box类型
+ alpha: true, //是否开启透明度
+ defaultColor: this.labelBackgroundColorStart,
+ disabled: false, //是否禁止打开颜色选择器
+ openPickerAni: 'opacity', //打开颜色选择器动画
+ sure: color => {
this.labelBackgroundColorStart = color
}, //点击确认按钮事件回调
clear: () => {
@@ -848,10 +870,11 @@ class PolylineObject extends Base {
})
this._elms.labelBackgroundColorStart[
i
- ] = _this.labelBackgroundColorStartPicker
+ ] = labelBackgroundColorStartPicker
})
}
}
+
get labelBackgroundColorEnd() {
return this.options.label.backgroundColor[1]
}
diff --git a/src/Obj/Base/TrajectoryMotion/index.js b/src/Obj/Base/TrajectoryMotion/index.js
index e02a63a..167135a 100644
--- a/src/Obj/Base/TrajectoryMotion/index.js
+++ b/src/Obj/Base/TrajectoryMotion/index.js
@@ -2087,7 +2087,7 @@ class TrajectoryMotion extends Base {
rubricElm.style.color = '#ff5733';
rubricElm.style.display = 'none'
- rubricElm.innerHTML = `场景正北方向为轨迹前进正方向`
+ rubricElm.innerHTML = `场景正东方向为轨迹前进正方向`
let iconRubric = contentElm.getElementsByClassName('icon-rubric')[0]
iconRubric.addEventListener('mouseenter', (e) => {
rubricElm.style.display = 'block'
diff --git a/src/Obj/Base/WallStereoscopic/index.js b/src/Obj/Base/WallStereoscopic/index.js
index 938f2c1..49a0edf 100644
--- a/src/Obj/Base/WallStereoscopic/index.js
+++ b/src/Obj/Base/WallStereoscopic/index.js
@@ -88,6 +88,10 @@ class WallStereoscopic extends Base {
}
}
+ get type() {
+ return 'wallStereoscopic'
+ }
+
static createLabel(that) {
// 标签
that.label = new LabelObject(that.sdk, {
diff --git a/src/Obj/Base/index.js b/src/Obj/Base/index.js
index 3f16db4..fedb92a 100644
--- a/src/Obj/Base/index.js
+++ b/src/Obj/Base/index.js
@@ -290,7 +290,7 @@ class Base extends Tools {
let destination = Cesium.Cartesian3.fromDegrees(lng, lat, alt)
let position = { lng: 0, lat: 0 }
- if (this.options.position) {
+ if (this.options.position && Object.prototype.toString.call(this.options.position) === '[object Object]') {
position = { ...this.options.position }
}
else if (this.options.positions) {
@@ -436,7 +436,7 @@ class Base extends Tools {
let position = { lng: 0, lat: 0 }
let relativePosition = { ...cameraPosition84 }
- if (this.options.position) {
+ if (this.options.position && Object.prototype.toString.call(this.options.position) === '[object Object]') {
position = { ...this.options.position }
}
else if (this.options.positions) {
diff --git a/src/Obj/Element/richText.js b/src/Obj/Element/richText.js
index 072a599..c63614c 100644
--- a/src/Obj/Element/richText.js
+++ b/src/Obj/Element/richText.js
@@ -56,8 +56,8 @@ class richText {
MENU_CONF: {
uploadImage: {
fieldName: 'file',
- maxFileSize: 50 * 1024 * 1024,
- base64LimitSize: 50 * 1024 * 1024, // 50M 以下插入 base64
+ // maxFileSize: 50 * 1024 * 1024,
+ // base64LimitSize: 50 * 1024 * 1024, // 50M 以下插入 base64
server: this.uploadImageServer,
// // 上传之前触发
// onBeforeUpload(file) { // TS 语法
@@ -95,18 +95,18 @@ class richText {
// console.log(`${file.name} 上传出错`, err, res)
// },
- // // 自定义上传
- // async customUpload(file, insertFn) { // TS 语法
- // // async customUpload(file, insertFn) { // JS 语法
- // // file 即选中的文件
- // // 自己实现上传,并得到图片 url alt href
- // // 最后插入图片
- // console.log(file, insertFn)
- // insertFn(url, file.name)
- // }
+ // 自定义上传
+ async customUpload(file, insertFn) { // TS 语法
+ // async customUpload(file, insertFn) { // JS 语法
+ // file 即选中的文件
+ // 自己实现上传,并得到图片 url alt href
+ // 最后插入图片
+ let url = await _this.upload(file)
+ insertFn((_this.host = _this.host || getHost()) + '/' + url)
+ }
},
uploadVideo: {
- maxFileSize: 500 * 1024 * 1024,
+ // maxFileSize: 500 * 1024 * 1024,
server: this.uploadVideoServer,
allowedFileTypes: ['video/mp4', 'video/mp3', 'video/ogg', 'video/webm', 'video/avi'],
// 自定义上传
diff --git a/src/Obj/Materail/WallMaterialProperty.js b/src/Obj/Materail/WallMaterialProperty.js
index b71c889..bda11b0 100644
--- a/src/Obj/Materail/WallMaterialProperty.js
+++ b/src/Obj/Materail/WallMaterialProperty.js
@@ -70,7 +70,7 @@ function StreamWall1() {
fragColor.rgb = color.rgb / 1.0;\n\
fragColor = czm_gammaCorrect(fragColor);\n\
material.alpha = colorImage.a * color.a;\n\
- material.diffuse = (colorImage.rgb+color.rgb)/2.0;\n\
+ material.diffuse = color.rgb/20.0;\n\
material.emission = fragColor.rgb;\n\
return material;\n\
}";
@@ -208,6 +208,14 @@ function StreamWall2() {
Property.equals(this.repeat, other._repeat) &&
Property.equals(this.repeats, other._repeats)
};
+ // let code2 = 'material.diffuse = color.rgb*1.0;'
+ // if (uniforms.is2D) {
+ // code2 = `
+ // material.diffuse = color.rgb*0.0;
+ // material.emission = color.rgb * 1.0;
+ // `
+ // }
+ // console.log(code2, uniforms.is2D)
// 将定义的材质对象添加到cesium的材质队列中
Material._materialCache.addMaterial(MaterialType, {
fabric: {
@@ -230,8 +238,8 @@ function StreamWall2() {
else {
material.alpha = 1.0;
}
- material.diffuse = colorImage.rgb*color.rgb*0.0;
- material.emission = colorImage.rgb*color.rgb * 1.4;
+ material.diffuse = color.rgb*0.0;
+ material.emission = color.rgb * 1.0;
return material;
}`,
components: {
diff --git a/static/custom/fonts/PangMenZhengDaoBiaoTiTi-1.ttf b/static/custom/fonts/PangMenZhengDaoBiaoTiTi-1.ttf
index 61d491d..cd65b62 100644
Binary files a/static/custom/fonts/PangMenZhengDaoBiaoTiTi-1.ttf and b/static/custom/fonts/PangMenZhengDaoBiaoTiTi-1.ttf differ