0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于 HT for Web 插件搭建组态拓扑结构

图扑-数字孪生 来源:图扑-数字孪生 作者:图扑-数字孪生 2024-08-01 11:20 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

wKgaomaq_smAOkA6AAYjuUClU6w433.png

在现代的数据可视化和网络管理中,拓扑图是一种非常重要的工具。它可以直观地展示节点(Node)和节点之间的关系(Edge)。无论是在 2D 还是 3D 环境中,拓扑图都可以帮助我们更好地理解和管理复杂的系统。

然而,由于这些拓扑图通常极为复杂,传统的手动布局方式不仅繁琐且耗时。鉴于此,图扑软件自研 HT for Web 产品(以下简称为 HT)推出了自动布局、弹力布局插件,从根本上解决了这一问题。

wKgZomaq_sqAVxRYABNxX23nqn0910.gifwKgaomaq_suAfs9yAAj3fhEHg4s517.gif

这些案例不仅限于 2D 和 3D 拓扑图,还涉及到 GIS 场景的应用,展示了广泛的应用场景和强大的功能。

自动布局在 2D 中的运用

图扑软件 HT 自动布局插件总共有七种布局方式:圆形布局、对称布局、层次布局、朝北布局、朝南布局、朝东布局和朝西布局。

wKgZomaq_suAZEf2AA30TCME7Xg463.gif

在拓扑图的制作过程中,我们会使用自动布局来进行初始布局操作。然而,自动布局并非万能良药,无法在所有情况下都完全达到我们的预期效果。因此,通常在自动布局之后,我们也会对图纸进行一些手动微调,以达到优质的展示效果。

wKgaomaq_tGAP3kfAAC5BDYnR9w84.jpeg

以上图示例为例,图内拓扑是从左到右布局的效果。尽管节点之间呈简单的树形层次关系,但节点位置错落不齐,并且需要使用多种类型的连线,所以单纯使用自动布局达不到预期的效果。接下来简单介绍一下这个 demo 的实现步骤:

1.在图纸上创建好节点并设定节点之间的连线关系后,我们可以使用自动布局来进行初始布局操作。在示例中,我们希望展示一个从左到右的布局,这时可以使用自动布局工具中的朝东布局(towardeast)来实现这一效果。设置自动布局的相关代码:

let autoLayout = new ht.layout.AutoLayout(view, {

gap: 30

});

layout(false);

function layout(animate) {

autoLayout.setAnimate(animate);

autoLayout.layout('towardeast', function () {

view.fitContent(animate);

});

}

wKgZomaq_tKAek2xAATAbyP733o741.gif

朝东布局(towardeast)仅适用于树形层次结构。如果图纸中存在非树形层次结构的连线,在初始布局时可以先不进行连线操作,待自动布局完成后再创建相应的连线。

2.手动调整节点的位置:在获取到节点后,通过 node.setPosition ({x: 100, y: 100}) 方法重新设置其位置。最终可以得到如下的效果图:

wKgaomaq_teAHN2VAASQR411ZTs828.gif

3.经过步骤 2 后,整体拓扑仍显杂乱。此时,可以根据节点的位置等因素,调整连线的类型、间距和锚点等属性。同时,还可以修改连线的颜色和宽度等样式属性,以实现理想效果。调整完成后的效果如下:

wKgZomaq_tiAWcdgAAZALvN9lZs955.gif

4.最后再加上一些文本内容,一个完整的拓扑图就完成了。

wKgaomaq_tmAcOzYAAzQUOrVdxo236.gif

自动布局在 3D 中的运用

随着 OpenGL 和 WebGL 等图形技术的发展,3D 视觉表达方式越来越受到重视。拓扑图的呈现方式也从传统的 2D 展示逐渐转向更立体和动态的 3D 展现。图扑 HT 的自动布局功能不仅在 2D 中广泛应用,在 3D 中也同样适用。

无论是在 2D 还是 3D 环境中,自动布局的使用方式都是一致的。在 3D 环境中,自动布局实际上设置的是 3D 坐标中的 xz 平面。对于 3D 场景中独有的的 y 轴,则需要通过 node.setElevation(elevation) 方法来进行设置。

只设置了自动布局产生的效果如下:

wKgZomaq_tqATIZ_AAqvMFx95L4227.gif

根据层级设置不同 y 轴坐标产生的效果:

