DDei在线设计器-API-DDeiStage

DDeiStage

  DDeiStage代表一个舞台,一个舞台含有多个DDeiLayer(图层)
  DDeiStage实例包含了一个舞台的所有数据,以及渲染器,在获取后可以通过它访问其他内容。DDeiSheetDDei中都有stage属性,前者的关系是固定的,后者指向当前激活的画布。

  一个DDeiSheet实例至少包含一个DDeiStage实例。

  本篇最后提供的示例可以在DDei文档直接预览

属性

属性名说明数据类型静态默认值备注
unicode唯一编号string系统生成自动编码
idIdx当前图形的ID种子number
layers图层集合DDeiLayer[]
layerIndex当前的图层下标number-1
selectedModels选中模型DDeiAbstractShape[]当前选中图形
ratio缩放比率number1.0
width画布宽度number
height画布高度number
wpv视窗开始点object(0,0,0)
spv纸张标量开始点object中心
mark水印object查看详情
paper纸张object查看详情
ruler标尺object查看详情
grid网格线object查看详情
ddInstanceDDei实例DDei
modelType模型类型stringDDeiStage

方法

static loadFromJSON

  将JSON转换为一个DDeiStage实例

参数

参数名类型范围默认值备注
jsonobject文件JSON数据
tempDataobject用于初始化的数据:{currentDdInstance:当前ddInstance实例}

返回值

类型备注
DDeiStageDDeiStage实例

toJSON

  将DDeiStage实例转换为JSON对象

参数

  无

返回值

类型备注
JSON包含了DDeiStage所有信息的JSON对象

initRender

  初始化渲染器,并绑定

参数

  无

返回值

  无

calModelNumber

  计算并返回当前舞台的模型总数量

参数

  无

返回值

类型备注
number模型总数量

addLayer

  添加图层到舞台中

参数

参数名类型范围默认值备注
layerDDeiLayer/undefined图层,为空会初始化一个
layerIndexnumber/undefined位置下标,为空会添加到末尾

返回值

类型备注
DDeiLayer被添加的图层

changeLayer

  切换当前图层

参数

参数名类型范围默认值备注
layerIndexnumber位置下标

返回值

  无

removeLayer

  删除图层

参数

参数名类型范围默认值备注
layerIndexnumber位置下标,为空时移除当前图层

返回值

类型备注
DDeiLayer被删除的图层

addModel

  添加模型到当前图层

参数

参数名类型范围默认值备注
modelDDeiAbstractShape模型

返回值

  无

getModelById

  根据ID获取图形

参数

参数名类型范围默认值备注
idstringid
allLayerbooleanfalse默认当前图层,true所有图层

返回值

类型备注
DDeiAbstractShape/null图形实例

getModelsByBaseType

  根据类别获取图形

参数

参数名类型范围默认值备注
bmtstring模型类型来自modelType/baseModelType

返回值

类型备注
DDeiAbstractShape[]图形实例列表

removeModel

  删除当前图层模型

参数

参数名类型范围默认值备注
modelDDeiAbstractShape模型
destroybooleanfalse是否销毁

返回值

  无

removeModelById

  根据ID删除控件

参数

参数名类型范围默认值备注
idsstring[]id列表

返回值

  无

cancelSelectModels

  取消选择图形

参数

参数名类型范围默认值备注
modelsDDeiAbstractShape[]/undefined模型列表
ignoreDDeiAbstractShape[]/undefined忽略模型列表

返回值

  无

displayLayer

  显示图层

参数

参数名类型范围默认值备注
layerIndexnumber下标
tempbooleanfalse临时显示

返回值

  无

hiddenLayer

  隐藏图层

参数

参数名类型范围默认值备注
layerIndexnumber下标

返回值

  无

setStageRatio

  设置缩放比率

参数

参数名类型范围默认值备注
newValuenumber1.0缩放比率

返回值

  无

getStageRatio

  获取缩放比率

参数

  无

返回值

类型备注
number缩放比率

notifyChange

  通知改变,刷新画布

参数

  无

返回值

  无

示例

代码

<script setup lang="ts">
import DDeiEditorView from "ddei-editor";
import {DDeiEditor,DDeiStage,DDeiLayer,DDeiCoreStandLayout,DDeiAbstractShape} from "ddei-editor";
import { defineComponent, markRaw,getCurrentInstance,ref } from "vue";
//获取主对象实例,代替this获取$refs
const {proxy} = getCurrentInstance()

const options = markRaw({
  config: { 
    "grid": 0, //网格线
    "background": { color: "blue", opacity: 0.1 }, //背景色
    initData: {
      controls: [
        {
          model: "102010",
          text: "初始化图形"
        },
      ]
    }
  },
  //配置扩展插件
  extensions: [
    //布局的配置
    DDeiCoreStandLayout.configuration({
      //配置插件
      'top': [],
      'middle': ['ddei-core-panel-canvasview'],
      'bottom': [],
      'left': [],
      'right': []
    }),
  ],
})

