首页/文章/ 详情

Trame:一个利用Python构建基于Web的开源前后处理框架

精品
作者优秀平台推荐
详细信息
文章亮点
作者优秀
优秀教师/意见领袖/博士学历/特邀专家
平台推荐
内容稀缺
6天前浏览271

之前有提到SU2搞了个SU2GUI(SU2图形用户界面:SU2GUI),其是一个基于Trame开发的前后处理工具,可以为SU2提供前处理设置及后处理查看。

本文简单描述Trame。

1 概述

Trame 是由Kitware推出的用于创建交互式可视化分析应用程序的开源平台(和Paraview同源)。Trame基于 Python,并利用 VTK、ParaView 和 Vega 等平台,可以在短短数分钟内创建基于 Web 的应用程序。

 

Trame的工作界面如下图所示。

2 Trame的优势

当前有较多的工具和框架可用于构建 Web 应用程序,但能够提供交互式 3D 可视化的非常少。Trame 通过利用 VTK 和/或 ParaView(以及集成其他工具如 Vega)能够实现3D交互式可视化。

  • 开源 - 能够自信地构建、部署和商业化应用程序,而不必担心专有系统常见的麻烦,并且可以确信 trame 不会消失——它不依赖于任何专有供应商的命运。
  • 全整合平台 - 与其他库或平台不同,trame 提供了构建可视化分析应用程序所需的几乎所有组件;如果缺少某些功能,也可以轻松添加。
  • 设计 - Trame 应用程序开箱即美。内置的 Material Design 小部件库能够创建美观的类似桌面的 GUI 组件。
  • 实际应用 - 使用 Trame,可以获得高性能的交互式应用程序,既可以在本地运行,也可以通过网络运行。

3 Trame 的工作方式

使用 Trame 构建应用程序非常简单:

  1. 安装 trame - 创建一个 Python 虚拟环境并运行 pip install trame。在本地运行后,可以使用 Docker 或作为桌面应用程序包进行部署。
  2. 业务逻辑 - 使用普通的 Python 编写处理函数,并定义需要与 UI 共享的 state
  3. 状态响应 - 定义响应状态变化的方法(如利用滑块更改采样参数)。
  4. 设计 UI - 通过定义应用程序布局并将 state 和 functions 直接连接到 UI 元素,构建美观且易于访问的用户界面。
  5. 随处运行 - 完成后,可以选择在本地作为桌面或客户端/服务器应用程序运行,或者将其部署到云端作为服务使用。

4 安装Trame

采用下面的命令进行安装。

  conda create -n tramelib python=3.13
conda activate tramelib
python -m pip install --upgrade pip
pip install trame  trame-vuetify trame-vtk vtk -i https://pypi.tuna.tsinghua.edu.cn/simple                 

安装完毕后可以写个测试程序app.py。

  # app.py
from trame.app import get_server
from trame.ui.vuetify import SinglePageLayout

server = get_server(client_type="vue2")
with SinglePageLayout(server) as layout:
    layout.title.set_text("Hello trame")

if __name__ == "__main__":
    server.start()

采用下面的方式测试运行:

  python app.py --port 12345

如下图所示。

此时会自动打开浏览器,里面包含了一些基本信息。如下图所示。


来源:CFD之道
ACTpythonParaView
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2025-04-24
最近编辑:6天前
CFD之道
博士 | 教师 探讨CFD职场生活,闲谈CFD里外
获赞 2611粉丝 11825文章 806课程 27
点赞
收藏
作者推荐
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