|
@@ -15,7 +15,7 @@ import Zip from "jszip";
|
|
|
import { LineData } from "../components/line";
|
|
|
import { CircleData } from "../components/circle";
|
|
|
import { Transform } from "konva/lib/Util";
|
|
|
-import { lineVector, Pos, Size, verticalVectorLine } from "@/utils/math";
|
|
|
+import { lineLen, lineVector, Pos, Size, verticalVectorLine, zeroEq } from "@/utils/math";
|
|
|
import { RectangleData } from "../components/rectangle";
|
|
|
import { useStage } from "./use-global-vars";
|
|
|
import { Group } from "konva/lib/Group";
|
|
@@ -98,7 +98,6 @@ export const useGetDXF = () => {
|
|
|
const width = $text.width();
|
|
|
const charWidth = fontSize * 0.9;
|
|
|
|
|
|
- console.log(text);
|
|
|
const lineCharCount = sp
|
|
|
? Math.max(Math.floor(width / charWidth), 2)
|
|
|
: Number.MAX_VALUE;
|
|
@@ -141,15 +140,6 @@ export const useGetDXF = () => {
|
|
|
p.x = width - lineWidth;
|
|
|
}
|
|
|
const start = mat.point(p);
|
|
|
- console.log(point3d(start.x, -start.y), fontSize, item.content, {
|
|
|
- rotation: $text.rotation(),
|
|
|
- // horizontalAlignment:
|
|
|
- // align === "center"
|
|
|
- // ? TextHorizontalAlignment.Center
|
|
|
- // : align === "right"
|
|
|
- // ? TextHorizontalAlignment.Right
|
|
|
- // : TextHorizontalAlignment.Left,
|
|
|
- });
|
|
|
const text = writer.addText(
|
|
|
point3d(start.x, -start.y),
|
|
|
fontSize,
|
|
@@ -280,14 +270,16 @@ export const useGetDXF = () => {
|
|
|
|
|
|
case "arrow":
|
|
|
item = _item as ArrowData;
|
|
|
- // writer.addLWPolyline(
|
|
|
- // item.points.map((p) => ({ point: point2d(p.x, -p.y) })),
|
|
|
- // {
|
|
|
- // flags: LWPolylineFlags.None,
|
|
|
- // constantWidth: item.strokeWidth,
|
|
|
- // trueColor: TrueColor.fromHex(item.fill || "#FFFFFF").toString(),
|
|
|
- // }
|
|
|
- // );
|
|
|
+ if (zeroEq(lineLen(item.points[0], item.points[1]))) {
|
|
|
+ item = {
|
|
|
+ ...item,
|
|
|
+ points: [...item.points]
|
|
|
+ }
|
|
|
+ item.points[0] = {
|
|
|
+ ...item.points[0],
|
|
|
+ x: item.points[1].x - (item.pointerLength || 1)
|
|
|
+ }
|
|
|
+ }
|
|
|
const isEnd = [PointerPosition.end, PointerPosition.all].includes(
|
|
|
item.pointerPosition || PointerPosition.start
|
|
|
);
|