|
|
|
@ -9,7 +9,10 @@ import { Command } from "../Editor/CommandMachine";
|
|
|
|
|
import { PromptStatus } from "../Editor/PromptResult";
|
|
|
|
|
import { ParseBoardSideFace } from "../Geometry/DrillParse/BoardGetFace";
|
|
|
|
|
import { MoveMatrix } from "../Geometry/GeUtils";
|
|
|
|
|
import { GetBoardContour } from "../GraphicsSystem/CalcEdgeSealing";
|
|
|
|
|
import { FeedingToolPath } from "../GraphicsSystem/ToolPath/FeedingToolPath";
|
|
|
|
|
import { ConverToPtsBul } from "../Production/Convert2PtsBul";
|
|
|
|
|
import { ErpParseData } from "./Erp/ParseData";
|
|
|
|
|
|
|
|
|
|
export class SideModelFeedingCommand implements Command
|
|
|
|
|
{
|
|
|
|
@ -31,11 +34,28 @@ export class SideModelFeedingCommand implements Command
|
|
|
|
|
|
|
|
|
|
if (ptRes.Status === PromptStatus.OK)
|
|
|
|
|
{
|
|
|
|
|
let pos = ptRes.Point;;
|
|
|
|
|
let pos = ptRes.Point;
|
|
|
|
|
let width = 0;
|
|
|
|
|
|
|
|
|
|
//面ID增量 修正到从自身坐标系原点开始计算
|
|
|
|
|
let addFace = 0;
|
|
|
|
|
let sideModelList = Array.from(AllSideModelGrooveMap);
|
|
|
|
|
sideModelList.sort((a, b) => a[0] - b[0]);
|
|
|
|
|
|
|
|
|
|
if (br.IsRect)
|
|
|
|
|
{
|
|
|
|
|
//获取增量
|
|
|
|
|
let brContour = GetBoardContour(br);
|
|
|
|
|
//不扣除封边的轮廓信息
|
|
|
|
|
let originOutlinePtsBul = ConverToPtsBul(brContour);
|
|
|
|
|
originOutlinePtsBul.pts.pop();
|
|
|
|
|
originOutlinePtsBul.buls.pop();
|
|
|
|
|
addFace = new ErpParseData().GetFaceAdd(originOutlinePtsBul.pts[0]);
|
|
|
|
|
|
|
|
|
|
//侧面造型列表按修正后面的顺序排序
|
|
|
|
|
sideModelList.sort((a, b) => ((a[0] + addFace) % 4) - ((b[0] + addFace) % 4));
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
//侧面造型列表按面的顺序排序
|
|
|
|
|
sideModelList.sort((a, b) => a[0] - b[0]);
|
|
|
|
|
|
|
|
|
|
for (let [n, soilds] of sideModelList)
|
|
|
|
|
{
|
|
|
|
@ -81,7 +101,12 @@ export class SideModelFeedingCommand implements Command
|
|
|
|
|
|
|
|
|
|
width = faces.Faces[n].Length;
|
|
|
|
|
|
|
|
|
|
this.OrderText((n + 1).toString(), tMtx, width);
|
|
|
|
|
let faceId = n;
|
|
|
|
|
if (br.IsRect)
|
|
|
|
|
faceId = (faceId + addFace) % 4;
|
|
|
|
|
|
|
|
|
|
//绘制下标 面ID
|
|
|
|
|
this.OrderText((faceId).toString(), tMtx, width);
|
|
|
|
|
|
|
|
|
|
pos.add(new Vector3(width + 100));
|
|
|
|
|
}
|
|
|
|
|