wKgaomaq_tuASoCFACbLb-jK8LU006.gif

弹力布局

弹力布局又称之为导向布局,根据节点之间的斥力、相互连接的节点之间存在在引力运行,并且会逐渐达到收敛稳定的平衡状态。弹力布局具有指向性,通常用于标识物与物、人与人之间的关系,这种布局方式特别有助于表达元素之间的关联性和依赖性,使用户直观地观察到各个元素之间的交互和联系。

接下来用一个示例来演示弹力布局的实现过程,示例效果如下:

wKgZomaq_tyAfqfZAFAH11-FGww482.gifwKgaomaq_t-ASi5HAEEpm2amRc8380.gif

在图纸上创建好节点并设置好节点间的连线关系后,就可添加弹力布局相关代码。在实例化 ht.layout.ForceLayout 时,可以传入 DataModel 、GraphView 和 Graph3dView 三种参数。默认仅对未选中图元进行布局,如果参数为 GraphView 和 Graph3dView 时,则视图组件的 isMovable 和 isVisible 函数将影响图元是否可布局,图元 style 上的 layoutable 属性也可设为 false 阻止图元参与布局。

const forceLayout = new ht.layout.ForceLayout(view);

forceLayout.start(); // 启动弹力布局

forceLayout.setNodeRepulsion(0.7) // 设置节点间斥力,值越大节点间斥力越大,节点布局越分散。

forceLayout.setEdgeRepulsion(0.7) // 设置节点间斥力,值越大连线节点间斥力越大,连线节点布局越分散。

view.setZoom(0.38); // 设置图纸缩放值

在 3D 中也可使用 ht.layout.Force3dLayout 类来设置弹力布局,具体设置方式同 ht.layout.ForceLayout。

wKgZomaq_uCAG-OGAAX2xlzF6Ws939.gif


