从零开始搭建web组态

组态icon图标,iconfont、SVG图片可以在组态中转换成图纸或者图标,并且自动化保存到图标目录下同样命名的文件夹内的步骤;data.a()、data.ca(),带前缀和不带前缀的属性获取及设置 图标嵌套中,可以拖放进来同一个图标的多个实例,前缀是用来在数据绑定中这多个实例的,比如拖放两个相同的仪表嵌套进来,显然两个仪表是要绑定不同的数据作为变量暴露出去关联各自的物联中台数据点,那么一定要有区分,这就体现在前缀上。 注意,选中图标实例时在各自的属性不论是attr还是func里,可以都是一样的比如变量名为xxx,在全局dataBindings数据绑定中,命名就需要时a.xxx、b.xxx,这样通过a、b各自的前缀设置来区分。 阅读详情

成果展示:http://www.hcy-soft.com

演示地址:若依管理系统(生产环境)


一、技术选择


目前只有两种选择,canvas和svg

Canvas: 是一个基于像素的渲染引擎,使用JavaScript API在画布上绘制图像,它的优点包括:

  • Canvas渲染速度快,适合处理大量图像和高度动态的图像。
  • 可以直接操作像素,能够创建高质量、流畅的动画效果。
  • Canvas可用于实现复杂的游戏、3D效果等。

SVG: 是一种基于矢量的图形格式,可以使用XML和JavaScript API在浏览器中绘制图像,它的优点包括:

  • SVG是基于矢量的图形格式,图像可以无限放大而不失真。
  • 可以为SVG图像添加事件处理器,实现交互效果。
  • 可以通过CSS进行样式控制,使得SVG图像更加灵活。
  • SVG图像可以直接嵌入到HTML文档中,不需要另外下载。

但它也存在一些缺点:

  • SVG渲染速度较慢,适合处理少量图像和少量动态的图像。
  • SVG图像在处理复杂图形时可能会导致性能问题。
  • 由于SVG是基于矢量的图形格式,它的复杂度比较高,可能会导致文件大小较大。

        根据个人喜好选择,一般来说canvas的性能要不svg好的多,对于组态画面,实时性要求要高,我们选择canvas。对canvas的开发,都需要选择一款框架,底层开发太难了,选择框架一定要选择文档全面,例子多的,konva.js是非常不错的。

ui框架自行选择,都行。

二、 konva.js简介


        konva 是一个对 canvas API 做了封装增强的 JavaScript 库。

        HTML 原生的 canva 提供的 API 比较底层,用法上像是操纵一支画笔进行各种操作,画完就结束了。

        canvas 本身不维护图形树,你也无法操作修改已被绘制的图形。

        而 konva 能够像我们操作 DOM 树一样去绘制和维护元素,它会额外维护图形构成的树,并能在绘制后,对特定图形进行样式的修改。

        你还可以在上面添加事件,比如鼠标滑入某图形时,图形变大一点。此外还支持方便的变形、动画、拖拽等高级能力。

        konvas提供商了所有组态的基础功能,如,点,线,面,拖拽,变化,放大缩小,事件等等,只要你想到的,他都有,我们要做的就是一点一点的吧这些功能堆起来,形成一个完整的组态工具。技术上并不难,就是花点时间。

三、 组态功能


        我们做一个最简单的功能,其他的功能自己慢慢堆,下面是功能列表

        组态图元: 变量组件(可根据后台推送的数据显示到画布上),属性(文字颜色)

        后台通讯:websocket

        画面保存:画面要能以字符串的形式保存到后台数据库,或者生成文件,查看画面的时候在字符串拿出来,在还原为画面

        实时数据渲染:后台来数据后要及时呈现到画布上

四、 需求分析


        我们做的组件是一个一个的,组件要方便存储,这样后续才能方便添加,一个组件里面包含该组件所有的属性。这是最重要的,否则后面扩展及其困难

        konva可以将单个的组件,序列化为字符串。这样就方便了我们做一个一个组件。

五、成功案例

​

​

​

​

​

​

​

​

​

​

​

组态 web 插件 编辑器 组态 web组态 插件 编辑器 插件介绍 1可任意对现场的实际场景进行模拟组态。 2组态场景保存后是json格式的数据,可落地到数据库或磁盘文件。 3保存后的场景可进行再次编辑。 4(组件不断添加中,详见演示案例)静态组件支持svg ,png可自己进行添加,现有的动态组件基本满足所有情况(如:旋转,流动,单机事件,闪烁,隐藏,状态(灯,文字)) 5客户端场景查看 6添加新场景 7编辑新场景 图片展示 一、界面预览 在这里插入图片描述 2、预览界面:测试组态后的结果界面进行测试,文本框可输入测试数据,点击发送 阅读详情

相关推荐

Vue3+TypeScript+AntVX6实战:从零构建Web组态编辑器(附完整代码解析)

本文通过一个完整的案例教学,详细介绍了如何使用Vue3、TypeScript与AntV X6从零构建一个功能强大的Web组态编辑器。内容涵盖环境搭建、画布初始化、节点设计与拖拽、连线交互优化以及高级功能实现,并提供了完整的代码解析,帮助开发者快速掌握现代化Web图形编辑器的开发流程。

n4o5p6q7r的博客 552

WPF利用SVG实现组态图元

利用C#开发可能需要用到组态设计,当前介绍使用WPF的svg转成xaml实现组态图元当前示例暂时只是使用svg的资源生成基本的组态图元,要想实现一个组态工具还是任重而道远。

yao136的专栏 2963