const createControl = () => {
  //获取编辑器 
  let editor:DDeiEditor = proxy.$refs["ddei_editor_api_3"].editor;
  let stage:DDeiStage = editor.files[0].sheets[0].stage
  //添加控件
  editor.addControls([
        {
          id:"control_1",
          model: "102010",
          text: "新图形"
        },
      ]);
};
const removeControl = () => {
  //获取编辑器 
  let editor:DDeiEditor = proxy.$refs["ddei_editor_api_3"].editor;
  let stage:DDeiStage = editor.files[0].sheets[0].stage
  //删除控件
  stage?.removeModelById(["control_1"])
};

const addLayer = () => {
  //获取编辑器 
  let editor:DDeiEditor = proxy.$refs["ddei_editor_api_3"].editor;
  let stage:DDeiStage = editor.files[0].sheets[0].stage
  //添加图层
  let newLayer:DDeiLayer = stage.addLayer(null,0);
  newLayer.initRender();
};
const removeLayer = () => {
  //获取编辑器 
  let editor:DDeiEditor = proxy.$refs["ddei_editor_api_3"].editor;
  //获取舞台
  let stage:DDeiStage = editor.files[0].sheets[0].stage
  //删除图层
  stage.removeLayer(0);
};

</script>

<template>

<button @click="addLayer" style="border:1px solid grey;margin-left:5px;padding:5px">新增图层</button>
<button @click="removeLayer" style="border:1px solid grey;margin-left:5px;padding:5px">删除图层</button>
<button @click="createControl" style="border:1px solid grey;margin-left:5px;padding:5px">创建控件</button>
<button @click="removeControl" style="border:1px solid grey;margin-left:5px;padding:5px">删除控件</button>

<div style="width:400px;height:400px;margin:100px auto;">
  <DDeiEditorView :options="options" ref="ddei_editor_api_3" id="ddei_editor_api_3"></DDeiEditorView>
</div>
</template>

仓库信息

源码: https://gitee.com/hoslay/ddei-editor

文档: http://docs.ddei.top

在线体验: https://www.ddei.top

技术支持

QQ:3697355039     邮箱:3697355039@qq.com

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/742478.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

HTML基础入门知识

HTML基础使用 文章目录 HTML基础使用1、什么是HTML2、web标准4、HTML语法规则5、常用的标签标题标签段落标签换行标签文本格式化标签div和span标签图片标签路径链接标签注释 1、什么是HTML 什么是网页 网站是指在因特网上根据一定的规则&#xff0c;使用 HTML 等制作的用于展示…

视创云展虚拟展厅融入AI智能助手,有哪些优势?

随着科技的日新月异&#xff0c;AI人工智能技术在各行业中已经得到了广泛的应用和实践&#xff0c;正深刻改变着我们的工作和生活方式。 为了给企业的营销展示注入新的活力&#xff0c;视创云展在其虚拟展厅中巧妙融入了「AI智能助手」。当用户沉浸在虚拟展厅的自由探索之中时…

【Feature Pyramid Networks for Object Detection】

Feature Pyramid Networks for Object Detection 摘要引言2 相关工作3 FPN4 应用摘要 特征金字塔是识别系统中用于检测不同尺度对象的基本组件。但是,最近的深度学习对象检测器已经避免了金字塔表示,部分原因是它们在计算和内存方面都很密集。在这篇论文中,我们利用深度卷积…

PD虚拟机支持M3吗 PD虚拟机怎样配置图形卡

最近有很多人在问M3芯片的苹果电脑和M2相比&#xff0c;有哪些提升的功能。实际上&#xff0c;M3芯片的苹果电脑拥有与M2相同的CPU与GPU数量&#xff0c;但比M2多50亿个晶体管&#xff0c;并引入了动态缓存、增强型神经网络引擎等技术&#xff0c;性能、功能均进一步加强。面对…

业务架构交付物

背景 业务的核心元素、扩展元素以及它们的协同关系&#xff0c;业务架构和其他架构的关系等等已经有了不少认识&#xff0c;那么&#xff0c;通过对业务架构的还原和分析&#xff0c;到底能够得到什么业务架构的内容呢&#xff1f;它可以是一套流程框架体系&#xff0c;也可以…

基于SpringBoot前后端分离在线骑行网站设计和实现(源码+LW+调试文档+讲解等)

&#x1f497;博主介绍&#xff1a;✌全网粉丝10W,CSDN作者、博客专家、全栈领域优质创作者&#xff0c;博客之星、平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌&#x1f497; &#x1f31f;文末获取源码数据库&#x1f31f;感兴趣的可以先收藏起来&#xff0c;还…

C语言实现的飞机票系统解析

前言 操作系统&#xff1a;Windows下运行。如果需要在Linux运行&#xff08;单机版&#xff09;&#xff0c;则需要修改删除conio.h&#xff0c;自己写个头文件获取键盘输入。我已经写好了getch.h文件&#xff0c;需要将其导入使用。 开发环境&#xff1a;CodeBlocks || VS C…

2024高考-优先选专业还是优先选学校

分数限制下&#xff0c;选好专业还是选好学校&#xff1f; 24年高考帷幕落下&#xff0c;一场新的思考与选择悄然来临。对于每一位高考考生&#xff0c;学校和专业都是开启大学新生活的两个前置必选项。但有时候“鱼与熊掌不可兼得”&#xff0c;在分数受限的条件下&#xff0…

