yanchengPowerSupply/node_modules/mxdraw/dist/lib/MxModule/Mx3PointArc/draw.js

1 line
1.1 KiB
JavaScript

import{createThreePointArc}from"../../tools/three";import Mx3PointArc from".";import McEdGetPointWorldDrawObject from"../McEdGetPointWorldDrawObject";import MrxDbgUiPrBaseReturn from"../MrxDbgUiPrBaseReturn";import MrxDbgUiPrPoint from"../MrxDbgUiPrPoint";import MxFun from"../MxFun";export default function drawMx3PointArc(){const r=new MrxDbgUiPrPoint,t=new McEdGetPointWorldDrawObject,e=new Mx3PointArc;e.closed=!1,e.setColor("#ff0000").setLineWidth(10),r.setUserDraw(t),r.setMessage("\n确定圆弧开始点:"),r.go(o=>{o===MrxDbgUiPrBaseReturn.kOk&&(e.point1=r.value(),t.setDraw(r=>{t.drawLine(e.point1,r)})),r.setMessage("\n确定圆弧结束点:"),r.go(o=>{o===MrxDbgUiPrBaseReturn.kOk&&(e.point2=r.value(),t.setDraw(r=>{e.point3=r,t.drawCustomEntity(e)})),r.setMessage("\n确定圆弧上任意一点:"),r.go(r=>{if(r===MrxDbgUiPrBaseReturn.kOk){MxFun.getCurrentDraw().addMxEntity(e);const{radius:r,angle:t,arcLength:o}=createThreePointArc(e.point1,e.point2,e.point3,!0);console.log("半径:",r),console.log("圆弧圆心角度:",t),console.log("圆弧弧长:",o)}})})})};