From fef1a4b56415839dbab14f5864acf6c3b8e02cd2 Mon Sep 17 00:00:00 2001 From: wangjiahao <1522128093@qq.com> Date: Tue, 8 Jul 2025 18:37:10 +0800 Subject: [PATCH] =?UTF-8?q?feat(=E6=95=B0=E6=8D=AE=E5=A4=A7=E5=B1=8F):=20?= =?UTF-8?q?=E5=86=85=E7=BD=AE=E5=8A=A8=E6=80=81=E8=A3=85=E9=A5=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/ComponentConfig.ts | 30 +++ .../src/custom-component/component-list.ts | 4 + .../component_details/DeDecoration1.vue | 197 ++++++++++++++++++ .../component_details/DeDecoration2.vue | 133 ++++++++++++ .../component_details/DeDecoration3.vue | 133 ++++++++++++ .../component_details/DeDecoration4.vue | 136 ++++++++++++ .../component_details/DeDecoration5.vue | 129 ++++++++++++ .../de-decoration/component_details/config.ts | 30 ++- 8 files changed, 791 insertions(+), 1 deletion(-) create mode 100644 core/core-frontend/src/custom-component/de-decoration/component_details/DeDecoration1.vue create mode 100644 core/core-frontend/src/custom-component/de-decoration/component_details/DeDecoration2.vue create mode 100644 core/core-frontend/src/custom-component/de-decoration/component_details/DeDecoration3.vue create mode 100644 core/core-frontend/src/custom-component/de-decoration/component_details/DeDecoration4.vue create mode 100644 core/core-frontend/src/custom-component/de-decoration/component_details/DeDecoration5.vue diff --git a/core/core-frontend/src/custom-component/common/ComponentConfig.ts b/core/core-frontend/src/custom-component/common/ComponentConfig.ts index c2c3733a28..2d45cdeddf 100644 --- a/core/core-frontend/src/custom-component/common/ComponentConfig.ts +++ b/core/core-frontend/src/custom-component/common/ComponentConfig.ts @@ -79,6 +79,36 @@ export const CANVAS_MATERIAL = [ title: t('visualization.decoration'), span: 8, details: [ + { + value: 'DeDecoration1', + type: 'de_decoration', + title: t('visualization.decoration_name', [11]), + icon: 'DeDecoration1' + }, + { + value: 'DeDecoration2', + type: 'de_decoration', + title: t('visualization.decoration_name', [12]), + icon: 'DeDecoration2' + }, + { + value: 'DeDecoration3', + type: 'de_decoration', + title: t('visualization.decoration_name', [12]), + icon: 'DeDecoration3' + }, + { + value: 'DeDecoration4', + type: 'de_decoration', + title: t('visualization.decoration_name', [12]), + icon: 'DeDecoration4' + }, + { + value: 'DeDecoration5', + type: 'de_decoration', + title: t('visualization.decoration_name', [12]), + icon: 'DeDecoration5' + }, { value: 'DeBoard1', type: 'de_decoration', diff --git a/core/core-frontend/src/custom-component/component-list.ts b/core/core-frontend/src/custom-component/component-list.ts index a0c635aae8..1b3dd34b87 100644 --- a/core/core-frontend/src/custom-component/component-list.ts +++ b/core/core-frontend/src/custom-component/component-list.ts @@ -501,6 +501,10 @@ const list = [ style: { width: 400, height: 300, + color0: null, + color1: null, + color2: null, + dur: 6, borderActive: false, backdropFilter: 'blur(0px)' } diff --git a/core/core-frontend/src/custom-component/de-decoration/component_details/DeDecoration1.vue b/core/core-frontend/src/custom-component/de-decoration/component_details/DeDecoration1.vue new file mode 100644 index 0000000000..b7391e34bb --- /dev/null +++ b/core/core-frontend/src/custom-component/de-decoration/component_details/DeDecoration1.vue @@ -0,0 +1,197 @@ + + + + + diff --git a/core/core-frontend/src/custom-component/de-decoration/component_details/DeDecoration2.vue b/core/core-frontend/src/custom-component/de-decoration/component_details/DeDecoration2.vue new file mode 100644 index 0000000000..ead3e53af7 --- /dev/null +++ b/core/core-frontend/src/custom-component/de-decoration/component_details/DeDecoration2.vue @@ -0,0 +1,133 @@ + + + + + diff --git a/core/core-frontend/src/custom-component/de-decoration/component_details/DeDecoration3.vue b/core/core-frontend/src/custom-component/de-decoration/component_details/DeDecoration3.vue new file mode 100644 index 0000000000..384e84b12b --- /dev/null +++ b/core/core-frontend/src/custom-component/de-decoration/component_details/DeDecoration3.vue @@ -0,0 +1,133 @@ + + + + + diff --git a/core/core-frontend/src/custom-component/de-decoration/component_details/DeDecoration4.vue b/core/core-frontend/src/custom-component/de-decoration/component_details/DeDecoration4.vue new file mode 100644 index 0000000000..ad9b14089d --- /dev/null +++ b/core/core-frontend/src/custom-component/de-decoration/component_details/DeDecoration4.vue @@ -0,0 +1,136 @@ + + + + + diff --git a/core/core-frontend/src/custom-component/de-decoration/component_details/DeDecoration5.vue b/core/core-frontend/src/custom-component/de-decoration/component_details/DeDecoration5.vue new file mode 100644 index 0000000000..9867c5ed83 --- /dev/null +++ b/core/core-frontend/src/custom-component/de-decoration/component_details/DeDecoration5.vue @@ -0,0 +1,129 @@ + + + + + diff --git a/core/core-frontend/src/custom-component/de-decoration/component_details/config.ts b/core/core-frontend/src/custom-component/de-decoration/component_details/config.ts index 4969709bcc..f1d8e6de59 100644 --- a/core/core-frontend/src/custom-component/de-decoration/component_details/config.ts +++ b/core/core-frontend/src/custom-component/de-decoration/component_details/config.ts @@ -8,6 +8,11 @@ import DeBoard7 from '@/custom-component/de-decoration/component_details/DeBoard import DeBoard8 from '@/custom-component/de-decoration/component_details/DeBoard8.vue' import DeBoard9 from '@/custom-component/de-decoration/component_details/DeBoard9.vue' import DeBoard10 from '@/custom-component/de-decoration/component_details/DeBoard10.vue' +import DeDecoration1 from '@/custom-component/de-decoration/component_details/DeDecoration1.vue' +import DeDecoration2 from '@/custom-component/de-decoration/component_details/DeDecoration2.vue' +import DeDecoration3 from '@/custom-component/de-decoration/component_details/DeDecoration3.vue' +import DeDecoration4 from '@/custom-component/de-decoration/component_details/DeDecoration4.vue' +import DeDecoration5 from '@/custom-component/de-decoration/component_details/DeDecoration5.vue' const boardInfoMap = { DeBoard1: DeBoard1, @@ -19,9 +24,32 @@ const boardInfoMap = { DeBoard7: DeBoard7, DeBoard8: DeBoard8, DeBoard9: DeBoard9, - DeBoard10: DeBoard10 + DeBoard10: DeBoard10, + DeDecoration1: DeDecoration1, + DeDecoration2: DeDecoration2, + DeDecoration3: DeDecoration3, + DeDecoration4: DeDecoration4, + DeDecoration5: DeDecoration5 } export const findDecoration = name => { return boardInfoMap[name] } + +export const calcTwoPointDistance = (pointA, pointB) => { + const minusX = Math.abs(pointA[0] - pointB[0]) + const minusY = Math.abs(pointA[1] - pointB[1]) + + return Math.sqrt(Math.pow(minusX, 2) + Math.pow(minusY, 2)) +} + +/** + * @description 获取多个点,每个点之间的距离 + * @param {Point[]} points + * @return {number[]} + */ +export function getPointDistances(points) { + return new Array(points.length - 1) + .fill(0) + .map((_, i) => calcTwoPointDistance(points[i], points[i + 1])) +}