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

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

3天内不再提示

HT 可视化监控页面的 2D 与 3D 连线效果

图扑-数字孪生 来源:图扑-数字孪生 作者:图扑-数字孪生 2025-04-09 11:28 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

HT 是一个灵活多变的前端组件库,具备丰富的功能和效果,满足多种开发需求。让我们将其效果化整为零,逐一拆解具体案例,帮助你更好地理解其实现方案。

此篇文章中,让我们一起深入探讨 2D 与 3D 的连线效果是如何实现的。我们将从基本概念、实现步骤、关键代码多个维度,逐步剖析这个效果的具体实现过程,为你提供全面的知识和实践指导。

尽管 2D 与 3D 连线效果看起来复杂,其本质仍然是二维节点之间的连接。只需要通过一些巧妙的技术,就可以使其看起来像是 23D 连线效果。

wKgZO2f16PSAJX7YAAMVT-P-h7s058.pngwKgZPGf16PyAZmpJAAOeLDaXjlE530.pngwKgZO2f16VeAaN5JAB8YjYBl1L8320.gif

1. 为了实现 23D 视图效果,我们首先需要分别创建一个 2D 与 3D 视图做结合,并设置一些默认属性。

// 创建 3D 视图并且将视图添加到 DOM 显示
dm3d = new ht.DataModel();
g3d = new ht.graph3d.Graph3dView(dm3d);
g3d.addToDOM();


// 创建 2D 视图并且将视图添加到 3D 视图的 DOM 显示
dm2d = new ht.DataModel();
g2d = new ht.graph.GraphView(dm2d);
g2d.addToDOM(g3d.getView());
g2d.setZoomable(false);

2. 封装 23D 坐标转换方法,这是此功能的核心。

function setPosotion(node3d, node2d) {
    // 将3D中节点坐标转换为屏幕坐标
    var viewPoint = g3d.toViewPosition(node3d.p3()); 
    // 将屏幕坐标转换为2D中的逻辑坐标    
    var position = g2d.getLogicalPoint(viewPoint);
    // 设置2D上跟随3D节点位置变化的节点坐标
    node2d.p(position);
}

3. 创建节点并添加到对应视图。

// 3D中的节点
node3d = new ht.Node();
dm3d.add(node3d);


// 2D中与3D中节点连接节点
node1 = new ht.Node();
node1.p(100, 100);
dm2d.add(node1);


// 2D上跟随3D节点位置变化的节点,使用3D节点初始化位置,并且设置为不可见状态
node2 = new ht.Node();
setPosotion(node3d, node2);
node2.s('opacity', 0);
dm2d.add(node2);


// 创建连线
edge = new ht.Edge();
edge.setSource(node1);
edge.setTarget(node2);
dm2d.add(edge);

4. 同步 3D 节点和 2D 跟随节点位置,主要有以下两种方案:

监听 3D 场景 eye 和 center 变换,适用于 3D 节点位置不会改变情况,如建筑节点。

g3d.mp(e => {
    if (e.property === "eye" || e.property === "center") {
        setPosotion(node3d, node2);
    }
})

每帧都刷新,适用于场景节点位置会改变的情况,如会移动的车辆。

let func = () => {
    setPosotion(node3d, node2);
    requestAnimationFrame(func);
}
func();实现 23D 连线效果的核心在于精确的坐标转换,通过使用这一方法,我们能够显著提升界面的视觉效果,使得 2D 信息面板与 3D 内容具备更清晰的关联性。这不仅使界面显得更加丰富多彩,还大大增强了用户对信息的理解和操作体验。
wKgZPGf16ViACD1wABDhxYTFVdQ706.gifwKgZO2f16RCABVycAAAXErN_MKM985.png

当用户点击场景中的 3D 模型时,可以在 2D 视图上展示相应的信息面板。这个信息面板将详细显示所选模型的属性和相关数据。同时,通过一条连线将 2D 信息面板与 3D 模型连接起来,使用户明确知道哪个模型对应哪个信息面板。这样不仅保证了模型信息的准确显示,还便于用户快速找到对应的模型和信息,提升使用效率。

