| | |
| | | @click="underground" |
| | | >地下</el-button> |
| | | <el-button |
| | | v-if="$store.state.previewLayer.type != '3dml'" |
| | | size="small" |
| | | v-if="$store.state.previewLayer.type != '3dml' && |
| | | $store.state.previewLayer.type !='cpt'" |
| | | size=" |
| | | small" |
| | | @click="pickupCoords" |
| | | >拾取</el-button> |
| | | <el-button |
| | | v-if="$store.state.previewLayer.type != '3dml'" |
| | | size="small" |
| | | v-if="$store.state.previewLayer.type != '3dml' && |
| | | $store.state.previewLayer.type !='cpt'" |
| | | size=" |
| | | small" |
| | | @click="reload" |
| | | > |
| | | 重载 |
| | | </el-button> |
| | | <el-button |
| | | v-if="modelForm.modelid == null && $store.state.previewLayer.type != '3dml'" |
| | | v-if="modelForm.modelid == null && $store.state.previewLayer.type != '3dml'&& |
| | | $store.state.previewLayer.type !='cpt'" |
| | | size="small" |
| | | @click="getModeKeyId" |
| | | >模型主键</el-button> |
| | | <el-button |
| | | v-if="$store.state.previewLayer.type != '3dml'" |
| | | v-if="$store.state.previewLayer.type != '3dml'&& |
| | | $store.state.previewLayer.type !='cpt'" |
| | | size="small" |
| | | @click="resave" |
| | | >保存</el-button> |
| | |
| | | </el-form-item> |
| | | <el-form-item |
| | | label="经度:" |
| | | v-if="$store.state.previewLayer.type != '3dml'" |
| | | v-if="$store.state.previewLayer.type != '3dml'&& |
| | | $store.state.previewLayer.type !='cpt'" |
| | | > |
| | | <el-input |
| | | size="small" |
| | |
| | | </el-form-item> |
| | | <el-form-item |
| | | label="纬度:" |
| | | v-if="$store.state.previewLayer.type != '3dml'" |
| | | v-if="$store.state.previewLayer.type != '3dml'&& |
| | | $store.state.previewLayer.type !='cpt'" |
| | | > |
| | | <el-input |
| | | size="small" |
| | |
| | | </el-form-item> |
| | | <el-form-item |
| | | label="高度:" |
| | | v-if="$store.state.previewLayer.type != '3dml'" |
| | | v-if="$store.state.previewLayer.type != '3dml'&& |
| | | $store.state.previewLayer.type !='cpt'" |
| | | > |
| | | <el-input |
| | | size="small" |
| | |
| | | </el-form-item> |
| | | <el-form-item |
| | | label="角度:" |
| | | v-if="$store.state.previewLayer.type != '3dml'" |
| | | v-if="$store.state.previewLayer.type != '3dml'&& |
| | | $store.state.previewLayer.type !='cpt'" |
| | | > |
| | | <el-input |
| | | size="small" |
| | |
| | | isJpg: false, |
| | | src: '' |
| | | }, |
| | | modelType: ['ifc', 'fbx', 'rvt', '3dml'], |
| | | modelType: ['ifc', 'fbx', 'rvt', '3dml', 'cpt'], |
| | | editModelFlag: false, |
| | | modelForm: { |
| | | lon: 119, |
| | |
| | | var modelKey = 'id'; |
| | | |
| | | if (result.tileset) { |
| | | |
| | | if (result.tileset.pubid) { |
| | | if (result.tileset.pubid && parseInt(result.tileset.pubid) > 0) { |
| | | const data = await comprehensive_selectPubById({ id: result.tileset.pubid }) |
| | | |
| | | if (data.code != 200) { |
| | |
| | | } |
| | | this.formInline.Id = result.getProperty(modelKey); |
| | | this.layerID = result.getProperty(modelKey); |
| | | |
| | | } |
| | | } else { |
| | | var id = '3dml' + result.primitive.id; |
| | |
| | | this.formInline.layerName = result.primitive.id; |
| | | |
| | | // this.formInline.title = result.getProperty("name") |
| | | if (!this.formInline.Id) { |
| | | this.formInline.Id = "noAuto_" + this.formInline.layerId; |
| | | } |
| | | if (!this.layerID) { |
| | | this.layerID = "noAuto_" + this.formInline.layerId; |
| | | } |
| | | |
| | | this.startModelData(); |
| | | |
| | |
| | | new Cesium.Cesium3DTileset({ |
| | | name: rs.cnName, |
| | | url: url, //192.168.20.106,to4 |
| | | maximumScreenSpaceError: 64, // 最大屏幕空间错误:16 |
| | | maximumScreenSpaceError: url.indexOf("/pnts/") > -1 ? 16 : 64, // 最大屏幕空间错误:16 |
| | | maximumMemoryUsage: 768, // 最大内存:512 |
| | | dynamicScreenSpaceError: true, // 减少离相机较远的屏幕空间错误:false |
| | | skipLevelOfDetail: true, // 在遍历时候跳过详情:false |
| | |
| | | // Viewer.camera.flyTo({ |
| | | // destination: Cesium.Cartesian3.fromDegrees(110, 33, 8000000), |
| | | // }); |
| | | |
| | | if (is_production) { |
| | | Viewer.imageryLayers.removeAll(); |
| | | } |
| | | Viewer._enableInfoOrSelection = false; |
| | | //显示fps |
| | | Viewer.scene.debugShowFramesPerSecond = false; |
| | |
| | | // window.sgworld.navControl("scale", false); |
| | | //开启深度检测 |
| | | // sg.Analysis.depthTestAgainstTerrain(true) |
| | | if (is_production) { |
| | | var base_ulr = window.sceneConfig.baseUrl; |
| | | if (base_ulr.indexOf('{host}') > -1) { |
| | | base_ulr = base_ulr.replace("{host}", iisHost) |
| | | } |
| | | |
| | | window.BaseMapLayer = Viewer.imageryLayers.addImageryProvider( |
| | | new Cesium.UrlTemplateImageryProvider({ |
| | | url: base_ulr, |
| | | |
| | | }) |
| | | ); |
| | | |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | Viewer.scene.globe.depthTestAgainstTerrain = true; |
| | | // window.elevationTool = new SmartEarth.ElevationTool(window.sg); |
| | | // elevationTool.setContourColor("#F1D487"); |
| | |
| | | var res = this.$store.state.previewLayer; |
| | | var type = res.type; |
| | | res.ulr = res.url.replace("{host}", iisHost); |
| | | |
| | | if (type == 'DEM') { |
| | | window.terrainLayer.deleteObject(); |
| | | // Viewer.terrainProvider = new Cesium.EllipsoidTerrainProvider(); |
| | |
| | | Viewer.camera.flyTo({ |
| | | destination: Cesium.Cartesian3.fromDegrees(wkt.coordinates[1], wkt.coordinates[0], height), |
| | | }); |
| | | } else if (type == '3dml' || type == 'fbx' || type == 'ifc' || type == 'rvt') { |
| | | } else if (type == '3dml' || type == 'fbx' || type == 'ifc' || type == 'rvt' |
| | | || type == 'cpt' || type == 'osgb' || type == 'las' || type == 'laz') { |
| | | if (this.app.tileset) viewer.scene.primitives.remove(this.app.tileset); |
| | | |
| | | this.app.tileset = this.createTileset(res); |
| | | var that = this; |
| | | |
| | | this.editModelFlag = true; |
| | | Viewer.scene.primitives.add(this.app.tileset).readyPromise.then(function (ts) { |
| | | |
| | | that.setModleLocatin() |
| | |
| | | }, |
| | | //显隐 |
| | | showTileset() { |
| | | |
| | | if (!this.app.tileset) return; |
| | | this.app.tileset.show = !this.app.tileset.show; |
| | | }, |
| | |
| | | name: 'tsTest', |
| | | skipLevelOfDetail: true, // 在遍历时候跳过详情:false |
| | | baseScreenSpaceError: 1024, |
| | | maximumScreenSpaceError: 64, // 最大屏幕空间错误:16,数值加大能让最终成像变模糊 |
| | | maximumScreenSpaceError: res.url.indexOf("/pnts/") > -1 ? 16 : 64, // 最大屏幕空间错误:16,数值加大能让最终成像变模糊 |
| | | skipScreenSpaceErrorFactor: 16, |
| | | skipLevels: 1, |
| | | immediatelyLoadDesiredLevelOfDetail: false, |
| | |
| | | }); |
| | | }, |
| | | setEditModelLayer(res) { |
| | | this.editModelFlag = true; |
| | | |
| | | if (res.json) { |
| | | var json = JSON.parse(res.json) |
| | | this.modelForm = json; |