@xeokit/xeokit-sdk 2.3.3 → 2.3.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/xeokit-sdk.cjs.js +131 -10
- package/dist/xeokit-sdk.es.js +131 -10
- package/dist/xeokit-sdk.es5.js +50 -8
- package/dist/xeokit-sdk.min.cjs.js +2 -2
- package/dist/xeokit-sdk.min.es.js +2 -2
- package/dist/xeokit-sdk.min.es5.js +1 -1
- package/package.json +1 -1
package/dist/xeokit-sdk.es5.js
CHANGED
|
@@ -19034,7 +19034,7 @@ origin:eye,direction:look});look=hit?hit.worldPos:math.addVec3(eye,look,tempVec3
|
|
|
19034
19034
|
*/function DistanceMeasurement(plugin){var _this85;var cfg=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,DistanceMeasurement);_this85=_super61.call(this,plugin.viewer.scene,cfg);/**
|
|
19035
19035
|
* The {@link DistanceMeasurementsPlugin} that owns this DistanceMeasurement.
|
|
19036
19036
|
* @type {DistanceMeasurementsPlugin}
|
|
19037
|
-
*/_this85.plugin=plugin;_this85._container=cfg.container;if(!_this85._container){throw"config missing: container";}_this85._eventSubs={};var scene=_this85.plugin.viewer.scene;_this85._originMarker=new Marker(scene,cfg.origin);_this85._targetMarker=new Marker(scene,cfg.target);_this85._originWorld=math.vec3();_this85._targetWorld=math.vec3();_this85._wp=new Float64Array(24);_this85._vp=new Float64Array(24);_this85._pp=new Float64Array(24);_this85._cp=new Float64Array(8);_this85._xAxisLabelCulled=false;_this85._yAxisLabelCulled=false;_this85._zAxisLabelCulled=false;_this85._color=cfg.color||_this85.plugin.defaultColor;var onMouseOver=cfg.onMouseOver?function(event){cfg.onMouseOver(event,_assertThisInitialized(_this85));}:null;var onMouseLeave=cfg.onMouseLeave?function(event){cfg.onMouseLeave(event,_assertThisInitialized(_this85));}:null;var onContextMenu=cfg.onContextMenu?function(event){cfg.onContextMenu(event,_assertThisInitialized(_this85));}:null;_this85._originDot=new Dot(_this85._container,{fillColor:_this85._color,zIndex:plugin.zIndex!==undefined?plugin.zIndex+2:undefined,onMouseOver:onMouseOver,onMouseLeave:onMouseLeave,onContextMenu:onContextMenu});_this85._targetDot=new Dot(_this85._container,{fillColor:_this85._color,zIndex:plugin.zIndex!==undefined?plugin.zIndex+2:undefined,onMouseOver:onMouseOver,onMouseLeave:onMouseLeave,onContextMenu:onContextMenu});_this85._lengthWire=new Wire(_this85._container,{color:_this85._color,thickness:2,thicknessClickable:6,zIndex:plugin.zIndex!==undefined?plugin.zIndex+1:undefined,onMouseOver:onMouseOver,onMouseLeave:onMouseLeave,onContextMenu:onContextMenu});_this85._xAxisWire=new Wire(_this85._container,{color:"#FF0000",thickness:1,thicknessClickable:6,zIndex:plugin.zIndex!==undefined?plugin.zIndex+1:undefined,onMouseOver:onMouseOver,onMouseLeave:onMouseLeave,onContextMenu:onContextMenu});_this85._yAxisWire=new Wire(_this85._container,{color:"green",thickness:1,thicknessClickable:6,zIndex:plugin.zIndex!==undefined?plugin.zIndex+1:undefined,onMouseOver:onMouseOver,onMouseLeave:onMouseLeave,onContextMenu:onContextMenu});_this85._zAxisWire=new Wire(_this85._container,{color:"blue",thickness:1,thicknessClickable:6,zIndex:plugin.zIndex!==undefined?plugin.zIndex+1:undefined,onMouseOver:onMouseOver,onMouseLeave:onMouseLeave,onContextMenu:onContextMenu});_this85._lengthLabel=new Label(_this85._container,{fillColor:_this85._color,prefix:"",text:"",zIndex:plugin.zIndex!==undefined?plugin.zIndex+4:undefined,onMouseOver:onMouseOver,onMouseLeave:onMouseLeave,onContextMenu:onContextMenu});_this85._xAxisLabel=new Label(_this85._container,{fillColor:"red",prefix:"X",text:"",zIndex:plugin.zIndex!==undefined?plugin.zIndex+3:undefined,onMouseOver:onMouseOver,onMouseLeave:onMouseLeave,onContextMenu:onContextMenu});_this85._yAxisLabel=new Label(_this85._container,{fillColor:"green",prefix:"Y",text:"",zIndex:plugin.zIndex!==undefined?plugin.zIndex+3:undefined,onMouseOver:onMouseOver,onMouseLeave:onMouseLeave,onContextMenu:onContextMenu});_this85._zAxisLabel=new Label(_this85._container,{fillColor:"blue",prefix:"Z",text:"",zIndex:plugin.zIndex!==undefined?plugin.zIndex+3:undefined,onMouseOver:onMouseOver,onMouseLeave:onMouseLeave,onContextMenu:onContextMenu});_this85._wpDirty=false;_this85._vpDirty=false;_this85._cpDirty=false;_this85._visible=false;_this85._originVisible=false;_this85._targetVisible=false;_this85._wireVisible=false;_this85._axisVisible=false;_this85._axisEnabled=true;_this85._labelsVisible=false;_this85._clickable=true;_this85._originMarker.on("worldPos",function(value){_this85._originWorld.set(value||[0,0,0]);_this85._wpDirty=true;_this85._needUpdate(0);// No lag
|
|
19037
|
+
*/_this85.plugin=plugin;_this85._container=cfg.container;if(!_this85._container){throw"config missing: container";}_this85._eventSubs={};var scene=_this85.plugin.viewer.scene;_this85._originMarker=new Marker(scene,cfg.origin);_this85._targetMarker=new Marker(scene,cfg.target);_this85._originWorld=math.vec3();_this85._targetWorld=math.vec3();_this85._wp=new Float64Array(24);_this85._vp=new Float64Array(24);_this85._pp=new Float64Array(24);_this85._cp=new Float64Array(8);_this85._xAxisLabelCulled=false;_this85._yAxisLabelCulled=false;_this85._zAxisLabelCulled=false;_this85._color=cfg.color||_this85.plugin.defaultColor;var onMouseOver=cfg.onMouseOver?function(event){cfg.onMouseOver(event,_assertThisInitialized(_this85));}:null;var onMouseLeave=cfg.onMouseLeave?function(event){cfg.onMouseLeave(event,_assertThisInitialized(_this85));}:null;var onContextMenu=cfg.onContextMenu?function(event){cfg.onContextMenu(event,_assertThisInitialized(_this85));}:null;_this85._originDot=new Dot(_this85._container,{fillColor:_this85._color,zIndex:plugin.zIndex!==undefined?plugin.zIndex+2:undefined,onMouseOver:onMouseOver,onMouseLeave:onMouseLeave,onContextMenu:onContextMenu});_this85._targetDot=new Dot(_this85._container,{fillColor:_this85._color,zIndex:plugin.zIndex!==undefined?plugin.zIndex+2:undefined,onMouseOver:onMouseOver,onMouseLeave:onMouseLeave,onContextMenu:onContextMenu});_this85._lengthWire=new Wire(_this85._container,{color:_this85._color,thickness:2,thicknessClickable:6,zIndex:plugin.zIndex!==undefined?plugin.zIndex+1:undefined,onMouseOver:onMouseOver,onMouseLeave:onMouseLeave,onContextMenu:onContextMenu});_this85._xAxisWire=new Wire(_this85._container,{color:"#FF0000",thickness:1,thicknessClickable:6,zIndex:plugin.zIndex!==undefined?plugin.zIndex+1:undefined,onMouseOver:onMouseOver,onMouseLeave:onMouseLeave,onContextMenu:onContextMenu});_this85._yAxisWire=new Wire(_this85._container,{color:"green",thickness:1,thicknessClickable:6,zIndex:plugin.zIndex!==undefined?plugin.zIndex+1:undefined,onMouseOver:onMouseOver,onMouseLeave:onMouseLeave,onContextMenu:onContextMenu});_this85._zAxisWire=new Wire(_this85._container,{color:"blue",thickness:1,thicknessClickable:6,zIndex:plugin.zIndex!==undefined?plugin.zIndex+1:undefined,onMouseOver:onMouseOver,onMouseLeave:onMouseLeave,onContextMenu:onContextMenu});_this85._lengthLabel=new Label(_this85._container,{fillColor:_this85._color,prefix:"",text:"",zIndex:plugin.zIndex!==undefined?plugin.zIndex+4:undefined,onMouseOver:onMouseOver,onMouseLeave:onMouseLeave,onContextMenu:onContextMenu});_this85._xAxisLabel=new Label(_this85._container,{fillColor:"red",prefix:"X",text:"",zIndex:plugin.zIndex!==undefined?plugin.zIndex+3:undefined,onMouseOver:onMouseOver,onMouseLeave:onMouseLeave,onContextMenu:onContextMenu});_this85._yAxisLabel=new Label(_this85._container,{fillColor:"green",prefix:"Y",text:"",zIndex:plugin.zIndex!==undefined?plugin.zIndex+3:undefined,onMouseOver:onMouseOver,onMouseLeave:onMouseLeave,onContextMenu:onContextMenu});_this85._zAxisLabel=new Label(_this85._container,{fillColor:"blue",prefix:"Z",text:"",zIndex:plugin.zIndex!==undefined?plugin.zIndex+3:undefined,onMouseOver:onMouseOver,onMouseLeave:onMouseLeave,onContextMenu:onContextMenu});_this85._wpDirty=false;_this85._vpDirty=false;_this85._cpDirty=false;_this85._visible=false;_this85._originVisible=false;_this85._targetVisible=false;_this85._wireVisible=false;_this85._axisVisible=false;_this85._xAxisVisible=false;_this85._yAxisVisible=false;_this85._zAxisVisible=false;_this85._axisEnabled=true;_this85._labelsVisible=false;_this85._clickable=true;_this85._originMarker.on("worldPos",function(value){_this85._originWorld.set(value||[0,0,0]);_this85._wpDirty=true;_this85._needUpdate(0);// No lag
|
|
19038
19038
|
});_this85._targetMarker.on("worldPos",function(value){_this85._targetWorld.set(value||[0,0,0]);_this85._wpDirty=true;_this85._needUpdate(0);// No lag
|
|
19039
19039
|
});_this85._onViewMatrix=scene.camera.on("viewMatrix",function(){_this85._vpDirty=true;_this85._needUpdate(0);// No lag
|
|
19040
19040
|
});_this85._onProjMatrix=scene.camera.on("projMatrix",function(){_this85._cpDirty=true;_this85._needUpdate();});_this85._onCanvasBoundary=scene.canvas.on("boundary",function(){_this85._cpDirty=true;_this85._needUpdate(0);// No lag
|
|
@@ -19074,7 +19074,7 @@ origin:eye,direction:look});look=hit?hit.worldPos:math.addVec3(eye,look,tempVec3
|
|
|
19074
19074
|
* Sets if the origin {@link Marker} is visible.
|
|
19075
19075
|
*
|
|
19076
19076
|
* @type {Boolean}
|
|
19077
|
-
*/,set:function set(value){value=value!==undefined?Boolean(value):this.plugin.defaultVisible;this._visible=value;this._originDot.setVisible(this._visible&&this._originVisible);this._targetDot.setVisible(this._visible&&this._targetVisible);this._lengthWire.setVisible(this._visible&&this._wireVisible);this._lengthLabel.setVisible(this._visible&&this._wireVisible);var
|
|
19077
|
+
*/,set:function set(value){value=value!==undefined?Boolean(value):this.plugin.defaultVisible;this._visible=value;this._originDot.setVisible(this._visible&&this._originVisible);this._targetDot.setVisible(this._visible&&this._targetVisible);this._lengthWire.setVisible(this._visible&&this._wireVisible);this._lengthLabel.setVisible(this._visible&&this._wireVisible);var xAxisVisible=this._visible&&this._axisVisible&&this._xAxisVisible;var yAxisVisible=this._visible&&this._axisVisible&&this._yAxisVisible;var zAxisVisible=this._visible&&this._axisVisible&&this._zAxisVisible;this._xAxisWire.setVisible(xAxisVisible);this._yAxisWire.setVisible(yAxisVisible);this._zAxisWire.setVisible(zAxisVisible);this._xAxisLabel.setVisible(xAxisVisible&&!this._xAxisLabelCulled);this._yAxisLabel.setVisible(yAxisVisible&&!this._yAxisLabelCulled);this._zAxisLabel.setVisible(zAxisVisible&&!this._zAxisLabelCulled);this._cpDirty=true;this._needUpdate();}},{key:"originVisible",get:/**
|
|
19078
19078
|
* Gets if the origin {@link Marker} is visible.
|
|
19079
19079
|
*
|
|
19080
19080
|
* @type {Boolean}
|
|
@@ -19111,10 +19111,46 @@ origin:eye,direction:look});look=hit?hit.worldPos:math.addVec3(eye,look,tempVec3
|
|
|
19111
19111
|
*
|
|
19112
19112
|
* @type {Boolean}
|
|
19113
19113
|
*/function get(){return this._axisVisible;}/**
|
|
19114
|
+
* Sets if the X-axis-aligned wire between {@link DistanceMeasurement#origin} and {@link DistanceMeasurement#target} is visible.
|
|
19115
|
+
*
|
|
19116
|
+
* Wires are only shown if enabled and visible.
|
|
19117
|
+
*
|
|
19118
|
+
* @type {Boolean}
|
|
19119
|
+
*/,set:function set(value){value=value!==undefined?Boolean(value):this.plugin.defaultAxisVisible;this._axisVisible=value;var axisVisible=this._visible&&this._axisVisible&&this._axisEnabled;this._xAxisWire.setVisible(axisVisible);this._yAxisWire.setVisible(axisVisible);this._zAxisWire.setVisible(axisVisible);this._xAxisLabel.setVisible(axisVisible&&!this._xAxisLabelCulled);this._yAxisLabel.setVisible(axisVisible&&!this._yAxisLabelCulled);this._zAxisLabel.setVisible(axisVisible&&!this._zAxisLabelCulled);this._cpDirty=true;this._needUpdate();}},{key:"xAxisVisible",get:/**
|
|
19120
|
+
* Gets if the X-axis-aligned wires between {@link DistanceMeasurement#origin} and {@link DistanceMeasurement#target} are visible.
|
|
19121
|
+
*
|
|
19122
|
+
* Wires are only shown if enabled and visible.
|
|
19123
|
+
*
|
|
19124
|
+
* @type {Boolean}
|
|
19125
|
+
*/function get(){return this._xAxisVisible;}/**
|
|
19126
|
+
* Sets if the Y-axis-aligned wire between {@link DistanceMeasurement#origin} and {@link DistanceMeasurement#target} is visible.
|
|
19127
|
+
*
|
|
19128
|
+
* Wires are only shown if enabled and visible.
|
|
19129
|
+
*
|
|
19130
|
+
* @type {Boolean}
|
|
19131
|
+
*/,set:function set(value){value=value!==undefined?Boolean(value):this.plugin.defaultAxisVisible;this._xAxisVisible=value;var axisVisible=this._visible&&this._axisVisible&&this._xAxisVisible&&this._axisEnabled;this._xAxisWire.setVisible(axisVisible);this._xAxisLabel.setVisible(axisVisible&&!this._xAxisLabelCulled);this._cpDirty=true;this._needUpdate();}},{key:"yAxisVisible",get:/**
|
|
19132
|
+
* Gets if the Y-axis-aligned wires between {@link DistanceMeasurement#origin} and {@link DistanceMeasurement#target} are visible.
|
|
19133
|
+
*
|
|
19134
|
+
* Wires are only shown if enabled and visible.
|
|
19135
|
+
*
|
|
19136
|
+
* @type {Boolean}
|
|
19137
|
+
*/function get(){return this._yAxisVisible;}/**
|
|
19138
|
+
* Sets if the Z-axis-aligned wire between {@link DistanceMeasurement#origin} and {@link DistanceMeasurement#target} is visible.
|
|
19139
|
+
*
|
|
19140
|
+
* Wires are only shown if enabled and visible.
|
|
19141
|
+
*
|
|
19142
|
+
* @type {Boolean}
|
|
19143
|
+
*/,set:function set(value){value=value!==undefined?Boolean(value):this.plugin.defaultAxisVisible;this._yAxisVisible=value;var axisVisible=this._visible&&this._axisVisible&&this._yAxisVisible&&this._axisEnabled;this._yAxisWire.setVisible(axisVisible);this._yAxisLabel.setVisible(axisVisible&&!this._yAxisLabelCulled);this._cpDirty=true;this._needUpdate();}},{key:"zAxisVisible",get:/**
|
|
19144
|
+
* Gets if the Z-axis-aligned wires between {@link DistanceMeasurement#origin} and {@link DistanceMeasurement#target} are visible.
|
|
19145
|
+
*
|
|
19146
|
+
* Wires are only shown if enabled and visible.
|
|
19147
|
+
*
|
|
19148
|
+
* @type {Boolean}
|
|
19149
|
+
*/function get(){return this._zAxisVisible;}/**
|
|
19114
19150
|
* Sets if the direct point-to-point wire between {@link DistanceMeasurement#origin} and {@link DistanceMeasurement#target} is visible.
|
|
19115
19151
|
*
|
|
19116
19152
|
* @type {Boolean}
|
|
19117
|
-
*/,set:function set(value){value=value!==undefined?Boolean(value):this.plugin.defaultAxisVisible;this.
|
|
19153
|
+
*/,set:function set(value){value=value!==undefined?Boolean(value):this.plugin.defaultAxisVisible;this._zAxisVisible=value;var axisVisible=this._visible&&this._axisVisible&&this._zAxisVisible&&this._axisEnabled;this._zAxisWire.setVisible(axisVisible);this._zAxisLabel.setVisible(axisVisible&&!this._zAxisLabelCulled);this._cpDirty=true;this._needUpdate();}},{key:"wireVisible",get:/**
|
|
19118
19154
|
* Gets if the direct point-to-point wire between {@link DistanceMeasurement#origin} and {@link DistanceMeasurement#target} is visible.
|
|
19119
19155
|
*
|
|
19120
19156
|
* @type {Boolean}
|
|
@@ -21209,7 +21245,7 @@ for(var _i408=0,len=plugins.length;_i408<len;_i408++){var plugin=plugins[_i408];
|
|
|
21209
21245
|
* @type {DistanceMeasurementsPlugin}
|
|
21210
21246
|
*/_this91.plugin=plugin;_this91._active=false;// Mouse input uses a combo of events that requires us to track
|
|
21211
21247
|
// the current DistanceMeasurement under construction. This is not used for touch input.
|
|
21212
|
-
_this91._currentDistanceMeasurementByMouse=null;_this91._currentDistanceMeasurementByMouseInittouchState={wireVisible:null,axisVisible:null,targetVisible:null};// Shows 2D canvas pos of touch start
|
|
21248
|
+
_this91._currentDistanceMeasurementByMouse=null;_this91._currentDistanceMeasurementByMouseInittouchState={wireVisible:null,axisVisible:null,xAxisVisible:null,yaxisVisible:null,zAxisVisible:null,targetVisible:null};// Shows 2D canvas pos of touch start
|
|
21213
21249
|
_this91._touchStartDot=new Dot(plugin._container,{fillColor:plugin.defaultColor,zIndex:plugin.zIndex+1,visible:false});// Tracks 3D world pos of touch start, dynamically calculates 2D canvas pos
|
|
21214
21250
|
_this91._touchStartMarker=new Marker(_assertThisInitialized(_this91),{id:"distanceMeasurementMarker"});// Routes 2D canvas pos from Marker to Dot
|
|
21215
21251
|
_this91._touchStartMarker.on("canvasPos",function(canvasPos){_this91._touchStartDot.setPos(canvasPos[0],canvasPos[1]);});// Event handles from CameraControl
|
|
@@ -21221,7 +21257,7 @@ _this91._onCanvasTouchStart=null;_this91._onCanvasTouchEnd=null;return _this91;}
|
|
|
21221
21257
|
*/_createClass(DistanceMeasurementsControl,[{key:"active",get:function get(){return this._active;}/**
|
|
21222
21258
|
* Activates this DistanceMeasurementsControl, ready to respond to input.
|
|
21223
21259
|
*/},{key:"activate",value:function activate(){var _this92=this;if(this._active){return;}var plugin=this.plugin;var scene=this.scene;var cameraControl=plugin.viewer.cameraControl;var canvas=scene.canvas.canvas;var input=scene.input;var startDot=this._touchStartDot;var pickSurfacePrecisionEnabled=scene.pickSurfacePrecisionEnabled;var mouseHoverEntity=null;var mouseWorldPos=math.vec3();var mouseCanvasPos=math.vec2();var lastMouseCanvasX;var lastMouseCanvasY;var mouseCanvasClickTolerance=5;var FIRST_TOUCH_EXPECTED=0;var SECOND_TOUCH_EXPECTED=1;var touchState=FIRST_TOUCH_EXPECTED;var touchCanvasClickTolerance=5;var touchStartCanvasPos=math.vec2();var touchEndCanvasPos=math.vec2();var touchStartWorldPos=math.vec3();this._onMouseHoverSurface=cameraControl.on("hoverSurface",function(event){// This gets fired for both mouse and touch input, but we don't care when handling touch
|
|
21224
|
-
mouseHoverEntity=event.entity;mouseWorldPos.set(event.worldPos);mouseCanvasPos.set(event.canvasPos);canvas.style.cursor="pointer";if(_this92._currentDistanceMeasurementByMouse){_this92._currentDistanceMeasurementByMouse.wireVisible=_this92._currentDistanceMeasurementByMouseInittouchState.wireVisible;_this92._currentDistanceMeasurementByMouse.axisVisible=_this92._currentDistanceMeasurementByMouseInittouchState.axisVisible&&_this92.plugin.defaultAxisVisible;_this92._currentDistanceMeasurementByMouse.targetVisible=_this92._currentDistanceMeasurementByMouseInittouchState.targetVisible;_this92._currentDistanceMeasurementByMouse.target.entity=mouseHoverEntity;_this92._currentDistanceMeasurementByMouse.target.worldPos=mouseWorldPos;}});this._onInputMouseDown=input.on("mousedown",function(coords){lastMouseCanvasX=coords[0];lastMouseCanvasY=coords[1];});this._onInputMouseUp=input.on("mouseup",function(coords){if(coords[0]>lastMouseCanvasX+mouseCanvasClickTolerance||coords[0]<lastMouseCanvasX-mouseCanvasClickTolerance||coords[1]>lastMouseCanvasY+mouseCanvasClickTolerance||coords[1]<lastMouseCanvasY-mouseCanvasClickTolerance){return;}if(_this92._currentDistanceMeasurementByMouse){if(mouseHoverEntity){if(pickSurfacePrecisionEnabled){var pickResult=scene.pick({canvasPos:mouseCanvasPos,pickSurface:true,pickSurfacePrecision:true});if(pickResult&&pickResult.worldPos){_this92._currentDistanceMeasurementByMouse.target.worldPos=pickResult.worldPos;}_this92._currentDistanceMeasurementByMouse.approximate=false;}_this92._currentDistanceMeasurementByMouse.clickable=true;_this92.fire("measurementEnd",_this92._currentDistanceMeasurementByMouse);_this92._currentDistanceMeasurementByMouse=null;}else{_this92._currentDistanceMeasurementByMouse.destroy();_this92.fire("measurementCancel",_this92._currentDistanceMeasurementByMouse);_this92._currentDistanceMeasurementByMouse=null;}}else{if(mouseHoverEntity){if(pickSurfacePrecisionEnabled){var _pickResult4=scene.pick({canvasPos:mouseCanvasPos,pickSurface:true,pickSurfacePrecision:true});if(_pickResult4&&_pickResult4.worldPos){mouseWorldPos.set(_pickResult4.worldPos);}}_this92._currentDistanceMeasurementByMouse=plugin.createMeasurement({id:math.createUUID(),origin:{entity:mouseHoverEntity,worldPos:mouseWorldPos},target:{entity:mouseHoverEntity,worldPos:mouseWorldPos},approximate:true});_this92._currentDistanceMeasurementByMouseInittouchState.axisVisible=_this92._currentDistanceMeasurementByMouse.axisVisible&&_this92.plugin.defaultAxisVisible;_this92._currentDistanceMeasurementByMouseInittouchState.wireVisible=_this92._currentDistanceMeasurementByMouse.wireVisible;_this92._currentDistanceMeasurementByMouseInittouchState.targetVisible=_this92._currentDistanceMeasurementByMouse.targetVisible;_this92._currentDistanceMeasurementByMouse.clickable=false;_this92.fire("measurementStart",_this92._currentDistanceMeasurementByMouse);}}});this._onMouseHoverOff=cameraControl.on("hoverOff",function(event){mouseHoverEntity=null;if(_this92._currentDistanceMeasurementByMouse){_this92._currentDistanceMeasurementByMouse.wireVisible=false;_this92._currentDistanceMeasurementByMouse.targetVisible=false;_this92._currentDistanceMeasurementByMouse.axisVisible=false;}canvas.style.cursor="default";});this._onPickedNothing=cameraControl.on("pickedNothing",function(event){if(_this92._currentDistanceMeasurementByMouse){_this92._currentDistanceMeasurementByMouse.destroy();_this92._currentDistanceMeasurementByMouse=null;}startDot.setVisible(false);touchState=FIRST_TOUCH_EXPECTED;});canvas.addEventListener("touchstart",this._onCanvasTouchStart=function(event){var touches=event.touches;var changedTouches=event.changedTouches;if(touches.length===1&&changedTouches.length===1){getCanvasPosFromEvent(touches[0],touchStartCanvasPos);}},{passive:true});canvas.addEventListener("touchend",this._onCanvasTouchEnd=function(event){var touches=event.touches;var changedTouches=event.changedTouches;if(touches.length===0&&changedTouches.length===1){getCanvasPosFromEvent(changedTouches[0],touchEndCanvasPos);if(touchEndCanvasPos[0]>touchStartCanvasPos[0]+touchCanvasClickTolerance||touchEndCanvasPos[0]<touchStartCanvasPos[0]-touchCanvasClickTolerance||touchEndCanvasPos[1]>touchStartCanvasPos[1]+touchCanvasClickTolerance||touchEndCanvasPos[1]<touchStartCanvasPos[1]-touchCanvasClickTolerance){return;// User is repositioning the camera or model
|
|
21260
|
+
mouseHoverEntity=event.entity;mouseWorldPos.set(event.worldPos);mouseCanvasPos.set(event.canvasPos);canvas.style.cursor="pointer";if(_this92._currentDistanceMeasurementByMouse){_this92._currentDistanceMeasurementByMouse.wireVisible=_this92._currentDistanceMeasurementByMouseInittouchState.wireVisible;_this92._currentDistanceMeasurementByMouse.axisVisible=_this92._currentDistanceMeasurementByMouseInittouchState.axisVisible&&_this92.plugin.defaultAxisVisible;_this92._currentDistanceMeasurementByMouse.xAxisVisible=_this92._currentDistanceMeasurementByMouseInittouchState.xAxisVisible&&_this92.plugin.defaultXAxisVisible;_this92._currentDistanceMeasurementByMouse.yAxisVisible=_this92._currentDistanceMeasurementByMouseInittouchState.yAxisVisible&&_this92.plugin.defaultYAxisVisible;_this92._currentDistanceMeasurementByMouse.zAxisVisible=_this92._currentDistanceMeasurementByMouseInittouchState.zAxisVisible&&_this92.plugin.defaultZAxisVisible;_this92._currentDistanceMeasurementByMouse.targetVisible=_this92._currentDistanceMeasurementByMouseInittouchState.targetVisible;_this92._currentDistanceMeasurementByMouse.target.entity=mouseHoverEntity;_this92._currentDistanceMeasurementByMouse.target.worldPos=mouseWorldPos;}});this._onInputMouseDown=input.on("mousedown",function(coords){lastMouseCanvasX=coords[0];lastMouseCanvasY=coords[1];});this._onInputMouseUp=input.on("mouseup",function(coords){if(coords[0]>lastMouseCanvasX+mouseCanvasClickTolerance||coords[0]<lastMouseCanvasX-mouseCanvasClickTolerance||coords[1]>lastMouseCanvasY+mouseCanvasClickTolerance||coords[1]<lastMouseCanvasY-mouseCanvasClickTolerance){return;}if(_this92._currentDistanceMeasurementByMouse){if(mouseHoverEntity){if(pickSurfacePrecisionEnabled){var pickResult=scene.pick({canvasPos:mouseCanvasPos,pickSurface:true,pickSurfacePrecision:true});if(pickResult&&pickResult.worldPos){_this92._currentDistanceMeasurementByMouse.target.worldPos=pickResult.worldPos;}_this92._currentDistanceMeasurementByMouse.approximate=false;}_this92._currentDistanceMeasurementByMouse.clickable=true;_this92.fire("measurementEnd",_this92._currentDistanceMeasurementByMouse);_this92._currentDistanceMeasurementByMouse=null;}else{_this92._currentDistanceMeasurementByMouse.destroy();_this92.fire("measurementCancel",_this92._currentDistanceMeasurementByMouse);_this92._currentDistanceMeasurementByMouse=null;}}else{if(mouseHoverEntity){if(pickSurfacePrecisionEnabled){var _pickResult4=scene.pick({canvasPos:mouseCanvasPos,pickSurface:true,pickSurfacePrecision:true});if(_pickResult4&&_pickResult4.worldPos){mouseWorldPos.set(_pickResult4.worldPos);}}_this92._currentDistanceMeasurementByMouse=plugin.createMeasurement({id:math.createUUID(),origin:{entity:mouseHoverEntity,worldPos:mouseWorldPos},target:{entity:mouseHoverEntity,worldPos:mouseWorldPos},approximate:true});_this92._currentDistanceMeasurementByMouseInittouchState.axisVisible=_this92._currentDistanceMeasurementByMouse.axisVisible&&_this92.plugin.defaultAxisVisible;_this92._currentDistanceMeasurementByMouseInittouchState.xAxisVisible=_this92._currentDistanceMeasurementByMouse.xAxisVisible&&_this92.plugin.defaultXAxisVisible;_this92._currentDistanceMeasurementByMouseInittouchState.yAxisVisible=_this92._currentDistanceMeasurementByMouse.yAxisVisible&&_this92.plugin.defaultYAxisVisible;_this92._currentDistanceMeasurementByMouseInittouchState.zAxisVisible=_this92._currentDistanceMeasurementByMouse.zAxisVisible&&_this92.plugin.defaultZAxisVisible;_this92._currentDistanceMeasurementByMouseInittouchState.wireVisible=_this92._currentDistanceMeasurementByMouse.wireVisible;_this92._currentDistanceMeasurementByMouseInittouchState.targetVisible=_this92._currentDistanceMeasurementByMouse.targetVisible;_this92._currentDistanceMeasurementByMouse.clickable=false;_this92.fire("measurementStart",_this92._currentDistanceMeasurementByMouse);}}});this._onMouseHoverOff=cameraControl.on("hoverOff",function(event){mouseHoverEntity=null;if(_this92._currentDistanceMeasurementByMouse){_this92._currentDistanceMeasurementByMouse.wireVisible=false;_this92._currentDistanceMeasurementByMouse.targetVisible=false;_this92._currentDistanceMeasurementByMouse.axisVisible=false;}canvas.style.cursor="default";});this._onPickedNothing=cameraControl.on("pickedNothing",function(event){if(_this92._currentDistanceMeasurementByMouse){_this92._currentDistanceMeasurementByMouse.destroy();_this92._currentDistanceMeasurementByMouse=null;}startDot.setVisible(false);touchState=FIRST_TOUCH_EXPECTED;});canvas.addEventListener("touchstart",this._onCanvasTouchStart=function(event){var touches=event.touches;var changedTouches=event.changedTouches;if(touches.length===1&&changedTouches.length===1){getCanvasPosFromEvent(touches[0],touchStartCanvasPos);}},{passive:true});canvas.addEventListener("touchend",this._onCanvasTouchEnd=function(event){var touches=event.touches;var changedTouches=event.changedTouches;if(touches.length===0&&changedTouches.length===1){getCanvasPosFromEvent(changedTouches[0],touchEndCanvasPos);if(touchEndCanvasPos[0]>touchStartCanvasPos[0]+touchCanvasClickTolerance||touchEndCanvasPos[0]<touchStartCanvasPos[0]-touchCanvasClickTolerance||touchEndCanvasPos[1]>touchStartCanvasPos[1]+touchCanvasClickTolerance||touchEndCanvasPos[1]<touchStartCanvasPos[1]-touchCanvasClickTolerance){return;// User is repositioning the camera or model
|
|
21225
21261
|
}var pickResult=scene.pick({canvasPos:touchEndCanvasPos,pickSurface:true,pickSurfacePrecision:pickSurfacePrecisionEnabled});if(pickResult&&pickResult.worldPos){switch(touchState){case FIRST_TOUCH_EXPECTED:startDot.setVisible(true);_this92._touchStartMarker.worldPos=pickResult.worldPos;touchStartWorldPos.set(pickResult.worldPos);touchState=SECOND_TOUCH_EXPECTED;break;case SECOND_TOUCH_EXPECTED:startDot.setVisible(false);_this92._touchStartMarker.worldPos=pickResult.worldPos;var measurement=plugin.createMeasurement({id:math.createUUID(),origin:{entity:mouseHoverEntity,worldPos:touchStartWorldPos},target:{entity:mouseHoverEntity,worldPos:pickResult.worldPos},approximate:!pickSurfacePrecisionEnabled});measurement.clickable=true;touchState=FIRST_TOUCH_EXPECTED;break;}}else{startDot.setVisible(false);touchState=FIRST_TOUCH_EXPECTED;}}// event.stopPropagation();
|
|
21226
21262
|
},{passive:true});this._active=true;}/**
|
|
21227
21263
|
* Deactivates this DistanceMeasurementsControl, making it unresponsive to input.
|
|
@@ -21450,10 +21486,13 @@ mouseHoverEntity=event.entity;mouseWorldPos.set(event.worldPos);mouseCanvasPos.s
|
|
|
21450
21486
|
* @param {boolean} [cfg.defaultWireVisible=true] The default value of the DistanceMeasurements `wireVisible` property.
|
|
21451
21487
|
* @param {boolean} [cfg.defaultLabelsVisible=true] The default value of the DistanceMeasurements `labelsVisible` property.
|
|
21452
21488
|
* @param {boolean} [cfg.defaultAxisVisible=true] The default value of the DistanceMeasurements `axisVisible` property.
|
|
21489
|
+
* @param {boolean} [cfg.defaultXAxisVisible=true] The default value of the DistanceMeasurements `xAxisVisible` property.
|
|
21490
|
+
* @param {boolean} [cfg.defaultYAxisVisible=true] The default value of the DistanceMeasurements `yAxisVisible` property.
|
|
21491
|
+
* @param {boolean} [cfg.defaultZAxisVisible=true] The default value of the DistanceMeasurements `zAxisVisible` property.
|
|
21453
21492
|
* @param {string} [cfg.defaultColor=#00BBFF] The default color of the length dots, wire and label.
|
|
21454
21493
|
* @param {number} [cfg.zIndex] If set, the wires, dots and labels will have this zIndex (+1 for dots and +2 for labels).
|
|
21455
21494
|
*
|
|
21456
|
-
*/function DistanceMeasurementsPlugin(viewer){var _this93;var cfg=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,DistanceMeasurementsPlugin);_this93=_super64.call(this,"DistanceMeasurements",viewer);_this93._container=cfg.container||document.body;_this93._control=new DistanceMeasurementsControl(_assertThisInitialized(_this93));_this93._measurements={};_this93.labelMinAxisLength=cfg.labelMinAxisLength;_this93.defaultVisible=cfg.defaultVisible!==false;_this93.defaultOriginVisible=cfg.defaultOriginVisible!==false;_this93.defaultTargetVisible=cfg.defaultTargetVisible!==false;_this93.defaultWireVisible=cfg.defaultWireVisible!==false;_this93.defaultLabelsVisible=cfg.defaultLabelsVisible!==false;_this93.defaultAxisVisible=cfg.defaultAxisVisible!==false;_this93.defaultColor=cfg.defaultColor!==undefined?cfg.defaultColor:"#00BBFF";_this93.zIndex=cfg.zIndex||10000;_this93._onMouseOver=function(event,measurement){_this93.fire("mouseOver",{plugin:_assertThisInitialized(_this93),measurement:measurement,event:event});};_this93._onMouseLeave=function(event,measurement){_this93.fire("mouseLeave",{plugin:_assertThisInitialized(_this93),measurement:measurement,event:event});};_this93._onContextMenu=function(event,measurement){_this93.fire("contextMenu",{plugin:_assertThisInitialized(_this93),measurement:measurement,event:event});};return _this93;}/**
|
|
21495
|
+
*/function DistanceMeasurementsPlugin(viewer){var _this93;var cfg=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,DistanceMeasurementsPlugin);_this93=_super64.call(this,"DistanceMeasurements",viewer);_this93._container=cfg.container||document.body;_this93._control=new DistanceMeasurementsControl(_assertThisInitialized(_this93));_this93._measurements={};_this93.labelMinAxisLength=cfg.labelMinAxisLength;_this93.defaultVisible=cfg.defaultVisible!==false;_this93.defaultOriginVisible=cfg.defaultOriginVisible!==false;_this93.defaultTargetVisible=cfg.defaultTargetVisible!==false;_this93.defaultWireVisible=cfg.defaultWireVisible!==false;_this93.defaultLabelsVisible=cfg.defaultLabelsVisible!==false;_this93.defaultAxisVisible=cfg.defaultAxisVisible!==false;_this93.defaultXAxisVisible=cfg.defaultXAxisVisible!==false;_this93.defaultYAxisVisible=cfg.defaultYAxisVisible!==false;_this93.defaultZAxisVisible=cfg.defaultZAxisVisible!==false;_this93.defaultColor=cfg.defaultColor!==undefined?cfg.defaultColor:"#00BBFF";_this93.zIndex=cfg.zIndex||10000;_this93._onMouseOver=function(event,measurement){_this93.fire("mouseOver",{plugin:_assertThisInitialized(_this93),measurement:measurement,event:event});};_this93._onMouseLeave=function(event,measurement){_this93.fire("mouseLeave",{plugin:_assertThisInitialized(_this93),measurement:measurement,event:event});};_this93._onContextMenu=function(event,measurement){_this93.fire("contextMenu",{plugin:_assertThisInitialized(_this93),measurement:measurement,event:event});};return _this93;}/**
|
|
21457
21496
|
* @private
|
|
21458
21497
|
*/_createClass(DistanceMeasurementsPlugin,[{key:"send",value:function send(name,value){}/**
|
|
21459
21498
|
* Gets the {@link DistanceMeasurementsControl}, which creates {@link DistanceMeasurement}s from user input.
|
|
@@ -21492,10 +21531,13 @@ mouseHoverEntity=event.entity;mouseWorldPos.set(event.worldPos);mouseCanvasPos.s
|
|
|
21492
21531
|
* @param {Boolean} [params.targetVisible=true] Whether to initially show the {@link DistanceMeasurement} target.
|
|
21493
21532
|
* @param {Boolean} [params.wireVisible=true] Whether to initially show the direct point-to-point wire between {@link DistanceMeasurement#origin} and {@link DistanceMeasurement#target}.
|
|
21494
21533
|
* @param {Boolean} [params.axisVisible=true] Whether to initially show the axis-aligned wires between {@link DistanceMeasurement#origin} and {@link DistanceMeasurement#target}.
|
|
21534
|
+
* @param {Boolean} [params.xAxisVisible=true] Whether to initially show the X-axis-aligned wires between {@link DistanceMeasurement#origin} and {@link DistanceMeasurement#target}.
|
|
21535
|
+
* @param {Boolean} [params.yAxisVisible=true] Whether to initially show the Y-axis-aligned wires between {@link DistanceMeasurement#origin} and {@link DistanceMeasurement#target}.
|
|
21536
|
+
* @param {Boolean} [params.zAxisVisible=true] Whether to initially show the Z-axis-aligned wires between {@link DistanceMeasurement#origin} and {@link DistanceMeasurement#target}.
|
|
21495
21537
|
* @param {Boolean} [params.labelsVisible=true] Whether to initially show the labels.
|
|
21496
21538
|
* @param {string} [params.color] The color of the length dot, wire and label.
|
|
21497
21539
|
* @returns {DistanceMeasurement} The new {@link DistanceMeasurement}.
|
|
21498
|
-
*/,set:function set(labelMinAxisLength){if(labelMinAxisLength<1){this.error("labelMinAxisLength must be >= 1; defaulting to 25");labelMinAxisLength=25;}this._labelMinAxisLength=labelMinAxisLength||25;}},{key:"createMeasurement",value:function createMeasurement(){var _this94=this;var params=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};if(this.viewer.scene.components[params.id]){this.error("Viewer scene component with this ID already exists: "+params.id);delete params.id;}var origin=params.origin;var target=params.target;var measurement=new DistanceMeasurement(this,{id:params.id,plugin:this,container:this._container,origin:{entity:origin.entity,worldPos:origin.worldPos},target:{entity:target.entity,worldPos:target.worldPos},visible:params.visible,wireVisible:params.wireVisible,axisVisible:params.axisVisible!==false&&this.defaultAxisVisible!==false,labelsVisible:params.labelsVisible!==false&&this.defaultLabelsVisible!==false,originVisible:params.originVisible,targetVisible:params.targetVisible,color:params.color,onMouseOver:this._onMouseOver,onMouseLeave:this._onMouseLeave,onContextMenu:this._onContextMenu});this._measurements[measurement.id]=measurement;measurement.on("destroyed",function(){delete _this94._measurements[measurement.id];});this.fire("measurementCreated",measurement);return measurement;}/**
|
|
21540
|
+
*/,set:function set(labelMinAxisLength){if(labelMinAxisLength<1){this.error("labelMinAxisLength must be >= 1; defaulting to 25");labelMinAxisLength=25;}this._labelMinAxisLength=labelMinAxisLength||25;}},{key:"createMeasurement",value:function createMeasurement(){var _this94=this;var params=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};if(this.viewer.scene.components[params.id]){this.error("Viewer scene component with this ID already exists: "+params.id);delete params.id;}var origin=params.origin;var target=params.target;var measurement=new DistanceMeasurement(this,{id:params.id,plugin:this,container:this._container,origin:{entity:origin.entity,worldPos:origin.worldPos},target:{entity:target.entity,worldPos:target.worldPos},visible:params.visible,wireVisible:params.wireVisible,axisVisible:params.axisVisible!==false&&this.defaultAxisVisible!==false,xAxisVisible:params.xAxisVisible!==false&&this.defaultXAxisVisible!==false,yAxisVisible:params.yAxisVisible!==false&&this.defaultYAxisVisible!==false,zAxisVisible:params.zAxisVisible!==false&&this.defaultZAxisVisible!==false,labelsVisible:params.labelsVisible!==false&&this.defaultLabelsVisible!==false,originVisible:params.originVisible,targetVisible:params.targetVisible,color:params.color,onMouseOver:this._onMouseOver,onMouseLeave:this._onMouseLeave,onContextMenu:this._onContextMenu});this._measurements[measurement.id]=measurement;measurement.on("destroyed",function(){delete _this94._measurements[measurement.id];});this.fire("measurementCreated",measurement);return measurement;}/**
|
|
21499
21541
|
* Destroys a {@link DistanceMeasurement}.
|
|
21500
21542
|
*
|
|
21501
21543
|
* @param {String} id ID of DistanceMeasurement to destroy.
|
|
@@ -27655,7 +27697,7 @@ var isBase64=!!dataUriRegexResult[2];var data=dataUriRegexResult[3];data=window.
|
|
|
27655
27697
|
* Note: LAS specification recommends 16 bits.
|
|
27656
27698
|
*
|
|
27657
27699
|
* @param {Number|String} value Valid values are 8, 16 and "auto".
|
|
27658
|
-
*/,set:function set(value){this._colorDepth
|
|
27700
|
+
*/,set:function set(value){this._colorDepth=value||"auto";}/**
|
|
27659
27701
|
* Loads an ````LAS```` model into this LASLoaderPlugin's {@link Viewer}.
|
|
27660
27702
|
*
|
|
27661
27703
|
* @param {*} params Loading parameters.
|