wKgZPGf16SCAb-dWAAnh7IdaMA0234.png

用户点击正在移动的车辆时,系统将在 2D 视图中显示一个详细的车辆信息面板。为了确保用户在车辆移动时仍能轻松地将信息面板与车辆对应起来,使用 23D 连线方法生成一条可视化连线,将车辆和信息面板连接起来。无论车辆在场景中移动到何处,这条连线都会实时更新,始终保持车辆和信息面板之间的连贯性。这样一来,用户可以随时跟踪车辆的信息,不会因为车辆的移动而混淆信息来源。

wKgZO2f16SyAVQ5wAAn_OLApNcA046.png

通过这种方式,优化了用户体验,保证了信息的准确对接和快速访问。

在确保 3D 节点和 2D 信息面板数据同步方面,除了使用连线来连接两个元素之外,还可以采用坐标转换的方法同步位置。通过坐标转换,根据 3D 节点直接设置信息面板的位置。

这种方法特别适用于需要展示带有视频的面板信息的场景。由于场景中无法直接嵌入视频,使用 2D 面板展示视频内容是理想的解决方案。通过坐标转换,2D 面板可以始终与 3D 节点保持对应,无论节点如何移动或变换位置,用户都可以直观地看到相关的视频信息和其他详细数据。

wKgZO2f16UGAFyNjAAu4pIOiUyA692.png

23D 连线是一种高效、直观的方式,通过在三维空间中为 3D 对象和其对应的 2D 信息面板之间绘制一条可视连线,解决了因对象移动或变化导致的信息对接问题。它极大地提升了用户体验和信息传递的准确性,特别适用于复杂和动态场景中。

我们将持续推出更多关于功能实现的解析文章,进一步深入探讨和优化不同情境下的应用。敬请期待!