作业6.20

1.已知网址www.hqyj.com截取出网址的每一个部分(要求&#xff0c;该网址不能存入文件中) 2.将配置桥接网络的过程整理成文档&#xff0c;发csdn 步骤i&#xff1a;在虚拟机设置中启用桥接模式 1. 打开VMware虚拟机软件。 2. 选择您想要配置的虚拟机&#xff0c;点击菜单栏中的“…

减少液氮罐内液氮损耗的方法

监测与管理液氮容器的密封性能 液氮容器的密封性能直接影响液氮的损耗情况。一个常见的损耗源是容器本身的密封不良或老化导致的泄漏。为了有效减少液氮损耗&#xff0c;首先应当定期检查液氮容器的密封性能。这可以通过简单的方法如肉眼检查外观&#xff0c;或者更精确的方法…

在线客服源码系统全端通用 源码完全开源可以二次开发 带完整的安装代码包以及搭建教程

系统概述 在线客服源码系统采用了先进的技术架构&#xff0c;包括前端界面、后端服务、数据库等部分。前端界面采用了响应式设计&#xff0c;能够自适应不同的设备屏幕尺寸&#xff0c;为用户提供良好的使用体验。后端服务采用了高性能的服务器架构&#xff0c;确保系统的稳定…

中国首例!「DataKit」上架亚马逊云科技 Marketplace add-ons

在 2022 年的 re:Invent 大会上&#xff0c;亚马逊云科技宣布了一项重大更新&#xff1a;亚马逊云科技 Marketplace 为 Amazon Elastic Kubernetes Service&#xff08;Amazon EKS&#xff09;提供了附加组件的支持。这一创新功能极大地丰富了 EKS 的生态系统&#xff0c;使用户…

【力扣】重排链表

&#x1f525;博客主页&#xff1a; 我要成为C领域大神 &#x1f3a5;系列专栏&#xff1a;【C核心编程】 【计算机网络】 【Linux编程】 【操作系统】 ❤️感谢大家点赞&#x1f44d;收藏⭐评论✍️ 本博客致力于分享知识&#xff0c;欢迎大家共同学习和交流。 给定一个单链表…

大模型训练数据

自《中共中央国务院关于构建数据基础制度更好发挥数据要素作用的意见》发布以来&#xff0c;我国数据要素建设不断深入&#xff0c;在国家数据局等 17 部门联合印发的《“数据要素 ” 三年行动计划&#xff08;2024 - 2026 年&#xff09;》进一步明确 “建设高质量语料库和基础…

邮件推送服务的高级功能有哪些?怎么使用?

邮件推送服务的效果如何评估&#xff1f;怎么选择邮件营销服务&#xff1f; 邮件推送服务不断发展&#xff0c;提供了丰富的高级功能&#xff0c;帮助企业提升营销效果&#xff0c;优化客户体验。AokSend将探讨一些邮件推送服务的高级功能&#xff0c;并说明它们如何为企业带来…

HTTP、MQTT、CoAP大比拼:谁才是物联网通信的王者?

物联网&#xff08;IoT&#xff09;时代&#xff0c;数以亿计的设备需要相互连接和通信&#xff0c;而超文本传输协议&#xff08;HTTP&#xff09;作为互联网的基石&#xff0c;凭借其简单易用、广泛应用等优势&#xff0c;也成为了物联网通信协议的有力竞争者。本文将深入浅出…

Windows重新安装安全中心解决白屏问题

重新安装Windows安全中心&#xff08;Windows Security Center&#xff09;涉及多个步骤&#xff0c;包括重置Windows安全功能和重新安装Windows安全应用。以下是详细的步骤&#xff1a; 1. 通过PowerShell重置Windows安全中心 打开PowerShell: 在开始菜单中搜索“PowerShell”…

ClickHouse vs. Elasticsearch:十亿行数据的较量

本文字数&#xff1a;15291&#xff1b;估计阅读时间&#xff1a;39 分钟 审校&#xff1a;庄晓东&#xff08;魏庄&#xff09; 本文在公众号【ClickHouseInc】首发 Meetup活动 ClickHouse 上海首届 Meetup 讲师招募中&#xff0c;欢迎讲师在文末扫码报名&#xff01; 引言 这…

mysql 主从延迟

mysql 主从延迟 下面这句话&#xff0c;不知道对不对 注意&#xff1a;开启并行复制后&#xff0c;如果想要Xtrabackup进行全量备份的话&#xff0c;那就必须还要开启gtid复制而不是传统的位点复制 精华推荐 | 【MySQL技术专题】「主从同步架构」全面详细透析MySQL的三种主从…

怎么加密文件夹?文件夹加密软件推荐

文件夹加密是保护电脑数据的重要方法&#xff0c;那么你知道怎么加密文件夹吗&#xff1f;下面小编就为大家推荐两款文件夹加密软件&#xff0c;帮助你安全保护重要文件夹。 文件夹加密超级大师 在加密电脑文件夹时&#xff0c;文件夹加密超级大师是你必须要了解的文件夹加密软…