修复:圆弧墙洞反应器更新错误

pull/1935/head
ChenX 2 years ago
parent 1da6dbb588
commit d0047a6bba

@ -1,8 +1,10 @@
import { MathUtils } from "three";
import { Arc } from "../api";
import { arrayLast } from "../Common/ArrayExt";
import { CADObject } from "../DatabaseServices/CADObject";
import { Curve } from "../DatabaseServices/Entity/Curve";
import { RoomHolePolyline } from "../DatabaseServices/Room/Entity/Wall/Hole/RoomHolePolyline";
import { RoomWallArc } from "../DatabaseServices/Room/Entity/Wall/RoomWallArc";
import { RoomWallBase } from "../DatabaseServices/Room/Entity/Wall/RoomWallBase";
import { CreateGetCurveParam } from "../DatabaseServices/Room/ParseService/GetCurveParam";
import { FindBestRange, ParseWallRange } from "../DatabaseServices/Room/ParseService/Hole/RoomWallPlaceIHoleHelper";
@ -152,6 +154,9 @@ export function UpdateHoleFakerWallsAndUpdateDraw(hole: RoomHolePolyline)
{
wall.StartPoint = p1;
wall.EndPoint = p2;
if (wall instanceof RoomWallArc && p1Param > p2Param)
(wall as unknown as Arc).IsClockWise = !wall.IsClockWise;
}
else
{
@ -169,6 +174,9 @@ export function UpdateHoleFakerWallsAndUpdateDraw(hole: RoomHolePolyline)
wall.StartPoint = paramGet.GetPointAtParam(p1Param);
wall.EndPoint = paramGet.GetPointAtParam(p2Param);
if (wall instanceof RoomWallArc && p1Param > p2Param)
(wall as unknown as Arc).IsClockWise = !wall.IsClockWise;
}
}
else
@ -206,6 +214,9 @@ export function UpdateHoleFakerWallsAndUpdateDraw(hole: RoomHolePolyline)
wall.StartPoint = paramGet.GetPointAtParam(p1Param);
wall.EndPoint = paramGet.GetPointAtParam(p2Param);
if (wall instanceof RoomWallArc && p1Param > p2Param)
(wall as unknown as Arc).IsClockWise = !wall.IsClockWise;
}
new RoomWallParse(false, undefined, false).Parse(fakerWalls);

Loading…
Cancel
Save