基于AJAX和SVG的组态软件Web发布模型

针对当前组态软件Web发布时安全性差,运行速度慢以及图形文件格式多样等问题,提出了基于AJAX(asynchronousJavaScriptandxML)SVG(scalablevectorgraphics)的组态软件Web发布模型。

基于SVG的HMI组件

人机界面是自动化领域不可或缺重要组成部分。人机界面系统的设计看上去并没有太大的技术门槛,但是设计一个HMI系统的工作量是巨大的,如果你没有足够的耐心是完成一个通用HMI系统的。构建UI控件库就是一个似乎永远完不成的事情,用户永远觉得不够用。另一方面使用HMI的组态工具构建HMI应用也是一个十分繁琐又容易出错的地方,你需要将大量的数据点与HMI上的UI对应起来。人们期望自动生成HMI界面。本文讨论如何解决这些问题。

姚家湾博客 3344

基于vue3实现的svg可视化web组态编辑器。可无需修改代码动态添加svg组件.zip

基于vue3实现的svg可视化web组态编辑器。可无需修改代码动态添加svg组件.zip

基于vue3实现的svg可视化web组态编辑器,可无需修改代码动态添加svg组件,主要用于物联网mqtt实时系统图 基于 vue3 的 web 组态引擎库

基于vue3实现的svg可视化web组态编辑器,可无需修改代码动态添加svg组件,主要用于物联网mqtt实时系统图。基于 vue3 的 web 组态引擎库

从零开始:Ricon组态系统快速入门指南

对于刚接触工业组态软件的朋友来说,面对众多的选择往往感到困惑。Ricon组态系统以其现代化的架构、友好的用户界面和强大的功能,成为新手入门的理想选择。本文将带您从零开始,快速掌握Ricon系统的使用方法。创建组件文件注册组件// 在basic.json中添加组件定义"moduleName": "我的组件",实现渲染逻辑// 在stageView.js中添加渲染逻辑// 组件渲染代码通过本指南,您应该已经掌握了Ricon组态系统的基本使用方法。记住,熟练使用任何工具都需要实践和探索。

u014507573的博客 445

FEniCS学习笔记01:centos7下通过conda安装FEniCSx0.7

2023年版本的Fenicsx0.7,官网推荐使用conda命令安装集成好的Python包,因此我们的安装思路是先安装Anaconda,再按照官网步骤安装Fenics。

huahua_xiao的博客 5055

从组态软件到Web可视化:SagooIoT组态工具的工程化设计实践

传统组态软件困在客户端加授权文件的枷锁中,SagooIoT的Web原生组态工具以浏览器即用、JSON工程版本化、在线模板市场、60+工业组件库等能力,正在重新定义工业可视化的开发方式。本文从架构设计、数据绑定机制到实战案例,全面解析其工程化实践。

辛佳雨的专栏 309

保姆级教程:用Python+OpenCV搞定Orbbec Gemini深度与彩色流对齐(附完整代码)

本文提供了一份详细的Orbbec Gemini深度与彩色流对齐教程,涵盖从环境配置到完整代码实现的每一步。通过解析深度流对齐原理,对比不同对齐模式,并提供工业级应用中的问题排查方法,帮助开发者快速掌握Orbbec Gemini相机的使用技巧。文章还包含进阶应用如点云生成与三维重建的实战代码。

weixin_29090917的博客 466

【FPGA】Robei EDA 的使用(7)—— Robei文件上板试验

#沐朝露兮以自华,觅大道兮以求成 我又滚过来了,研究了20多天RISCV,结果最后因为硬件问题导致无法在比赛中使用RISCV CPU,虽然已经临近比赛后期了,非常的崩溃,但是也没有什么办法。唉,一切不过是从头再来罢了。(写写博客舒缓我心中苦闷) ————————————————进入正文的分割线———————————————— 今天介绍一下如何利用 Robei EDA 生成文件,导入vivado中,综合下载到开发板里。拿我一个PWM控制舵机的代码为例。 Robei EDA设置 假设代码模块(model文件)经

Ninquelote的博客 2553

50+大屏模板,国产 IoT-Fast 物联网 2D 可视化 Web 组态软件

国产 IoT-Fast 物联网 2D 可视化Web组态软件核心引擎开源,具备实时监控、多样性、动态交互、高效性、可扩展性和跨平台等特点,能够显著减少研发和运维成本。IoT-Fast可视化Web组态软件致力于让普通业务人员能够零代码实现Web组态和SCADA等解决方案。同时,它拥有丰富的行业图形库和可视化案例。已广泛运用于电力能源、水利水务、物联网、工业互联网、智慧工厂、智慧城市、智慧交通、智慧...

2268

python解析通达信dat与blk数据文件【附源码】

本文介绍了一个完整的通达信金融数据解析器项目,该项目攻克了通达信专有二进制文件格式解析的技术难题。项目采用模块化架构,从基础二进制解析到增强数据分类,最终实现智能语义化列名生成,形成完整的数据处理链路。核心技术包括自适应编码检测、智能数据类型推断和基于业务规则的语义化处理,解决了逆向工程、多编码兼容性等挑战。项目成果显著,解析成功率达100%,数据可读性大幅提升,开发效率提高50%,为量化交易、可视化分析等场景提供了可靠数据支持。该方案不仅具备技术创新性,更具有实际工程应用价值,为金融数据分析领域提供了可复

qq_36224726的博客 2678
上一篇: 低代码、配置式web组态软件
下一篇: Web组态可视化编辑器 快速绘制组态
万维————组态
博客等级 码龄3年 1473粉丝 145原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值