1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- import { Dict_Imgs } from "@/dict";
- import { createAttrsForm } from "../../defines/createAttrsForm";
- import { createCompHooks } from "../../defines/createCompHooks";
- import { InputNumber, Switch } from "ant-design-vue";
- import { createColorOpts } from "../../defines/formOpts/createColorOpts";
- import Slider from "../../formItems/Slider";
- export { Component } from "./component";
- export const options = {
- name: "二次贝塞尔",
- thumbnail: require("@/modules/editor/assets/icons/image.svg"),
- };
- export const { createComp, useCompData } = createCompHooks({
- value: {
- lineColor: "black",
- lineWidth: 1,
- isFill: false,
- fillColor: "black",
- cp1: 0.5, //控制点1
- p1: 0, //顶点1的位置
- p2: 1, //顶点1的位置
- },
- layout: {
- size: [400, 400],
- },
- });
- export const Form = createAttrsForm([
- {
- label: "线宽",
- dataIndex: "value.lineWidth",
- component: InputNumber,
- },
- {
- label:"颜色",
- dataIndex: "value.lineColor",
- ...createColorOpts(),
- },
- {
- label: "是否填充",
- dataIndex: "value.isFill",
- component: "Switch",
- },
- {
- label:"填充颜色",
- dataIndex: "value.fillColor",
- ...createColorOpts(),
- isVisible: (value, data) => data?.value?.isFill == true,
- },
- {
- label:"左顶点",
- dataIndex: "value.p1",
- component: Slider,
- props: {
- defaultValue: 0,
- min: 0,
- max: 1,
- step: 0.01,
- },
- },
- {
- label:"右顶点",
- dataIndex: "value.p2",
- component: Slider,
- props: {
- defaultValue: 1,
- min: 0,
- max: 1,
- step: 0.01,
- },
- },
- {
- label:"控制点",
- dataIndex: "value.cp1",
- component: Slider,
- props: {
- defaultValue: 0.5,
- min: -0.5,
- max: 1.5,
- step: 0.01,
- },
- },
- ]);
|