审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 组态
    +关注

    关注

    0

    文章

    197

    浏览量

    15881
  • 数据可视化
    +关注

    关注

    0

    文章

    502

    浏览量

    11533
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    基于HT for Web的机车整备场数字孪生系统技术实现

    本文基于 HT for Web(基于 WebGL/Canvas 的纯前端可视化插件)构建机车整备场数字孪生三维可视化系统,通过轻量化三维建模、实时数据对接、前端 API 驱动渲染,实现整备场全流程
    的头像 发表于 04-03 16:03 126次阅读
    基于<b class='flag-5'>HT</b> for <b class='flag-5'>Web</b>的机车整备场数字孪生系统技术实现

    森林消防智慧预警技术实现:火灾监测 Web GIS 可视化平台搭建

    本文基于图扑软件(Hightopo)自研的 HT 前端插件,从技术实现与功能落地角度,解析森林消防火灾监测 Web GIS 可视化平台的搭建逻辑、核心技术应用及功能模块实现流程,该平台
    的头像 发表于 03-19 11:31 182次阅读
    森林消防智慧预警技术实现:火灾监测 <b class='flag-5'>Web</b> GIS 可视化平台<b class='flag-5'>搭建</b>

    新一代 Web 组态监控看板:一屏览生产,数字化升级工控全域管控力

    新一代Web组态监控看板融合数字孪生技术,实现全流程可视……
    的头像 发表于 03-10 11:24 308次阅读
    新一代 <b class='flag-5'>Web</b> <b class='flag-5'>组态</b>监控看板:一屏览生产,数字化升级工控全域管控力

    基于 HT 引擎零代码搭建 3D 智慧农场,实现耕种管收全无人

    基于 HT 前端可视化插件,提出 3D 智慧农场可视化解决方案。方案采用 HTML5、WebGL和Canvas 技术,结合 WebSocket/HTTP 协议,实现农业生产全环节的智能化管理。系统
    的头像 发表于 03-05 15:34 290次阅读
    基于 <b class='flag-5'>HT</b> 引擎零代码<b class='flag-5'>搭建</b> 3D 智慧农场,实现耕种管收全无人

    Python运行本地Web服务并实现远程访问

    本文介绍使用Python搭建本地Web服务并结合 ZeroNews 实现公网访问。
    的头像 发表于 02-06 11:39 357次阅读
    Python运行本地<b class='flag-5'>Web</b>服务并实现远程访问

    基于图扑 HT 引擎:数字孪生民航飞联网方案

    图扑基于 HTML5 自主研发 2D、3D 图形渲染引擎,依托 WebGL、Canvas 技术栈打造纯前端可视化插件 HT for Web。该插件支持轻量化三维模型导入加载,可完成界面
    的头像 发表于 02-05 14:26 302次阅读
    基于图扑 <b class='flag-5'>HT</b> 引擎:数字孪生民航飞联网方案

    神东煤炭 × 图扑软件 | 国产组态 SCADA HMI 矿山一体化管控平台

    for Web 系列产品平台自主完成一体化管控平台升级。 此次升级既是神东煤炭运维能力的跨越式提升,更是图扑 HT for Web 平台(简称 HT 平台)综合实力的体现,不仅在可视
    的头像 发表于 02-04 13:52 236次阅读
    神东煤炭 × 图扑软件 | 国产<b class='flag-5'>组态</b> SCADA HMI 矿山一体化管控平台

    图扑 HT 数字孪生地铁站功能实现解析

    在智慧交通数字化转型进程中,数字孪生技术凭借 “虚实映射、实时联动” 的核心优势,成为提升地铁站运营效率与服务质量的关键支撑。图扑 HT 依托自主研发的 HT for Web 纯前端插件
    的头像 发表于 12-25 14:07 444次阅读
    图扑 <b class='flag-5'>HT</b> 数字孪生地铁站功能实现解析

    图扑 HT 驱动智慧社区数字化转型:多维可视化与系统集成实践

    数字化转型提供技术支撑。 图扑智慧社区方案的核心技术支撑源于 HT for Web 插件,其以轻量、高效的前
    的头像 发表于 10-31 14:44 617次阅读
    图扑 <b class='flag-5'>HT</b> 驱动智慧社区数字化转型:多维可视化与系统集成实践

    基于HT的智慧航运数字孪生系统开发

    在水运行业向智能化转型的过程中,图扑软件靠自己研发的 HT for Web 轻量化技术,打造出了能覆盖智慧港口、智慧船舶航运的全流程数字孪生解决方案。这套方案没用到任何第三方插件,全靠 HT
    的头像 发表于 10-27 18:10 985次阅读
    基于<b class='flag-5'>HT</b>的智慧航运数字孪生系统开发

    基于 HT 搭建的农林牧数据可视化监控平台

    图扑 HT 的农林牧数据可视化监控平台,以自主研发的 2D&3D 图形渲染引擎、HT for Web GIS 产品及数据孪生应用开发平台为核心技术支撑,全程未依赖任何第三方插件,实现了
    的头像 发表于 08-29 14:51 719次阅读
    基于 <b class='flag-5'>HT</b> <b class='flag-5'>搭建</b>的农林牧数据可视化监控平台

    用 VSCode 编写自己的 KiCad 插件(下)

    “  很多小伙伴都想自己开发 KiCad 插件,但不知从何入手。本文由华秋电子的另一位 KiCad 开发者波波同学撰写,分享了如何快速搭建环境,并开发一个简单的插件。  ”       所有环境配置
    的头像 发表于 06-19 11:44 3193次阅读
    用 VSCode 编写自己的 KiCad <b class='flag-5'>插件</b>(下)

    WEB组态物联网平台是什么?有什么功能?

    、流程控制等操作,无需安装本地客户端。 核心特点 : Web化部署 :基于B/S架构,用户通过浏览器即可访问,降低部署和维护成本。 组态化配置 :提供拖拽式界面设计工具,用户可快速搭建监控画面(如工业流程图、设备状态看板等)。
    的头像 发表于 06-17 15:25 1217次阅读

    基于 HT for Web 的轻量化 3D 数字孪生数据中心解决方案

    一、技术架构:HT for Web 的核心能力 图扑软件自主研发的 HT for Web 是基于 HTML5 的 2D/3D 可视化引擎,核心技术特性包括: 跨平台渲染 :采用 Web
    的头像 发表于 05-30 14:33 1067次阅读
    基于 <b class='flag-5'>HT</b> for <b class='flag-5'>Web</b> 的轻量化 3D 数字孪生数据中心解决方案

    开关电源拓扑结构介绍

    基本拓扑结构,帮助系统掌握各个电路的工作原理和基本特点。 八种开关电源常见的基本拓扑结构:BUCK 降压电路BOOST 升压电路BUCK-BOOST 降压-升压电路FLYBACK 反激
    发表于 05-12 16:04