功能:Area统计封闭曲线面积

pull/1330/MERGE
ChenX 4 years ago
parent a6f5519644
commit d6915f79e8

@ -0,0 +1,36 @@
import { app } from "../ApplicationServices/Application";
import { Log } from "../Common/Log";
import { Curve } from "../DatabaseServices/Entity/Curve";
import { Command } from "../Editor/CommandMachine";
import { PromptStatus } from "../Editor/PromptResult";
export class Command_Area implements Command
{
async exec()
{
while (true)
{
let enRes = await app.Editor.GetSelection({
Filter: {
filterFunction: (o, e) =>
{
return (e instanceof Curve && e.IsClose);
}
}
});
if (enRes.Status === PromptStatus.OK)
{
let sum = 0;
for (let c of enRes.SelectSet.SelectEntityList as Curve[])
{
let length = c.Area * 1e-6;
Log(`${length}平方米`);
sum += length;
}
Log(`总共:${sum}平方米`);
}
else
return;
}
}
}

@ -2,10 +2,13 @@ import { Vector3 } from "three";
import { Command_999 } from "../Add-on/999";
import { ActicityLayerBoard } from "../Add-on/ActivityLayerBoard";
import { AddPtOnBoard, DeletePtOnBoard } from "../Add-on/AddPtOnBoard";
import { Command_Area } from "../Add-on/Area";
import { Command_Array } from "../Add-on/Array";
import { AutoHoleFaceSetting } from "../Add-on/AutoHoleFaceSetting";
import { BatchModify } from "../Add-on/Batch/BatchModifySealOrDrill";
import { FindModeingKnifeRadius } from "../Add-on/Batch/FindModeingKnifes";
import { BoardBatchCurtail } from "../Add-on/BoardBatchCurtail";
import { CuttingByFace } from "../Add-on/BoardCutting/CuttingByFace";
import { DeleteRelevance } from "../Add-on/BoardCutting/DeleteRelevance";
import { LinearCutting } from "../Add-on/BoardCutting/LinearCutting";
import { NonAssociativeCutting } from "../Add-on/BoardCutting/NonAssociativeCutting";
@ -44,6 +47,7 @@ import { DrawLeftRight } from "../Add-on/DrawBoard/DrawLeftRightBoard";
import { DrawSingleBoard } from "../Add-on/DrawBoard/DrawSingleBoard";
import { DrawSpecialShapedBoard } from "../Add-on/DrawBoard/DrawSpecialShapedBoard";
import { DrawSpecialShapedBoardByContour } from "../Add-on/DrawBoard/DrawSpecialShapedBoardByContour";
import { DrawTemplateByImport } from "../Add-on/DrawBoard/DrawTemplateByImport";
import { DrawTopBottomBoard } from "../Add-on/DrawBoard/DrawTopBottomBoard";
import { DrawVerticalBoard } from "../Add-on/DrawBoard/DrawVerticalBoard";
import { EditorBoardTemplate } from '../Add-on/DrawBoard/EditorBoardTempate';
@ -60,6 +64,8 @@ import { DrawDiameterDim } from "../Add-on/DrawDim/DrawDiameterDim";
import { DrawLinearDimension } from "../Add-on/DrawDim/DrawLinearDimension";
import { DrawRadiusDim } from "../Add-on/DrawDim/DrawRadiusDim";
import { Command_FastDimBrs } from "../Add-on/DrawDim/FastDim";
import { CheckDrawHole } from "../Add-on/DrawDrilling/CheckDrawHole";
import { CheckHasHoleBoard } from "../Add-on/DrawDrilling/CheckHasHole";
import { DeleteDrill } from "../Add-on/DrawDrilling/DeleteDrill";
import { DrawDrilling } from "../Add-on/DrawDrilling/DrawDrilling";
import { DrillConfig } from "../Add-on/DrawDrilling/DrillConfig";
@ -96,7 +102,7 @@ import { Entsel } from "../Add-on/Entsel";
import { Command_Erase } from "../Add-on/Erase";
import { Command_EraseLineAndArc } from "../Add-on/EraseLineAndArc";
import { Command_EraseNoSelect } from "../Add-on/EraseNoSelect";
import { ChaiDan, ChaiDanJB, ShoWYouHua, Decompose } from "../Add-on/Erp/ErpCommands";
import { ChaiDan, ChaiDanJB, Decompose, ShoWYouHua } from "../Add-on/Erp/ErpCommands";
import { Command_Esc } from "../Add-on/Esc";
import { Command_Explode } from "../Add-on/Explode";
import { Command_ExplosionMap } from "../Add-on/ExplosionMap";
@ -141,6 +147,7 @@ import { New, Save, SaveAs, SaveAsBinary } from "../Add-on/Save";
import { Command_Scale } from "../Add-on/Scale";
import { SetSmoothEdge } from "../Add-on/SetSmoothEdge/SetSmoothEdge";
import { SwitchLines } from "../Add-on/ShowLines";
import { ShowEditorBBS } from "../Add-on/showModal/ShowModal";
import { Command_ShowProcessingGroupModal2 } from "../Add-on/ShowProcessingGroupModal";
import { ShowRecycleBin } from "../Add-on/ShowRecycleBin";
import { Stretch } from "../Add-on/Stretch";
@ -203,12 +210,6 @@ import { BuyMaterial } from './../Add-on/BuyMaterial';
import { Interfere } from './../Add-on/interfere';
import { ShowKinfeManageModal } from './../Add-on/showModal/ShowKnifeManageModal';
import { commandMachine } from './CommandMachine';
import { CheckHasHoleBoard } from "../Add-on/DrawDrilling/CheckHasHole";
import { CheckDrawHole } from "../Add-on/DrawDrilling/CheckDrawHole";
import { FindModeingKnifeRadius } from "../Add-on/Batch/FindModeingKnifes";
import { ShowEditorBBS } from "../Add-on/showModal/ShowModal";
import { CuttingByFace } from "../Add-on/BoardCutting/CuttingByFace";
import { DrawTemplateByImport } from "../Add-on/DrawBoard/DrawTemplateByImport";
export function registerCommand()
{
@ -332,6 +333,7 @@ export function registerCommand()
commandMachine.RegisterCommand("TO", new Command_DynOffsetToolPath());
commandMachine.RegisterCommand("Length", new Command_Length());
commandMachine.RegisterCommand("Area", new Command_Area());
//绘制灯
commandMachine.RegisterCommand(CommandNames.PointLight2, new DrawPointLight());

Loading…
Cancel
Save