yanchengPowerSupply/node_modules/mxdraw/dist/lib/MxModule/MxDbArcShapeDraw/index.js

1 line
1.3 KiB
JavaScript

import{addRegisterMxDbEntity}from"../../tools/registerMxDbEntity";import{calculateArcAngle}from"../../tools/three";import MxDbArcShape from"../MxDbArcShape";import drawMxDbArcShape from"./draw";class MxDbArcShapeDraw extends MxDbArcShape{constructor(){super(),this.outerRadiusPoint=new THREE.Vector3,this.interRadiusPoint=new THREE.Vector3,this._propertyDbKeys=[...this._propertyDbKeys,"interRadiusPoint","outerRadiusPoint"]}getTypeName(){return"MxDbArcShapeDraw"}worldDraw(t){this.innerRadius=this.center.distanceTo(this.interRadiusPoint),this.outerRadius=this.center.distanceTo(this.outerRadiusPoint),this.startAngle=THREE.MathUtils.degToRad(calculateArcAngle(this.interRadiusPoint,this.center,this.innerRadius).angle),this.endAngle=THREE.MathUtils.degToRad(calculateArcAngle(this.outerRadiusPoint,this.center,this.outerRadius).angle),this.drawArcShape(t)}getGripPoints(){return[this.center,this.interRadiusPoint,this.outerRadiusPoint]}moveGripPointsAt(t,e){return 0===t&&(this.center.add(e),this.interRadiusPoint.add(e),this.outerRadiusPoint.add(e)),1===t&&this.interRadiusPoint.add(e),2===t&&this.outerRadiusPoint.add(e),!0}}MxDbArcShapeDraw.isRegister=!1,MxDbArcShapeDraw.cmd="Mx_MxDbArcShape",MxDbArcShapeDraw.draw=drawMxDbArcShape,addRegisterMxDbEntity(MxDbArcShapeDraw);export default MxDbArcShapeDraw;