审核编辑 黄宇

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

    关注

    0

    文章

    48

    浏览量

    30950
  • 可视化
    +关注

    关注

    1

    文章

    1365

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    基于 HT 的 2.5D 组态可视化技术方案与场景实现

    本文所述 2.5D 组态可视化方案,基于图扑软件HT 引擎构建。HT 是依托 WebGL 与 Canvas 实现的纯前端可视化插件,具备
    的头像 发表于 04-28 14:13 59次阅读
    基于 <b class='flag-5'>HT</b> 的 2.5<b class='flag-5'>D</b> 组态<b class='flag-5'>可视化</b>技术方案与场景实现

    高质量可视化大屏应该这样设计

    ,支持 2D 组态、3D 数字孪生、2.5D 可视化界面同步渲染,兼顾渲染效率与视觉效果。 组件体系 :内置完整自研图表库、UI 组件库、面
    的头像 发表于 04-23 14:22 131次阅读
    高质量<b class='flag-5'>可视化</b>大屏应该这样设计

    水墨国风智慧大坝 3D 可视化系统技术实现

    水利工程作为国家基础设施关键组成部分,智慧大坝建设依托物联网、大数据、5G 与数字孪生技术,实现工程全域感知、智能管控。本文基于图扑软件 HT 引擎,从技术实现层面解析水墨国风智慧大坝 3D 可视化
    的头像 发表于 04-16 14:51 109次阅读
    水墨国风智慧大坝 <b class='flag-5'>3D</b> <b class='flag-5'>可视化</b>系统技术实现

    3D系统可视化

    本身的深入描述和F-Theta透镜的应用示例。 光学系统的3D-可视化 VirtualLab Fusion提供的工具可以实现光学系统的3D可视化,因此可以用于检查元件的位置,以及快速了
    发表于 03-30 09:25

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

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

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

    与动态效果呈现,能够搭建标准、可交互的可视化管控界面,为工业互联网监控运维场景提供一体前端可视化
    的头像 发表于 02-05 14:26 325次阅读
    基于图扑 <b class='flag-5'>HT</b> 引擎:数字孪生民航飞联网方案

    2D、2.5D3D封装技术的区别与应用解析

    半导体封装技术的发展始终遵循着摩尔定律的延伸与超越。当制程工艺逼近物理极限,先进封装技术成为延续芯片性能提升的关键路径。本文将从技术原理、典型结构和应用场景三个维度,系统剖析2D、2.5D3D封装
    的头像 发表于 01-15 07:40 1285次阅读
    <b class='flag-5'>2D</b>、2.5<b class='flag-5'>D</b>与<b class='flag-5'>3D</b>封装技术的区别与应用解析

    基于图扑 HT 数字孪生 3D 风电场可视化系统实现解析

    了数字孪生 3D 风电场可视化系统,实现了风电场全场景的远程监测、智能巡检与数字管理。本文从技术角度出发,结合系统功能模块,深入解析各核心功能的实现逻辑与技术路径。 系统以 HT f
    的头像 发表于 01-09 15:35 598次阅读
    基于图扑 <b class='flag-5'>HT</b> 数字孪生 <b class='flag-5'>3D</b> 风电场<b class='flag-5'>可视化</b>系统实现解析

    基于 HT 技术的园区元宇宙可视化管理平台

    设计、核心功能实现及技术亮点,展现如何通过HT技术实现园区“安环能”一体管控。 HT 技术作为平台开发的核心支撑,其基于 HTML5 标准的特性,为园区可视化管理提供了轻量、高效、跨
    的头像 发表于 11-07 14:54 600次阅读
    基于 <b class='flag-5'>HT</b> 技术的园区元宇宙<b class='flag-5'>可视化</b>管理平台

    数字孪生 3D 风电场:HT 海上风电智慧化解决方案

    渲染引擎 HT for Web,无需依赖第三方插件,构建起全场景覆盖的海上风电数字孪生可视化系统,实现从施工到运维的全生命周期智慧管理,为提升风电能源利用率、降低运维成本提供技术支撑。 HT
    的头像 发表于 09-25 17:46 1073次阅读
    数字孪生 <b class='flag-5'>3D</b> 风电场:<b class='flag-5'>HT</b> 海上风电智慧化解决方案

    玩转 KiCad 3D模型的使用

    时间都在与 2D 的焊盘、走线和丝印打交道。但一个完整的产品,终究是要走向物理世界的。元器件的高度、接插件的朝向、与外壳的配合,这些都是 2D 视图难以表达的。 幸运的是,KiCad 提供了强大的 3D
    的头像 发表于 09-16 19:21 1.2w次阅读
    玩转 KiCad <b class='flag-5'>3D</b>模型的使用

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

    图扑 HT 的农林牧数据可视化监控平台,以自主研发的 2D&3D 图形渲染引擎、HT for Web GIS 产品及数据孪生应用开发平台为核
    的头像 发表于 08-29 14:51 734次阅读
    基于 <b class='flag-5'>HT</b> 搭建的农林牧数据<b class='flag-5'>可视化</b><b class='flag-5'>监控</b>平台

    HT 可视化在工业产线看板智能应用中的技术实现

    看板赋予了强大的 2D/3D 可视化能力,实现了生产过程的实时监控、数据直观呈现与高效管理。本文将从技术角度,解析 HT 在工业产线看板中的
    的头像 发表于 07-25 15:10 724次阅读
    <b class='flag-5'>HT</b> <b class='flag-5'>可视化</b>在工业产线看板智能<b class='flag-5'>化</b>应用中的技术实现

    基于 HT3D 可视化智慧矿山开发实现

    图扑软件 Hightopo 作为基于 HTML5 标准的 2D/3D 图形渲染引擎,为 Web 端矿山可视化提供了轻量化、高性能的技术支撑。其核心价值在于通过自主研发的渲染技术,实现浏览器端无需插件
    的头像 发表于 07-18 15:49 855次阅读
    基于 <b class='flag-5'>HT</b> 的 <b class='flag-5'>3D</b> <b class='flag-5'>可视化</b>智慧矿山开发实现

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

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