@realsee/dnalogel 2.0.0-alpha.39 → 2.0.0-alpha.41

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.
Files changed (104) hide show
  1. package/dist/ItemLabelPlugin/index.js +2 -4
  2. package/dist/PanoMeasurePlugin/Controller/ViewController.d.ts +16 -0
  3. package/dist/PanoMeasurePlugin/Controller/index.d.ts +1 -1
  4. package/dist/PanoMeasurePlugin/index.js +232 -75
  5. package/dist/PanoMeasurePlugin/utils/constants.d.ts +4 -4
  6. package/dist/PanoMeasurePlugin/utils/distanceDom.d.ts +2 -2
  7. package/dist/PanoMeasurePlugin/utils/line.d.ts +3 -3
  8. package/dist/index.es.js +236 -81
  9. package/dist/index.js +236 -81
  10. package/dist/index.umd.js +236 -81
  11. package/docs/classes/Magnifier.html +4 -4
  12. package/docs/classes/ModelRoomLabelController.html +4 -4
  13. package/docs/enums/CameraMovementEffect.html +2 -2
  14. package/docs/enums/DIRECTION.html +1 -1
  15. package/docs/enums/DISPLAY_STRATEGY_TYPE.html +1 -1
  16. package/docs/enums/FLOOR_PLAN_ATTACHED_TO.html +1 -1
  17. package/docs/enums/ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE.html +1 -1
  18. package/docs/enums/Rotation.html +2 -2
  19. package/docs/index.html +1 -1
  20. package/docs/interfaces/CSS3DRenderPluginExportType.html +2 -2
  21. package/docs/interfaces/CameraMovementPluginExportType.html +2 -2
  22. package/docs/interfaces/FloorplanBounding.html +4 -4
  23. package/docs/interfaces/FloorplanData.html +2 -2
  24. package/docs/interfaces/FloorplanEntrance.html +7 -7
  25. package/docs/interfaces/FloorplanExtraObject.html +3 -3
  26. package/docs/interfaces/FloorplanExtraObject3D.html +2 -2
  27. package/docs/interfaces/FloorplanFloorData.html +2 -2
  28. package/docs/interfaces/FloorplanImagePosition.html +2 -2
  29. package/docs/interfaces/FloorplanObserver.html +2 -2
  30. package/docs/interfaces/FloorplanOutlineItem.html +2 -2
  31. package/docs/interfaces/FloorplanPosition.html +2 -2
  32. package/docs/interfaces/FloorplanRoomItem.html +6 -6
  33. package/docs/interfaces/FloorplanRoomLabelItem.html +3 -3
  34. package/docs/interfaces/FloorplanServerBounding.html +4 -4
  35. package/docs/interfaces/FloorplanServerComputedData.html +1 -1
  36. package/docs/interfaces/FloorplanServerData.html +2 -2
  37. package/docs/interfaces/FloorplanServerEntrance.html +7 -7
  38. package/docs/interfaces/FloorplanServerFloorData.html +2 -2
  39. package/docs/interfaces/FloorplanServerImagePosition.html +2 -2
  40. package/docs/interfaces/FloorplanServerObserver.html +2 -2
  41. package/docs/interfaces/FloorplanServerOutlineItem.html +2 -2
  42. package/docs/interfaces/FloorplanServerPosition.html +2 -2
  43. package/docs/interfaces/FloorplanServerRoomItem.html +7 -7
  44. package/docs/interfaces/FloorplanServerRoomLabelItem.html +3 -3
  45. package/docs/interfaces/ItemLabelPluginData.html +1 -1
  46. package/docs/interfaces/ItemLabelPluginExportReturnsType.html +1 -1
  47. package/docs/interfaces/ItemLabelPluginParametersType.html +1 -1
  48. package/docs/interfaces/LineJson.html +1 -1
  49. package/docs/interfaces/ModelChassisCompassPluginData.html +1 -1
  50. package/docs/interfaces/ModelChassisCompassPluginExportType.html +1 -1
  51. package/docs/interfaces/ModelChassisCompassPluginParameterType.html +1 -1
  52. package/docs/interfaces/ModelEntryDoorGuidePluginData.html +1 -1
  53. package/docs/interfaces/ModelEntryDoorGuidePluginExportType.html +1 -1
  54. package/docs/interfaces/ModelItemLabelPluginData.html +1 -1
  55. package/docs/interfaces/ModelItemLabelPluginExportReturnsType.html +1 -1
  56. package/docs/interfaces/ModelItemLabelPluginParametersType.html +1 -1
  57. package/docs/interfaces/ModelRoomLabelPluginData.html +1 -1
  58. package/docs/interfaces/ModelTVVideoPluginData.html +1 -1
  59. package/docs/interfaces/ModelTVVideoPluginExportType.html +1 -1
  60. package/docs/interfaces/ModelTVVideoPluginParameterType.html +1 -1
  61. package/docs/interfaces/ModelViewPluginExportType.html +1 -1
  62. package/docs/interfaces/OpenParameter.html +2 -2
  63. package/docs/interfaces/PanoCompassPluginData.html +1 -1
  64. package/docs/interfaces/PanoCompassPluginParameterType.html +1 -1
  65. package/docs/interfaces/PanoCursorRaycasterPluginExportType.html +6 -6
  66. package/docs/interfaces/PanoCursorRaycasterPluginParameterType.html +1 -1
  67. package/docs/interfaces/PanoMeasureParameterType.html +1 -1
  68. package/docs/interfaces/PanoRulerPluginExportType.html +1 -1
  69. package/docs/interfaces/PanoRulerPluginOptions.html +1 -1
  70. package/docs/interfaces/PanoRulerPluginParameterType.html +1 -1
  71. package/docs/interfaces/PanoRulerProPluginExportType.html +1 -1
  72. package/docs/interfaces/PanoRulerProPluginOptions.html +1 -1
  73. package/docs/interfaces/PanoRulerProPluginParameterType.html +1 -1
  74. package/docs/interfaces/PanoRulerProPluginState.html +1 -1
  75. package/docs/interfaces/PanoSpatialTagPluginContentEvent.html +1 -1
  76. package/docs/interfaces/PanoSpatialTagPluginContentReplacement.html +1 -1
  77. package/docs/interfaces/PanoSpatialTagPluginData.html +1 -1
  78. package/docs/interfaces/PanoSpatialTagPluginDataElement.html +1 -1
  79. package/docs/interfaces/PanoSpatialTagPluginExportType.html +1 -1
  80. package/docs/interfaces/PanoSpatialTagPluginOriginElement.html +1 -1
  81. package/docs/interfaces/PanoSpatialTagPluginParameterType.html +1 -1
  82. package/docs/interfaces/PanoSpatialTagPluginPointElement.html +1 -1
  83. package/docs/interfaces/PanoSpatialTagPluginTagElement.html +1 -1
  84. package/docs/interfaces/Point.html +1 -1
  85. package/docs/interfaces/PointJson.html +1 -1
  86. package/docs/interfaces/Room.html +1 -1
  87. package/docs/interfaces/RoomInfo.html +1 -1
  88. package/docs/interfaces/RoomLabel.html +7 -7
  89. package/docs/interfaces/RoomRules.html +1 -1
  90. package/docs/interfaces/Rooms.html +1 -1
  91. package/docs/modules.html +18 -18
  92. package/libs/ItemLabelPlugin/ItemLabelComponent.js +2 -4
  93. package/libs/PanoMeasurePlugin/Controller/ViewController.d.ts +16 -0
  94. package/libs/PanoMeasurePlugin/Controller/ViewController.js +160 -0
  95. package/libs/PanoMeasurePlugin/Controller/WatchController.js +1 -0
  96. package/libs/PanoMeasurePlugin/Controller/index.d.ts +1 -1
  97. package/libs/PanoMeasurePlugin/Controller/index.js +2 -0
  98. package/libs/PanoMeasurePlugin/Model/line.js +5 -5
  99. package/libs/PanoMeasurePlugin/utils/constants.d.ts +4 -4
  100. package/libs/PanoMeasurePlugin/utils/distanceDom.d.ts +2 -2
  101. package/libs/PanoMeasurePlugin/utils/distanceDom.js +3 -3
  102. package/libs/PanoMeasurePlugin/utils/line.d.ts +3 -3
  103. package/libs/PanoMeasurePlugin/utils/line.js +3 -3
  104. package/package.json +2 -2
