@kq_npm/client3d_webgl_vue
Version:
KQGIS Client3D for Vue.js
1 lines • 16.1 kB
JavaScript
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("vue"),require("@kq_npm/client_common_vue/_utils/gis-utils"),require("@kq_npm/client_common_vue/_utils/const-image"),require("@kq_npm/client_common_vue/_utils/util"),require("@kq_npm/client_common_vue/init.js")):"function"==typeof define&&define.amd?define("@kq_npm/client3d_webgl_vue",["vue","@kq_npm/client_common_vue/_utils/gis-utils","@kq_npm/client_common_vue/_utils/const-image","@kq_npm/client_common_vue/_utils/util","@kq_npm/client_common_vue/init.js"],t):"object"==typeof exports?exports["@kq_npm/client3d_webgl_vue"]=t(require("vue"),require("@kq_npm/client_common_vue/_utils/gis-utils"),require("@kq_npm/client_common_vue/_utils/const-image"),require("@kq_npm/client_common_vue/_utils/util"),require("@kq_npm/client_common_vue/init.js")):e["@kq_npm/client3d_webgl_vue"]=t(e.Vue,e["@kq_npm/client_common_vue/_utils/gis-utils"],e["@kq_npm/client_common_vue/_utils/const-image"],e["@kq_npm/client_common_vue/_utils/util"],e["@kq_npm/client_common_vue/init.js"])}(this,(function(e,t,a,l,n){return function(){"use strict";var r={348:function(e){e.exports=require("@kq_npm/client_icons_vue")},7080:function(e){e.exports=require("vue-i18n/dist/vue-i18n.cjs.js")},6277:function(e){e.exports=a},7135:function(e){e.exports=t},3458:function(e){e.exports=l},7997:function(e){e.exports=n},1895:function(t){t.exports=e}},i={};function o(e){var t=i[e];if(void 0!==t)return t.exports;var a=i[e]={exports:{}};return r[e](a,a.exports,o),a.exports}o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,{a:t}),t},o.d=function(e,t){for(var a in t)o.o(t,a)&&!o.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var s={};return function(){o.r(s),o.d(s,{WeatherEffectViewModel:function(){return c},default:function(){return _}});var e=o(1895),t=o(7135),a=o(348),l=o(6277);let n=null,r=0,i=-1;class c{_scene=null;_particleSystem=null;_drawManager=null;_options=null;_rainImage=l.RAIN_URL;_snowImage=l.SNOW_URL;constructor(e){e._viewer.clock.shouldAnimate=!0,e._viewer.clock.multiplier=.6,e._viewer.scene.globe.depthTestAgainstTerrain=!0,this._scene=e._viewer.scene,this._drawManager=e._drawManager,n=new Cesium.Cartesian3}applyGravity(e,t){n=Cesium.Cartesian3.normalize(e.position,n),Cesium.Cartesian3.multiplyByScalar(n,Cesium.Math.randomBetween(r,i),n),e.velocity=Cesium.Cartesian3.add(e.velocity,n,e.velocity)}addWeatherEffect(e){var t=this;let a=e.mode;"rain"!==a&&"snow"!==a||(e.gravity&&this.setGravity(e.gravity),this._options=e,this._drawManager.startDraw("marker",{image:null},((e,{shape:a})=>{if(a.groupName&&"WeatherEffectDraw"===a.groupName){if(a&&"marker"===a.type){let e=a.position;if(e){let a=new Cesium.Matrix4.fromTranslation(e);t._particleSystem?t._particleSystem.modelMatrix=a:(t._particleSystem=new Cesium.ParticleSystem({modelMatrix:a,lifetime:t._options.lifeCycle,emitter:new Cesium.BoxEmitter(new Cesium.Cartesian3(t._options.rangeRadius,t._options.rangeRadius,t._options.rangeRadius)),startScale:t._options.startScale,endScale:t._options.endScale,emissionRate:t._options.particleNum,startColor:"rain"===t._options.mode?new Cesium.Color.fromCssColorString("#3c8dbc"):Cesium.Color.WHITE.withAlpha(.6),endColor:"rain"===t._options.mode?new Cesium.Color.fromCssColorString("#365e76"):Cesium.Color.WHITE.withAlpha(1),image:"rain"===t._options.mode?t._rainImage:t._snowImage,imageSize:new Cesium.Cartesian2(t._options.particleSize,t._options.particleSize),sizeInMeters:!0,show:!0,updateCallback:t.applyGravity}),t._scene.primitives.add(t._particleSystem))}}t._drawManager&&t._drawManager.clearDrawGroup("WeatherEffectDraw")}}),"WeatherEffectDraw"))}clear(){this._drawManager.stopDraw(),this._drawManager&&this._drawManager.clearDrawGroup("WeatherEffectDraw"),this._particleSystem&&this._scene.primitives.remove(this._particleSystem),this._particleSystem=null}destroy(){this.clear()}setRangeRadius(e){this._particleSystem&&(this._particleSystem.emitter=new Cesium.BoxEmitter(new Cesium.Cartesian3(e,e,e)))}setParticleNumber(e){this._particleSystem&&(this._particleSystem.emissionRate=e)}setParticleSize(e){this._particleSystem&&(this._particleSystem.minimumImageSize=new Cesium.Cartesian2(e,e),this._particleSystem.maximumImageSize=new Cesium.Cartesian2(e,e))}setLifeCycle(e){this._particleSystem&&(this._particleSystem.lifetime=e)}setStartScale(e){this._particleSystem&&(this._particleSystem.startScale=e)}setEndScale(e){this._particleSystem&&(this._particleSystem.endScale=e)}setGravity(e){e<=1?(r=0,i=0-e):(r=0-(e-1),i=0-e)}}var u=o(3458),m=o(7080);const d={class:"kq3d-weather-effect-box"},p={class:"kq3d-weather-effect-footer"},f={name:"Kq3dWeatherEffect"};var _=Object.assign(f,{props:{settingParams:{type:Object},showShadow:{type:Boolean,default:!0},position:[String,Object],showHeaderTemp:{type:Boolean,default:!1},isCollapseHeaderTemp:{type:Boolean,default:!1},headerTempTitle:{type:String},headerTempIcon:{type:[Object,String],default:a.IconWeatherEffect},isRight:{type:Boolean,default:!0}},setup(l,{expose:n}){const r=l,{proxy:i}=(0,e.getCurrentInstance)();let o=(0,e.ref)(""),s=(0,e.ref)(i.$i18n.global.messages[i.$i18n.global.locale].webgl),f=(0,e.reactive)({collapseValue:r.settingParams&&r.settingParams.collapseValue||(""==(r.settingParams&&r.settingParams.collapseValue)?"":"setting"),mode:r.settingParams&&r.settingParams.mode||"rain",rangeRadius:r.settingParams&&r.settingParams.rangeRadius||100,particleNum:r.settingParams&&r.settingParams.particleNum||800,particleSize:r.settingParams&&r.settingParams.particleSize||2,lifeCycle:r.settingParams&&r.settingParams.lifeCycle||18,startScale:r.settingParams&&r.settingParams.startScale||1.1,endScale:r.settingParams&&r.settingParams.endScale||1.3,gravity:r.settingParams&&r.settingParams.gravity||1}),_=null,h=(0,e.ref)(null),g=(0,e.ref)(),w=(0,e.ref)(),{locale:C,messages:y}=(0,m.useI18n)(),V=(0,e.ref)(null);V.value=s.value.weatherEffect,(0,e.watch)((()=>C.value),((e,t)=>{s.value=y.value[e].webgl,V.value=s.value.weatherEffect})),(0,e.onMounted)((()=>{(0,u.updatePosition)(h.value,r),(0,e.watch)((()=>r.position),((e,t)=>{(0,u.updatePosition)(h.value,r)})),S(),(0,e.watch)((()=>r.showHeaderTemp),((t,a)=>{(0,e.nextTick)((()=>{S()}))})),o.value=i.$i18n.locale,t.utils.getWebMap(null,(e=>{e&&(_=new c(e))}))}));const S=()=>{r.showHeaderTemp&&(g.value=(0,u.createHeaderTemp)(h.value,(0,e.toRefs)(r),w,V))};function v(e){f.mode!==e&&(_&&_.clear(),f.mode=e,"rain"===e?(f.particleSize=2,f.startScale=1.1,f.endScale=1.3):"snow"===e&&(f.particleSize=.6,f.startScale=.5,f.endScale=.6))}function x(e){switch(e){case"rangeRadius":_.setRangeRadius(f.rangeRadius);break;case"particleNum":_.setParticleNumber(f.particleNum);break;case"particleSize":_.setParticleSize(f.particleSize);break;case"lifeCycle":_.setLifeCycle(f.lifeCycle);break;case"startScale":_.setStartScale(f.startScale);break;case"endScale":_.setEndScale(f.endScale);break;case"gravity":_.setGravity(f.gravity)}}function k(){_&&_.addWeatherEffect(f)}function N(){_&&_.clear()}return(0,e.onBeforeUnmount)((()=>{_&&_.destroy()})),n({changeMode:v,paramsChanged:x,add:k,clear:N}),(t,n)=>{const r=(0,e.resolveComponent)("kq-button"),i=(0,e.resolveComponent)("kq-row"),c=(0,e.resolveComponent)("kq-slider"),u=(0,e.resolveComponent)("kq-col"),m=(0,e.resolveComponent)("kq-input-number"),_=(0,e.resolveComponent)("kq-form-item"),C=(0,e.resolveComponent)("kq-form"),y=(0,e.resolveComponent)("kq-collapse-item"),V=(0,e.resolveComponent)("kq-collapse");return(0,e.openBlock)(),(0,e.createElementBlock)("section",{class:(0,e.normalizeClass)(["kq3d-weather-effect",{"kq-box-shadow":l.showShadow}]),ref_key:"boxRef",ref:h},[l.showHeaderTemp?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(g)),{key:0,ref_key:"headerTempRef",ref:w},null,512)):(0,e.createCommentVNode)("v-if",!0),(0,e.createElementVNode)("div",d,[(0,e.createVNode)(i,{gutter:20,class:"rowclass"},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(r,{icon:(0,e.unref)(a.IconRain),class:(0,e.normalizeClass)(["kq3d-weather-effect-btn","rain"===(0,e.unref)(f).mode?"kq3d-weather-effect-btn_active":""]),onClick:n[0]||(n[0]=e=>v("rain")),title:(0,e.unref)(s).rain},null,8,["icon","class","title"]),(0,e.createVNode)(r,{icon:(0,e.unref)(a.IconSnow),class:(0,e.normalizeClass)(["kq3d-weather-effect-btn","snow"===(0,e.unref)(f).mode?"kq3d-weather-effect-btn_active":""]),onClick:n[1]||(n[1]=e=>v("snow")),title:(0,e.unref)(s).snow},null,8,["icon","class","title"])])),_:1}),(0,e.createVNode)(i,{class:"kq3d-weather-effect-tip"},{default:(0,e.withCtx)((()=>[(0,e.createElementVNode)("p",null,(0,e.toDisplayString)((0,e.unref)(s).particleTips),1)])),_:1}),(0,e.createVNode)(V,{"model-value":(0,e.unref)(f).collapseValue,class:"kq3d-weather-effect-collapse"},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(y,{title:(0,e.unref)(s).analysisSettings,name:"setting"},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(C,{"label-width":"zh"===(0,e.unref)(o)?"110px":"160px","label-position":"left"},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(i,{class:"rowclass"},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(_,{label:(0,e.unref)(s).rangeRadius},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(i,{style:{display:"flex"}},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(u,{span:16},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(c,{modelValue:(0,e.unref)(f).rangeRadius,"onUpdate:modelValue":n[2]||(n[2]=t=>(0,e.unref)(f).rangeRadius=t),step:10,min:10,max:1e3,onChange:n[3]||(n[3]=e=>x("rangeRadius"))},null,8,["modelValue"])])),_:1}),(0,e.createVNode)(u,{span:8},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(m,{modelValue:(0,e.unref)(f).rangeRadius,"onUpdate:modelValue":n[4]||(n[4]=t=>(0,e.unref)(f).rangeRadius=t),step:10,min:10,max:1e3,"controls-position":"right",onChange:n[5]||(n[5]=e=>x("rangeRadius"))},null,8,["modelValue"])])),_:1})])),_:1})])),_:1},8,["label"])])),_:1}),(0,e.createVNode)(i,{class:"rowclass"},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(_,{label:(0,e.unref)(s).particleNum},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(i,{style:{display:"flex"}},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(u,{span:16},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(c,{modelValue:(0,e.unref)(f).particleNum,"onUpdate:modelValue":n[6]||(n[6]=t=>(0,e.unref)(f).particleNum=t),step:100,min:100,max:1e4,onChange:n[7]||(n[7]=e=>x("particleNum"))},null,8,["modelValue"])])),_:1}),(0,e.createVNode)(u,{span:8},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(m,{modelValue:(0,e.unref)(f).particleNum,"onUpdate:modelValue":n[8]||(n[8]=t=>(0,e.unref)(f).particleNum=t),step:100,min:100,max:1e4,"controls-position":"right",onChange:n[9]||(n[9]=e=>x("particleNum"))},null,8,["modelValue"])])),_:1})])),_:1})])),_:1},8,["label"])])),_:1}),(0,e.createVNode)(i,{class:"rowclass"},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(_,{label:(0,e.unref)(s).particleSize},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(i,{style:{display:"flex"}},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(u,{span:16},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(c,{modelValue:(0,e.unref)(f).particleSize,"onUpdate:modelValue":n[10]||(n[10]=t=>(0,e.unref)(f).particleSize=t),step:.1,min:.1,max:5,onChange:n[11]||(n[11]=e=>x("particleSize"))},null,8,["modelValue","step","min"])])),_:1}),(0,e.createVNode)(u,{span:8},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(m,{modelValue:(0,e.unref)(f).particleSize,"onUpdate:modelValue":n[12]||(n[12]=t=>(0,e.unref)(f).particleSize=t),step:.1,min:.1,max:5,"controls-position":"right",onChange:n[13]||(n[13]=e=>x("particleSize"))},null,8,["modelValue","step","min"])])),_:1})])),_:1})])),_:1},8,["label"])])),_:1}),(0,e.createCommentVNode)(' <kq-row>\r\n <kq-form-item :label="language.lifeCycle">\r\n <kq-row style="display: flex">\r\n <kq-col :span="16">\r\n <kq-slider v-model="formItem.lifeCycle" :step="1" :min="1" :max="50" @change="paramsChanged(\'lifeCycle\')"></kq-slider>\r\n </kq-col>\r\n <kq-col :span="8">\r\n <kq-input-number\r\n v-model="formItem.lifeCycle"\r\n :step="1"\r\n :min="1"\r\n :max="50"\r\n controls-position="right"\r\n @change="paramsChanged(\'lifeCycle\')">\r\n </kq-input-number>\r\n </kq-col>\r\n </kq-row>\r\n </kq-form-item>\r\n </kq-row> '),(0,e.createVNode)(i,{class:"rowclass"},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(_,{label:(0,e.unref)(s).startScale},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(i,{style:{display:"flex"}},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(u,{span:16},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(c,{modelValue:(0,e.unref)(f).startScale,"onUpdate:modelValue":n[14]||(n[14]=t=>(0,e.unref)(f).startScale=t),min:.1,max:5,step:.1,onChange:n[15]||(n[15]=e=>x("startScale"))},null,8,["modelValue","min","max","step"])])),_:1}),(0,e.createVNode)(u,{span:8},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(m,{modelValue:(0,e.unref)(f).startScale,"onUpdate:modelValue":n[16]||(n[16]=t=>(0,e.unref)(f).startScale=t),min:.1,max:5,step:.1,"controls-position":"right",onChange:n[17]||(n[17]=e=>x("startScale"))},null,8,["modelValue","min","max","step"])])),_:1})])),_:1})])),_:1},8,["label"])])),_:1}),(0,e.createVNode)(i,{class:"rowclass"},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(_,{label:(0,e.unref)(s).endScale},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(i,{style:{display:"flex"}},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(u,{span:16},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(c,{modelValue:(0,e.unref)(f).endScale,"onUpdate:modelValue":n[18]||(n[18]=t=>(0,e.unref)(f).endScale=t),min:.1,max:5,step:.1,onChange:n[19]||(n[19]=e=>x("endScale"))},null,8,["modelValue","min","max","step"])])),_:1}),(0,e.createVNode)(u,{span:8},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(m,{modelValue:(0,e.unref)(f).endScale,"onUpdate:modelValue":n[20]||(n[20]=t=>(0,e.unref)(f).endScale=t),min:.1,max:5,step:.1,"controls-position":"right",onChange:n[21]||(n[21]=e=>x("endScale"))},null,8,["modelValue","min","max","step"])])),_:1})])),_:1})])),_:1},8,["label"])])),_:1}),(0,e.createVNode)(i,{class:"rowclass"},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(_,{label:(0,e.unref)(s).gravity},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(i,{style:{display:"flex"}},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(u,{span:16},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(c,{modelValue:(0,e.unref)(f).gravity,"onUpdate:modelValue":n[22]||(n[22]=t=>(0,e.unref)(f).gravity=t),step:.1,min:.1,max:5,onChange:n[23]||(n[23]=e=>x("gravity"))},null,8,["modelValue","step","min"])])),_:1}),(0,e.createVNode)(u,{span:8},{default:(0,e.withCtx)((()=>[(0,e.createVNode)(m,{modelValue:(0,e.unref)(f).gravity,"onUpdate:modelValue":n[24]||(n[24]=t=>(0,e.unref)(f).gravity=t),min:.1,max:5,step:.1,"controls-position":"right",onChange:n[25]||(n[25]=e=>x("gravity"))},null,8,["modelValue","min","step"])])),_:1})])),_:1})])),_:1},8,["label"])])),_:1})])),_:1},8,["label-width"])])),_:1},8,["title"])])),_:1},8,["model-value"]),(0,e.createElementVNode)("div",p,[(0,e.createVNode)(r,{onClick:n[26]||(n[26]=(0,e.withModifiers)((e=>k()),["stop"])),title:(0,e.unref)(s).add,type:"primary"},{default:(0,e.withCtx)((()=>[(0,e.createTextVNode)((0,e.toDisplayString)((0,e.unref)(s).add),1)])),_:1},8,["title"]),(0,e.createVNode)(r,{onClick:n[27]||(n[27]=(0,e.withModifiers)((e=>N()),["stop"])),title:(0,e.unref)(s).clear},{default:(0,e.withCtx)((()=>[(0,e.createTextVNode)((0,e.toDisplayString)((0,e.unref)(s).clear),1)])),_:1},8,["title"])])])],2)}}}),h=o(7997),g=o.n(h);_.install=(e,t)=>{g()(e,t),e.component(_.name,_)}}(),s}()}));