|
@@ -1,5 +1,5 @@
|
|
|
import { Pos } from "@/utils/math.ts";
|
|
|
-import { themeMouseColors } from "@/constant/help-style.ts";
|
|
|
+import { themeColor, themeMouseColors } from "@/constant/help-style.ts";
|
|
|
import { BaseItem, generateSnapInfos, getBaseItem } from "../util.ts";
|
|
|
import { getMouseColors } from "@/utils/colors.ts";
|
|
|
import { InteractiveFix, InteractiveTo, MatResponseProps } from "../index.ts";
|
|
@@ -10,25 +10,29 @@ export { default as TempComponent } from "./temp-polygon.vue";
|
|
|
|
|
|
export const shapeName = "多边形";
|
|
|
export const defaultStyle = {
|
|
|
- stroke: themeMouseColors.theme,
|
|
|
+ stroke: '#000000',
|
|
|
+ fill: '#ffffff',
|
|
|
strokeWidth: 5,
|
|
|
dash: [30, 0],
|
|
|
};
|
|
|
|
|
|
export const getMouseStyle = (data: PolygonData) => {
|
|
|
const fillStatus = data.fill && getMouseColors(data.fill);
|
|
|
- const strokeStatus = getMouseColors(data.stroke || defaultStyle.stroke);
|
|
|
+ const strokeStatus = getMouseColors(data.stroke || themeColor);
|
|
|
const strokeWidth = data.strokeWidth;
|
|
|
|
|
|
return {
|
|
|
default: {
|
|
|
fill: fillStatus && fillStatus.pub,
|
|
|
- stroke: strokeStatus.pub,
|
|
|
+ stroke: data.stroke || defaultStyle.stroke,
|
|
|
strokeWidth,
|
|
|
},
|
|
|
hover: { fill: fillStatus && fillStatus.hover, stroke: strokeStatus.hover },
|
|
|
press: { fill: fillStatus && fillStatus.press, stroke: strokeStatus.press },
|
|
|
- select: { fill: fillStatus && fillStatus.select, stroke: strokeStatus.select },
|
|
|
+ select: {
|
|
|
+ fill: fillStatus && fillStatus.select,
|
|
|
+ stroke: strokeStatus.select,
|
|
|
+ },
|
|
|
};
|
|
|
};
|
|
|
|
|
@@ -75,18 +79,21 @@ export const interactiveFixData: InteractiveFix<"polygon"> = ({
|
|
|
return data;
|
|
|
};
|
|
|
|
|
|
-
|
|
|
-export const matResponse = ({data, mat, increment}: MatResponseProps<'polygon'>) => {
|
|
|
- let transfrom: Transform
|
|
|
+export const matResponse = ({
|
|
|
+ data,
|
|
|
+ mat,
|
|
|
+ increment,
|
|
|
+}: MatResponseProps<"polygon">) => {
|
|
|
+ let transfrom: Transform;
|
|
|
const attitude = new Transform(data.attitude);
|
|
|
if (!increment) {
|
|
|
const inverMat = attitude.copy().invert();
|
|
|
transfrom = mat.copy().multiply(inverMat);
|
|
|
} else {
|
|
|
- transfrom = mat
|
|
|
+ transfrom = mat;
|
|
|
}
|
|
|
|
|
|
data.points = data.points.map((v) => transfrom.point(v));
|
|
|
data.attitude = transfrom.copy().multiply(attitude).m;
|
|
|
return data;
|
|
|
-}
|
|
|
+};
|