package/dist/index.umd.js CHANGED
@@ -393,7 +393,7 @@
393
393
  };
394
394
  };
395
395
 
396
- function createLine(point1, point2, color = new THREE.Vector3(1, 1, 1), dashed = false) {
396
+ function createLine$1(point1, point2, color = new THREE.Vector3(1, 1, 1), dashed = false) {
397
397
  const line$1 = new line.Line(point1, point2);
398
398
  line$1.setMaterial({ dashed, color, linewidth: 1 });
399
399
  line$1.remove(line$1.points);
@@ -429,7 +429,7 @@
429
429
  const helperCenterPoint = movePointTowardsCamera(point, fixDistance);
430
430
  const p = helperCenterPoint;
431
431
  const pointAxesHelperMesh = new THREE.Group();
432
- pointAxesHelperMesh.add(createLine(new THREE.Vector3(p.x + halfLength, p.y, p.z), new THREE.Vector3(p.x - halfLength, p.y, p.z), new THREE.Vector3(1, 0, 0)), createLine(new THREE.Vector3(p.x, p.y + halfLength, p.z), new THREE.Vector3(p.x, p.y - halfLength, p.z), new THREE.Vector3(0, 1, 0)), createLine(new THREE.Vector3(p.x, p.y, p.z + halfLength), new THREE.Vector3(p.x, p.y, p.z - halfLength), new THREE.Vector3(0, 0, 1)));
432
+ pointAxesHelperMesh.add(createLine$1(new THREE.Vector3(p.x + halfLength, p.y, p.z), new THREE.Vector3(p.x - halfLength, p.y, p.z), new THREE.Vector3(1, 0, 0)), createLine$1(new THREE.Vector3(p.x, p.y + halfLength, p.z), new THREE.Vector3(p.x, p.y - halfLength, p.z), new THREE.Vector3(0, 1, 0)), createLine$1(new THREE.Vector3(p.x, p.y, p.z + halfLength), new THREE.Vector3(p.x, p.y, p.z - halfLength), new THREE.Vector3(0, 0, 1)));
433
433
  five.scene.add(pointAxesHelperMesh);
434
434
  five.needsRender = true;
435
435
  // 清理函数
@@ -9925,7 +9925,7 @@
9925
9925
  pointsRenderOrder: 10,
9926
9926
  };
9927
9927
 
9928
- function creatLine(start, end, opts) {
9928
+ function createLine(start, end, opts) {
9929
9929
  var _a, _b, _c, _d, _e;
9930
9930
  const lineWidth = (_a = opts === null || opts === void 0 ? void 0 : opts.lineWidth) !== null && _a !== void 0 ? _a : 2;
9931
9931
  const lineColor = (_b = opts === null || opts === void 0 ? void 0 : opts.lineColor) !== null && _b !== void 0 ? _b : new THREE.Color(0xffffff);
@@ -9948,10 +9948,10 @@
9948
9948
  pointMaterial.map = opts.pointTexture;
9949
9949
  return line$1;
9950
9950
  }
9951
- function creatLineMesh(line, type) {
9951
+ function createLineMesh(line, type) {
9952
9952
  const [point, anotherPoint] = line.points;
9953
9953
  const opts = type === 'light' ? lightLineOpts : normalLineOpts;
9954
- const fiveLine = creatLine(point.position, anotherPoint.position, opts);
9954
+ const fiveLine = createLine(point.position, anotherPoint.position, opts);
9955
9955
  fiveLine.name = 'normalLine_' + line.id;
9956
9956
  return fiveLine;
9957
9957
  }
@@ -9963,7 +9963,7 @@
9963
9963
  return true;
9964
9964
  }
9965
9965
 
9966
- function creatContentDom() {
9966
+ function createContentDom() {
9967
9967
  const contentDom = document.createElement('div');
9968
9968
  contentDom.setAttribute('style', `backdrop-filter: blur(4px);-webkit-backdrop-filter: blur(4px);`);
9969
9969
  contentDom.style.padding = '3px 6px';
@@ -9991,7 +9991,7 @@
9991
9991
  containerDom.style.transformOrigin = 'left top';
9992
9992
  return containerDom;
9993
9993
  }
9994
- function creatDistanceItem(props) {
9994
+ function createDistanceItem(props) {
9995
9995
  function handleClick() {
9996
9996
  var _a;
9997
9997
  // 线被选中时才高亮,外部手动触发高亮
@@ -10065,7 +10065,7 @@
10065
10065
  }
10066
10066
  const { line } = props;
10067
10067
  const lineID = line.id;
10068
- const contentDom = creatContentDom();
10068
+ const contentDom = createContentDom();
10069
10069
  const containerDom = createContainerDom(line);
10070
10070
  const userDistanceItem = props.userDistanceItem;
10071
10071
  const ndcPosition = new THREE.Vector3(0, 0, 0);
@@ -10150,9 +10150,9 @@
10150
10150
  throw new Error('无效的线段, 一个点无法构成线段');
10151
10151
  this.hook = new five.Subscribe();
10152
10152
  this.points = [point, anotherPoint];
10153
- this.mesh = creatLineMesh(this, 'normal');
10154
- this.lightMesh = creatLineMesh(this, 'light');
10155
- this.distanceItem = creatDistanceItem({
10153
+ this.mesh = createLineMesh(this, 'normal');
10154
+ this.lightMesh = createLineMesh(this, 'light');
10155
+ this.distanceItem = createDistanceItem({
10156
10156
  line: this,
10157
10157
  clickCallback: () => this.hook.emit('selected', this),
10158
10158
  userDistanceItem: this.model.params.userDistanceItemCreator
@@ -10865,6 +10865,227 @@
10865
10865
  }
10866
10866
  }
10867
10867
 
10868
+ /**
10869
+ * 获取一点对于线段上最近的一点,
10870
+ * 如果可以是过直线垂线的垂足,不行的话取线段的两端
10871
+ * @param point
10872
+ * @param linePoints
10873
+ * @return
10874
+ */
10875
+ function closestPointOnLine(point, linePoints) {
10876
+ const tA = point.x - linePoints[0].x;
10877
+ const tB = point.y - linePoints[0].y;
10878
+ const tC = linePoints[1].x - linePoints[0].x;
10879
+ const tD = linePoints[1].y - linePoints[0].y;
10880
+ // 设线段为 AB 线段,线段外一点为 P
10881
+ // tDot = AP 向量与 AB 向量乘积,tLenSq 为 |AB|平方。
10882
+ // tParam 是 AP 向量在 AB 向量投影向量 AC 与 AB 向量的比。
10883
+ const tDot = tA * tC + tB * tD;
10884
+ const tLenSq = tC * tC + tD * tD;
10885
+ const tParam = tDot / tLenSq;
10886
+ let tXx, tYy;
10887
+ if (tParam < 0 || samePointAt(linePoints[0], linePoints[1])) {
10888
+ tXx = linePoints[0].x;
10889
+ tYy = linePoints[0].y;
10890
+ }
10891
+ else if (tParam > 1) {
10892
+ tXx = linePoints[1].x;
10893
+ tYy = linePoints[1].y;
10894
+ }
10895
+ else {
10896
+ tXx = linePoints[0].x + tParam * tC;
10897
+ tYy = linePoints[0].y + tParam * tD;
10898
+ }
10899
+ return new THREE.Vector2(tXx, tYy);
10900
+ }
10901
+ /**
10902
+ * 检查两个点是否位置相同
10903
+ * point: { x: number, y: number }
10904
+ * @param point1
10905
+ * @param point2
10906
+ * @return
10907
+ */
10908
+ function samePointAt(point1, point2) {
10909
+ return point1.x === point2.x && point1.y === point2.y;
10910
+ }
10911
+
10912
+ function findAssociatedLines(line) {
10913
+ // 找跟这个线段相邻的线
10914
+ const mergeNextLine = (point, nextIndex, target) => {
10915
+ const nextLine = point.lines.find((line) => {
10916
+ const pointIndex = line.points.findIndex(({ id }) => id === point.id);
10917
+ if (pointIndex === nextIndex)
10918
+ return false;
10919
+ return true;
10920
+ });
10921
+ if (!nextLine)
10922
+ return target;
10923
+ const nextPoint = nextLine.points[nextIndex];
10924
+ if (!nextPoint)
10925
+ return target;
10926
+ return mergeNextLine(nextPoint, nextIndex, target.concat(nextLine));
10927
+ };
10928
+ const rightLines = mergeNextLine(line.points[0], 1, []);
10929
+ const leftLines = mergeNextLine(line.points[0], 0, []);
10930
+ const lines = rightLines.concat(leftLines);
10931
+ return lines;
10932
+ }
10933
+
10934
+ class ViewController extends BaseController {
10935
+ constructor(params) {
10936
+ super(params);
10937
+ Object.defineProperty(this, "type", {
10938
+ enumerable: true,
10939
+ configurable: true,
10940
+ writable: true,
10941
+ value: 'view'
10942
+ });
10943
+ Object.defineProperty(this, "highlightedLines", {
10944
+ enumerable: true,
10945
+ configurable: true,
10946
+ writable: true,
10947
+ value: []
10948
+ });
10949
+ Object.defineProperty(this, "hammer", {
10950
+ enumerable: true,
10951
+ configurable: true,
10952
+ writable: true,
10953
+ value: void 0
10954
+ });
10955
+ Object.defineProperty(this, "wantsTapGesture", {
10956
+ enumerable: true,
10957
+ configurable: true,
10958
+ writable: true,
10959
+ value: (raycaster) => {
10960
+ // 不存在线
10961
+ if (this.model.lines.length === 0)
10962
+ return;
10963
+ const [target] = this.five.model.intersectRaycaster(raycaster);
10964
+ // 点击射线与模型没有交点
10965
+ if (!target)
10966
+ return;
10967
+ const camera = this.five.camera;
10968
+ const ndcTarget = target.point.clone().project(camera);
10969
+ const screenWidth = this.container.clientWidth;
10970
+ const screenHeight = this.container.clientHeight;
10971
+ const targetScreenPosition = new THREE.Vector2(ndcTarget.x * screenWidth, ndcTarget.y * screenHeight);
10972
+ // 把线的端点全部映射到屏幕上,过滤掉不在视野内的线,同时乘以屏幕宽 & 高
10973
+ const screenLines = this.model.lines
10974
+ .map((line) => {
10975
+ const [startPoint, endPoint] = line.points;
10976
+ const ndcStartPoint = startPoint.position.clone().project(camera);
10977
+ const ndcEndPoint = endPoint.position.clone().project(camera);
10978
+ if (!isNDCPointInScreen(ndcStartPoint) && !isNDCPointInScreen(ndcEndPoint))
10979
+ return null;
10980
+ const startScreenPosition = new THREE.Vector2(ndcStartPoint.x * screenWidth, ndcStartPoint.y * screenHeight);
10981
+ const endScreenPosition = new THREE.Vector2(ndcEndPoint.x * screenWidth, ndcEndPoint.y * screenHeight);
10982
+ return { id: line.id, points: [startScreenPosition, endScreenPosition] };
10983
+ })
10984
+ .filter((line) => !!line);
10985
+ if (screenLines.length === 0)
10986
+ return;
10987
+ // 找这些线距离鼠标点击位置最近的线
10988
+ const distanceLines = screenLines
10989
+ .map((line) => {
10990
+ const closestPoint = closestPointOnLine(targetScreenPosition, line.points);
10991
+ return { id: line.id, distance: closestPoint.distanceTo(targetScreenPosition) };
10992
+ })
10993
+ .sort((a, b) => a.distance - b.distance);
10994
+ const closestScreenLine = distanceLines[0];
10995
+ const closestLine = closestScreenLine.distance > 20
10996
+ ? undefined
10997
+ : this.model.lines.find(({ id }) => id === closestScreenLine.id);
10998
+ if (this.highlightedLines.length > 0 && !closestLine) {
10999
+ this.clearHighlightLines();
11000
+ return false;
11001
+ }
11002
+ if (closestLine) {
11003
+ this.chooseLine(closestLine);
11004
+ return false;
11005
+ }
11006
+ }
11007
+ });
11008
+ Object.defineProperty(this, "chooseLine", {
11009
+ enumerable: true,
11010
+ configurable: true,
11011
+ writable: true,
11012
+ value: (line) => {
11013
+ const highlightLines = findAssociatedLines(line);
11014
+ this.highlightLines(highlightLines);
11015
+ this.five.needsRender = true;
11016
+ this.hook.emit('selectedChange', highlightLines.map((line) => line.toCompletelyJson()));
11017
+ }
11018
+ });
11019
+ Object.defineProperty(this, "lineRemoved", {
11020
+ enumerable: true,
11021
+ configurable: true,
11022
+ writable: true,
11023
+ value: (line) => {
11024
+ this.removeLine(line);
11025
+ // TODO: 这个逻辑不太好,改进一下
11026
+ this.hook.emit('selectedChange', this.model.lines.filter((line) => line.selected).map((line) => line.toCompletelyJson()));
11027
+ }
11028
+ });
11029
+ Object.defineProperty(this, "onCameraUpdate", {
11030
+ enumerable: true,
11031
+ configurable: true,
11032
+ writable: true,
11033
+ value: () => {
11034
+ this.updateDistanceUI();
11035
+ }
11036
+ });
11037
+ this.model.lines.forEach((line) => {
11038
+ line.distanceItem.appendTo(this.container);
11039
+ line.distanceItem.update(this.five);
11040
+ line.hook.on('selected', this.chooseLine);
11041
+ this.group.add(line.mesh);
11042
+ });
11043
+ const fiveElement = this.five.getElement();
11044
+ if (fiveElement) {
11045
+ const hammer = new Hammer__default["default"](fiveElement);
11046
+ this.hammer = hammer;
11047
+ }
11048
+ this.model.hook.on('lineRemoved', this.lineRemoved);
11049
+ this.five.on('cameraUpdate', this.onCameraUpdate);
11050
+ this.five.on('wantsTapGesture', this.wantsTapGesture);
11051
+ this.five.needsRender = true;
11052
+ }
11053
+ dispose() {
11054
+ var _a;
11055
+ super.dispose();
11056
+ this.model.hook.off('lineRemoved', this.lineRemoved);
11057
+ this.five.off('cameraUpdate', this.onCameraUpdate);
11058
+ this.five.off('wantsTapGesture', this.wantsTapGesture);
11059
+ this.five.needsRender = true;
11060
+ this.hook.emit('selectedChange', []);
11061
+ (_a = this.hammer) === null || _a === void 0 ? void 0 : _a.destroy();
11062
+ }
11063
+ highlightLine(line) {
11064
+ if (line.selected)
11065
+ return;
11066
+ line.selected = true;
11067
+ this.group.add(line.lightMesh);
11068
+ line.distanceItem.highlight();
11069
+ this.five.needsRender = true;
11070
+ }
11071
+ clearHighlightLines() {
11072
+ if (this.group.children.length === 0)
11073
+ return;
11074
+ this.model.lines.forEach((line) => {
11075
+ line.selected = false;
11076
+ line.distanceItem.unHighlight();
11077
+ this.group.remove(line.lightMesh);
11078
+ });
11079
+ this.highlightedLines = [];
11080
+ this.five.needsRender = true;
11081
+ }
11082
+ highlightLines(lines) {
11083
+ this.clearHighlightLines();
11084
+ this.highlightedLines = lines;
11085
+ lines.forEach((line) => this.highlightLine(line));
11086
+ }
11087
+ }
11088
+
10868
11089
  const svg = `
10869
11090
  <svg class="fpm__delete-icon" width="16px" height="17px" viewBox="0 0 16 17" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
10870
11091
  <defs>
@@ -11069,50 +11290,6 @@
11069
11290
  }
11070
11291
  }
11071
11292
 
11072
- /**
11073
- * 获取一点对于线段上最近的一点,
11074
- * 如果可以是过直线垂线的垂足,不行的话取线段的两端
11075
- * @param point
11076
- * @param linePoints
11077
- * @return
11078
- */
11079
- function closestPointOnLine(point, linePoints) {
11080
- const tA = point.x - linePoints[0].x;
11081
- const tB = point.y - linePoints[0].y;
11082
- const tC = linePoints[1].x - linePoints[0].x;
11083
- const tD = linePoints[1].y - linePoints[0].y;
11084
- // 设线段为 AB 线段,线段外一点为 P
11085
- // tDot = AP 向量与 AB 向量乘积,tLenSq 为 |AB|平方。
11086
- // tParam 是 AP 向量在 AB 向量投影向量 AC 与 AB 向量的比。
11087
- const tDot = tA * tC + tB * tD;
11088
- const tLenSq = tC * tC + tD * tD;
11089
- const tParam = tDot / tLenSq;
11090
- let tXx, tYy;
11091
- if (tParam < 0 || samePointAt(linePoints[0], linePoints[1])) {
11092
- tXx = linePoints[0].x;
11093
- tYy = linePoints[0].y;
11094
- }
11095
- else if (tParam > 1) {
11096
- tXx = linePoints[1].x;
11097
- tYy = linePoints[1].y;
11098
- }
11099
- else {
11100
- tXx = linePoints[0].x + tParam * tC;
11101
- tYy = linePoints[0].y + tParam * tD;
11102
- }
11103
- return new THREE.Vector2(tXx, tYy);
11104
- }
11105
- /**
11106
- * 检查两个点是否位置相同
11107
- * point: { x: number, y: number }
11108
- * @param point1
11109
- * @param point2
11110
- * @return
11111
- */
11112
- function samePointAt(point1, point2) {
11113
- return point1.x === point2.x && point1.y === point2.y;
11114
- }
11115
-
11116
11293
  function ndc2Screen(ndcPosition, containerSize) {
11117
11294
  const left = ((ndcPosition.x + 1) / 2) * containerSize.width;
11118
11295
  const top = (-(ndcPosition.y - 1) / 2) * containerSize.height;
@@ -11145,28 +11322,6 @@
11145
11322
  return ndcPoints[0];
11146
11323
  }
11147
11324
 
11148
- function findAssociatedLines(line) {
11149
- // 找跟这个线段相邻的线
11150
- const mergeNextLine = (point, nextIndex, target) => {
11151
- const nextLine = point.lines.find((line) => {
11152
- const pointIndex = line.points.findIndex(({ id }) => id === point.id);
11153
- if (pointIndex === nextIndex)
11154
- return false;
11155
- return true;
11156
- });
11157
- if (!nextLine)
11158
- return target;
11159
- const nextPoint = nextLine.points[nextIndex];
11160
- if (!nextPoint)
11161
- return target;
11162
- return mergeNextLine(nextPoint, nextIndex, target.concat(nextLine));
11163
- };
11164
- const rightLines = mergeNextLine(line.points[0], 1, []);
11165
- const leftLines = mergeNextLine(line.points[0], 0, []);
11166
- const lines = rightLines.concat(leftLines);
11167
- return lines;
11168
- }
11169
-
11170
11325
  class WatchController extends BaseController {
11171
11326
  constructor(params) {
11172
11327
  super(params);
@@ -11440,6 +11595,7 @@
11440
11595
  super.dispose();
11441
11596
  this.deleteDom.dispose();
11442
11597
  this.model.hook.off('lineRemoved', this.lineRemoved);
11598
+ this.model.lines.forEach((line) => line.hook.off('selected', this.chooseLine));
11443
11599
  this.five.off('cameraUpdate', this.onCameraUpdate);
11444
11600
  this.five.off('wantsPanGesture', this.wantsPanGesture);
11445
11601
  this.five.off('wantsTapGesture', this.wantsTapGesture);
@@ -13198,6 +13354,7 @@ void main() {
13198
13354
  return new Error('不支持切换的Mode');
13199
13355
  (_a = this.controller) === null || _a === void 0 ? void 0 : _a.dispose();
13200
13356
  const controllerMap = {
13357
+ View: ViewController,
13201
13358
  Watch: WatchController,
13202
13359
  Edit: EditController,
13203
13360
  };
@@ -15593,7 +15750,7 @@ void main() {
15593
15750
  return child_ctx;
15594
15751
  }
15595
15752
 
15596
- // (235:2) {#if itemLabelItem.visible}
15753
+ // (234:2) {#if itemLabelItem.visible}
15597
15754
  function create_if_block(ctx) {
15598
15755
  let itemlabelitem;
15599
15756
  let current;
@@ -15637,7 +15794,7 @@ void main() {
15637
15794
  };
15638
15795
  }
15639
15796
 
15640
- // (234:1) {#each renderItemLabels as itemLabelItem (itemLabelItem.id)}
15797
+ // (233:1) {#each renderItemLabels as itemLabelItem (itemLabelItem.id)}
15641
15798
  function create_each_block(key_1, ctx) {
15642
15799
  let first;
15643
15800
  let if_block_anchor;
@@ -15860,8 +16017,6 @@ void main() {
15860
16017
  };
15861
16018
 
15862
16019
  const getFormatedItemLabels = (five$1, labels) => {
15863
- console.log(labels);
15864
-
15865
16020
  // 计算位置 & 可见性
15866
16021
  const newLabels = labels.map(label => {
15867
16022
  // 不在绑定点位则直接不可见
@@ -1,9 +1,9 @@
1
- <!DOCTYPE html><html class="default"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>Magnifier | 如视看房插件合集 - v2.0.0-alpha.39</title><meta name="description" content="Documentation for 如视看房插件合集 - v2.0.0-alpha.39"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script async src="../assets/search.js" id="search-script"></script></head><body><script>document.body.classList.add(localStorage.getItem("tsd-theme") || "os")</script><header><div class="tsd-page-toolbar"><div class="container"><div class="table-wrap"><div class="table-cell" id="tsd-search" data-base=".."><div class="field"><label for="tsd-search-field" class="tsd-widget search no-caption">Search</label><input type="text" id="tsd-search-field"/></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="../index.html" class="title">如视看房插件合集 - v2.0.0-alpha.39</a></div><div class="table-cell" id="tsd-widgets"><div id="tsd-filter"><a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a><div class="tsd-filter-group"><div class="tsd-select" id="tsd-filter-visibility"><span class="tsd-select-label">All</span><ul class="tsd-select-list"><li data-value="public">Public</li><li data-value="protected">Public/Protected</li><li data-value="private" class="selected">All</li></ul></div> <input type="checkbox" id="tsd-filter-inherited" checked/><label class="tsd-widget" for="tsd-filter-inherited">Inherited</label></div></div><a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a></div></div></div></div><div class="tsd-page-title"><div class="container"><ul class="tsd-breadcrumb"><li><a href="../modules.html">如视看房插件合集 - v2.0.0-alpha.39</a></li><li><a href="Magnifier.html">Magnifier</a></li></ul><h1>Class Magnifier</h1></div></div></header><div class="container container-main"><div class="row"><div class="col-8 col-content"><section class="tsd-panel tsd-hierarchy"><h3>Hierarchy</h3><ul class="tsd-hierarchy"><li><span class="target">Magnifier</span></li></ul></section><section class="tsd-panel-group tsd-index-group"><h2>Index</h2><section class="tsd-panel tsd-index-panel"><div class="tsd-index-content"><section class="tsd-index-section "><h3>Constructors</h3><ul class="tsd-index-list"><li class="tsd-kind-constructor tsd-parent-kind-class"><a href="Magnifier.html#constructor" class="tsd-kind-icon">constructor</a></li></ul></section><section class="tsd-index-section "><h3>Properties</h3><ul class="tsd-index-list"><li class="tsd-kind-property tsd-parent-kind-class"><a href="Magnifier.html#contentDom" class="tsd-kind-icon">content<wbr/>Dom</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="Magnifier.html#height" class="tsd-kind-icon">height</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="Magnifier.html#hooks" class="tsd-kind-icon">hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="Magnifier.html#visible" class="tsd-kind-icon">visible</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="Magnifier.html#width" class="tsd-kind-icon">width</a></li></ul></section><section class="tsd-index-section "><h3>Methods</h3><ul class="tsd-index-list"><li class="tsd-kind-method tsd-parent-kind-class"><a href="Magnifier.html#appendTo" class="tsd-kind-icon">append<wbr/>To</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Magnifier.html#clear" class="tsd-kind-icon">clear</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Magnifier.html#dispose" class="tsd-kind-icon">dispose</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Magnifier.html#remove" class="tsd-kind-icon">remove</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Magnifier.html#renderWithPoint" class="tsd-kind-icon">render<wbr/>With<wbr/>Point</a></li></ul></section></div></section></section><section class="tsd-panel-group tsd-member-group "><h2>Constructors</h2><section class="tsd-panel tsd-member tsd-kind-constructor tsd-parent-kind-class"><a id="constructor" class="tsd-anchor"></a><h3 class="tsd-anchor-link">constructor<a href="#constructor" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-constructor tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">new <wbr/>Magnifier<span class="tsd-signature-symbol">(</span>five<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Five</span>, options<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">MagnifierParameter</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="Magnifier.html" class="tsd-signature-type" data-tsd-kind="Class">Magnifier</a></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/realsee-developer/dnalogel/blob/214c42b/plugins/src/PanoMeasurePlugin/Modules/Magnifier.ts#L75">PanoMeasurePlugin/Modules/Magnifier.ts:75</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>five: <span class="tsd-signature-type">Five</span></h5></li><li><h5>options: <span class="tsd-signature-type">MagnifierParameter</span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="Magnifier.html" class="tsd-signature-type" data-tsd-kind="Class">Magnifier</a></h4></li></ul></section></section><section class="tsd-panel-group tsd-member-group "><h2>Properties</h2><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="contentDom" class="tsd-anchor"></a><h3 class="tsd-anchor-link">content<wbr/>Dom<a href="#contentDom" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">content<wbr/>Dom<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">HTMLCanvasElement</span><span class="tsd-signature-symbol"> = ...</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/realsee-developer/dnalogel/blob/214c42b/plugins/src/PanoMeasurePlugin/Modules/Magnifier.ts#L62">PanoMeasurePlugin/Modules/Magnifier.ts:62</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="height" class="tsd-anchor"></a><h3 class="tsd-anchor-link">height<a href="#height" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">height<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/realsee-developer/dnalogel/blob/214c42b/plugins/src/PanoMeasurePlugin/Modules/Magnifier.ts#L59">PanoMeasurePlugin/Modules/Magnifier.ts:59</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="hooks" class="tsd-anchor"></a><h3 class="tsd-anchor-link">hooks<a href="#hooks" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">hooks<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Subscribe</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">MagnifierEvent</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol"> = ...</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/realsee-developer/dnalogel/blob/214c42b/plugins/src/PanoMeasurePlugin/Modules/Magnifier.ts#L61">PanoMeasurePlugin/Modules/Magnifier.ts:61</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="visible" class="tsd-anchor"></a><h3 class="tsd-anchor-link">visible<a href="#visible" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">visible<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> = false</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/realsee-developer/dnalogel/blob/214c42b/plugins/src/PanoMeasurePlugin/Modules/Magnifier.ts#L60">PanoMeasurePlugin/Modules/Magnifier.ts:60</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="width" class="tsd-anchor"></a><h3 class="tsd-anchor-link">width<a href="#width" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">width<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/realsee-developer/dnalogel/blob/214c42b/plugins/src/PanoMeasurePlugin/Modules/Magnifier.ts#L58">PanoMeasurePlugin/Modules/Magnifier.ts:58</a></li></ul></aside></section></section><section class="tsd-panel-group tsd-member-group "><h2>Methods</h2><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="appendTo" class="tsd-anchor"></a><h3 class="tsd-anchor-link">append<wbr/>To<a href="#appendTo" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">append<wbr/>To<span class="tsd-signature-symbol">(</span>element<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Element</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/realsee-developer/dnalogel/blob/214c42b/plugins/src/PanoMeasurePlugin/Modules/Magnifier.ts#L118">PanoMeasurePlugin/Modules/Magnifier.ts:118</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
1
+ <!DOCTYPE html><html class="default"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>Magnifier | 如视看房插件合集 - v2.0.0-alpha.41</title><meta name="description" content="Documentation for 如视看房插件合集 - v2.0.0-alpha.41"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script async src="../assets/search.js" id="search-script"></script></head><body><script>document.body.classList.add(localStorage.getItem("tsd-theme") || "os")</script><header><div class="tsd-page-toolbar"><div class="container"><div class="table-wrap"><div class="table-cell" id="tsd-search" data-base=".."><div class="field"><label for="tsd-search-field" class="tsd-widget search no-caption">Search</label><input type="text" id="tsd-search-field"/></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="../index.html" class="title">如视看房插件合集 - v2.0.0-alpha.41</a></div><div class="table-cell" id="tsd-widgets"><div id="tsd-filter"><a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a><div class="tsd-filter-group"><div class="tsd-select" id="tsd-filter-visibility"><span class="tsd-select-label">All</span><ul class="tsd-select-list"><li data-value="public">Public</li><li data-value="protected">Public/Protected</li><li data-value="private" class="selected">All</li></ul></div> <input type="checkbox" id="tsd-filter-inherited" checked/><label class="tsd-widget" for="tsd-filter-inherited">Inherited</label></div></div><a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a></div></div></div></div><div class="tsd-page-title"><div class="container"><ul class="tsd-breadcrumb"><li><a href="../modules.html">如视看房插件合集 - v2.0.0-alpha.41</a></li><li><a href="Magnifier.html">Magnifier</a></li></ul><h1>Class Magnifier</h1></div></div></header><div class="container container-main"><div class="row"><div class="col-8 col-content"><section class="tsd-panel tsd-hierarchy"><h3>Hierarchy</h3><ul class="tsd-hierarchy"><li><span class="target">Magnifier</span></li></ul></section><section class="tsd-panel-group tsd-index-group"><h2>Index</h2><section class="tsd-panel tsd-index-panel"><div class="tsd-index-content"><section class="tsd-index-section "><h3>Constructors</h3><ul class="tsd-index-list"><li class="tsd-kind-constructor tsd-parent-kind-class"><a href="Magnifier.html#constructor" class="tsd-kind-icon">constructor</a></li></ul></section><section class="tsd-index-section "><h3>Properties</h3><ul class="tsd-index-list"><li class="tsd-kind-property tsd-parent-kind-class"><a href="Magnifier.html#contentDom" class="tsd-kind-icon">content<wbr/>Dom</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="Magnifier.html#height" class="tsd-kind-icon">height</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="Magnifier.html#hooks" class="tsd-kind-icon">hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="Magnifier.html#visible" class="tsd-kind-icon">visible</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="Magnifier.html#width" class="tsd-kind-icon">width</a></li></ul></section><section class="tsd-index-section "><h3>Methods</h3><ul class="tsd-index-list"><li class="tsd-kind-method tsd-parent-kind-class"><a href="Magnifier.html#appendTo" class="tsd-kind-icon">append<wbr/>To</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Magnifier.html#clear" class="tsd-kind-icon">clear</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Magnifier.html#dispose" class="tsd-kind-icon">dispose</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Magnifier.html#remove" class="tsd-kind-icon">remove</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Magnifier.html#renderWithPoint" class="tsd-kind-icon">render<wbr/>With<wbr/>Point</a></li></ul></section></div></section></section><section class="tsd-panel-group tsd-member-group "><h2>Constructors</h2><section class="tsd-panel tsd-member tsd-kind-constructor tsd-parent-kind-class"><a id="constructor" class="tsd-anchor"></a><h3 class="tsd-anchor-link">constructor<a href="#constructor" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-constructor tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">new <wbr/>Magnifier<span class="tsd-signature-symbol">(</span>five<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Five</span>, options<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">MagnifierParameter</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="Magnifier.html" class="tsd-signature-type" data-tsd-kind="Class">Magnifier</a></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/realsee-developer/dnalogel/blob/0e6cbf9/plugins/src/PanoMeasurePlugin/Modules/Magnifier.ts#L75">PanoMeasurePlugin/Modules/Magnifier.ts:75</a></li></ul></aside><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>five: <span class="tsd-signature-type">Five</span></h5></li><li><h5>options: <span class="tsd-signature-type">MagnifierParameter</span></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="Magnifier.html" class="tsd-signature-type" data-tsd-kind="Class">Magnifier</a></h4></li></ul></section></section><section class="tsd-panel-group tsd-member-group "><h2>Properties</h2><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="contentDom" class="tsd-anchor"></a><h3 class="tsd-anchor-link">content<wbr/>Dom<a href="#contentDom" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">content<wbr/>Dom<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">HTMLCanvasElement</span><span class="tsd-signature-symbol"> = ...</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/realsee-developer/dnalogel/blob/0e6cbf9/plugins/src/PanoMeasurePlugin/Modules/Magnifier.ts#L62">PanoMeasurePlugin/Modules/Magnifier.ts:62</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="height" class="tsd-anchor"></a><h3 class="tsd-anchor-link">height<a href="#height" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">height<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/realsee-developer/dnalogel/blob/0e6cbf9/plugins/src/PanoMeasurePlugin/Modules/Magnifier.ts#L59">PanoMeasurePlugin/Modules/Magnifier.ts:59</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="hooks" class="tsd-anchor"></a><h3 class="tsd-anchor-link">hooks<a href="#hooks" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">hooks<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Subscribe</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">MagnifierEvent</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol"> = ...</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/realsee-developer/dnalogel/blob/0e6cbf9/plugins/src/PanoMeasurePlugin/Modules/Magnifier.ts#L61">PanoMeasurePlugin/Modules/Magnifier.ts:61</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="visible" class="tsd-anchor"></a><h3 class="tsd-anchor-link">visible<a href="#visible" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">visible<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> = false</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/realsee-developer/dnalogel/blob/0e6cbf9/plugins/src/PanoMeasurePlugin/Modules/Magnifier.ts#L60">PanoMeasurePlugin/Modules/Magnifier.ts:60</a></li></ul></aside></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="width" class="tsd-anchor"></a><h3 class="tsd-anchor-link">width<a href="#width" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><div class="tsd-signature tsd-kind-icon">width<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/realsee-developer/dnalogel/blob/0e6cbf9/plugins/src/PanoMeasurePlugin/Modules/Magnifier.ts#L58">PanoMeasurePlugin/Modules/Magnifier.ts:58</a></li></ul></aside></section></section><section class="tsd-panel-group tsd-member-group "><h2>Methods</h2><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="appendTo" class="tsd-anchor"></a><h3 class="tsd-anchor-link">append<wbr/>To<a href="#appendTo" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">append<wbr/>To<span class="tsd-signature-symbol">(</span>element<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Element</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/realsee-developer/dnalogel/blob/0e6cbf9/plugins/src/PanoMeasurePlugin/Modules/Magnifier.ts#L118">PanoMeasurePlugin/Modules/Magnifier.ts:118</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
2
2
  <p>把放大镜放到某一个容器中</p>
3
- </div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>element: <span class="tsd-signature-type">Element</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="clear" class="tsd-anchor"></a><h3 class="tsd-anchor-link">clear<a href="#clear" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">clear<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/realsee-developer/dnalogel/blob/214c42b/plugins/src/PanoMeasurePlugin/Modules/Magnifier.ts#L113">PanoMeasurePlugin/Modules/Magnifier.ts:113</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
3
+ </div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>element: <span class="tsd-signature-type">Element</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="clear" class="tsd-anchor"></a><h3 class="tsd-anchor-link">clear<a href="#clear" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">clear<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/realsee-developer/dnalogel/blob/0e6cbf9/plugins/src/PanoMeasurePlugin/Modules/Magnifier.ts#L113">PanoMeasurePlugin/Modules/Magnifier.ts:113</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
4
4
  <p>清除放大镜渲染内容</p>
5
- </div></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="dispose" class="tsd-anchor"></a><h3 class="tsd-anchor-link">dispose<a href="#dispose" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">dispose<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/realsee-developer/dnalogel/blob/214c42b/plugins/src/PanoMeasurePlugin/Modules/Magnifier.ts#L100">PanoMeasurePlugin/Modules/Magnifier.ts:100</a></li></ul></aside><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="remove" class="tsd-anchor"></a><h3 class="tsd-anchor-link">remove<a href="#remove" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">remove<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/realsee-developer/dnalogel/blob/214c42b/plugins/src/PanoMeasurePlugin/Modules/Magnifier.ts#L107">PanoMeasurePlugin/Modules/Magnifier.ts:107</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
5
+ </div></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="dispose" class="tsd-anchor"></a><h3 class="tsd-anchor-link">dispose<a href="#dispose" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">dispose<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/realsee-developer/dnalogel/blob/0e6cbf9/plugins/src/PanoMeasurePlugin/Modules/Magnifier.ts#L100">PanoMeasurePlugin/Modules/Magnifier.ts:100</a></li></ul></aside><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="remove" class="tsd-anchor"></a><h3 class="tsd-anchor-link">remove<a href="#remove" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">remove<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/realsee-developer/dnalogel/blob/0e6cbf9/plugins/src/PanoMeasurePlugin/Modules/Magnifier.ts#L107">PanoMeasurePlugin/Modules/Magnifier.ts:107</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
6
6
  <p>移除放大镜 DOM</p>
7
- </div></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="renderWithPoint" class="tsd-anchor"></a><h3 class="tsd-anchor-link">render<wbr/>With<wbr/>Point<a href="#renderWithPoint" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">render<wbr/>With<wbr/>Point<span class="tsd-signature-symbol">(</span>point<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Vector3</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/realsee-developer/dnalogel/blob/214c42b/plugins/src/PanoMeasurePlugin/Modules/Magnifier.ts#L126">PanoMeasurePlugin/Modules/Magnifier.ts:126</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
7
+ </div></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="renderWithPoint" class="tsd-anchor"></a><h3 class="tsd-anchor-link">render<wbr/>With<wbr/>Point<a href="#renderWithPoint" aria-label="Permalink" class="tsd-anchor-icon"><svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></svg></a></h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">render<wbr/>With<wbr/>Point<span class="tsd-signature-symbol">(</span>point<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Vector3</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/realsee-developer/dnalogel/blob/0e6cbf9/plugins/src/PanoMeasurePlugin/Modules/Magnifier.ts#L126">PanoMeasurePlugin/Modules/Magnifier.ts:126</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
8
8
  <p>放大传入点位周围的内容</p>
9
9
  </div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>point: <span class="tsd-signature-type">Vector3</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section></section></div><div class="col-4 col-menu menu-sticky-wrap menu-highlight"><nav class="tsd-navigation primary"><ul><li class=""><a href="../modules.html">Exports</a></li></ul></nav><nav class="tsd-navigation secondary menu-sticky"><ul><li class="current tsd-kind-class"><a href="Magnifier.html" class="tsd-kind-icon">Magnifier</a><ul><li class="tsd-kind-constructor tsd-parent-kind-class"><a href="Magnifier.html#constructor" class="tsd-kind-icon">constructor</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="Magnifier.html#contentDom" class="tsd-kind-icon">content<wbr/>Dom</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="Magnifier.html#height" class="tsd-kind-icon">height</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="Magnifier.html#hooks" class="tsd-kind-icon">hooks</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="Magnifier.html#visible" class="tsd-kind-icon">visible</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="Magnifier.html#width" class="tsd-kind-icon">width</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Magnifier.html#appendTo" class="tsd-kind-icon">append<wbr/>To</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Magnifier.html#clear" class="tsd-kind-icon">clear</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Magnifier.html#dispose" class="tsd-kind-icon">dispose</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Magnifier.html#remove" class="tsd-kind-icon">remove</a></li><li class="tsd-kind-method tsd-parent-kind-class"><a href="Magnifier.html#renderWithPoint" class="tsd-kind-icon">render<wbr/>With<wbr/>Point</a></li></ul></li></ul></nav></div></div></div><footer class=""><div class="container"><h2>Legend</h2><div class="tsd-legend-group"><ul class="tsd-legend"><li class="tsd-kind-constructor tsd-parent-kind-class"><span class="tsd-kind-icon">Constructor</span></li><li class="tsd-kind-property tsd-parent-kind-class"><span class="tsd-kind-icon">Property</span></li><li class="tsd-kind-method tsd-parent-kind-class"><span class="tsd-kind-icon">Method</span></li></ul><ul class="tsd-legend"><li class="tsd-kind-property tsd-parent-kind-interface"><span class="tsd-kind-icon">Property</span></li><li class="tsd-kind-method tsd-parent-kind-interface"><span class="tsd-kind-icon">Method</span></li></ul></div><h2>Settings</h2><p>Theme <select id="theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></p></div></footer><div class="overlay"></div><script src="../assets/main.js"></script></body></html>