医学四视图-004-四视图增加文字显示

简介: 医学四视图-004-四视图增加文字显示

image.png这篇文章中就要给我的四视图增加文字显示了,这个东西就是在我摄像机上面的,不会随着图像变化而变化,感觉这个是不是就是在3D中的那种HUD呢。


电梯


1 效果展示

2 vtkTextActor

3 实现代码

3.1 头文件

3.2 源文件实现

3.2.1 新建变量,赋值,设置属性

3.2.2 加入到渲染器中

☞ 源码

1 效果展示

如下图所示,在每个图的左上角和左下角有文字显示,左上角显示的病人的基本信息,左下角显示的是当前切面。

image.png

2 vtkTextActor


实现文字显示,主要将用到vtkTextActor,这里还是把参考链接附上

https://vtk.org/doc/nightly/html/classvtkTextActor.htmlimage.png

image.png

for (auto i=0;i<4;i++)
{
    textActor[i] = vtkSmartPointer<vtkTextActor>::New();
    textActor[i]->SetDisplayPosition(5, 5);
    textActor[i]->GetTextProperty()->SetFontSize(14);
    textActor[i]->GetTextProperty()->SetFontFamily(VTK_FONT_FILE);
    textActor[i]->GetTextProperty()->SetFontFile(QString("./Fonts/simhei.ttf").toUtf8());
}
textActor[0]->SetInput(QString::fromUtf8("矢状").toUtf8());
textActor[0]->GetTextProperty()->SetColor(0, 1, 0);
textActor[1]->SetInput(QString::fromUtf8("冠状").toUtf8());
textActor[1]->GetTextProperty()->SetColor(0, 0, 1);
textActor[2]->SetInput(QString::fromUtf8("轴向").toUtf8());
textActor[2]->GetTextProperty()->SetColor(1, 0, 0);
textActor[3]->SetInput(QString::fromUtf8("3D").toUtf8());
textActor[3]->GetTextProperty()->SetColor(1, 1, 0);
for (auto i=0;i<4;i++)
{
    peopleInforTextActor[i] = vtkSmartPointer<vtkTextActor>::New();
    peopleInforTextActor[i]->GetTextProperty()->SetFontSize(14);
    peopleInforTextActor[i]->GetTextProperty()->SetFontFamily(VTK_FONT_FILE);
    peopleInforTextActor[i]->GetTextProperty()->SetFontFile(QString("./Fonts/simhei.ttf").toUtf8());
    peopleInforTextActor[i]->SetInput(reader->GetPatientName());
}
peopleInforTextActor[0]->GetTextProperty()->SetColor(0, 1, 0);
peopleInforTextActor[0]->SetDisplayPosition(5,ui->widget_1->height()-20);
peopleInforTextActor[1]->GetTextProperty()->SetColor(0, 0, 1);
peopleInforTextActor[1]->SetDisplayPosition(5,ui->widget_2->height()-20);
peopleInforTextActor[2]->GetTextProperty()->SetColor(1, 0, 0);
peopleInforTextActor[2]->SetDisplayPosition(5,ui->widget_3->height()-20);
peopleInforTextActor[3]->GetTextProperty()->SetColor(1, 1, 0);
peopleInforTextActor[3]->SetDisplayPosition(5,ui->widget_4->height()-20);

image.png

目录
相关文章
|
开发者
Mac 系统偏好设置 安全性与隐私 没有“任何来源” 选项解决办法
Mac 系统偏好设置 安全性与隐私 没有“任何来源” 选项解决办法
6664 0
|
Java 开发工具 Docker
最全解决docker配置kibana报错 Kibana server is not ready yet
最全解决docker配置kibana报错 Kibana server is not ready yet
2844 0
|
存储 人工智能 数据库
Agno:18.7K Star!快速构建多模态智能体的轻量级框架,运行速度比LangGraph快5000倍!
Agno 是一个用于构建多模态智能体的轻量级框架,支持文本、图像、音频和视频等多种数据模态,能够快速创建智能体并实现高效协作。
5001 22
Agno:18.7K Star!快速构建多模态智能体的轻量级框架,运行速度比LangGraph快5000倍!
AiPy实战 :心情&收支日记本
展示了aipy是如何设计记录心情&收支的日记本的过程
|
缓存 JSON JavaScript
深入理解RESTful API设计原则与最佳实践
- REST是一种基于HTTP的Web服务设计风格,强调资源、统一接口和无状态性。 - 设计原则:统一接口(资源标识、操作、自描述消息、无状态),资源中心,标准方法,分层系统和缓存。 - 最佳实践:版本控制、JSON格式、有意义的状态码、HATEOAS和安全性(HTTPS,认证,授权)。 - 示例:使用Node.js和Express实现用户管理API,包括GET、POST、PUT和DELETE操作,展示资源操作的基本实现。 代码示例展示了如何创建、读取、更新和删除用户资源,以及处理HTTP状态码和错误情况。实际应用时,需进一步完善安全和性能优化。
2984 0
|
XML 安全 前端开发
Web 漏洞扫描之 AppScan | 学习笔记
快速学习 Web 漏洞扫描之 AppScan
1171 0
Web 漏洞扫描之 AppScan | 学习笔记
|
22天前
|
人工智能 JSON API
全网刷屏的 Jev 模型正式开放!一手实战测评 + 保姆级教程
全网爆火的 Jev 模型是什么?有什么用?怎么使用?怎么接入 AI 编程工具?效果真的好么?傻子可懂的 Jev 保姆级实战教程 + 项目实战测评来啦
9230 29
|
8天前
|
存储 人工智能 并行计算
大模型本地部署终端选型方法论:以 Qwen3.8-27B 为例的四档分层完整流程
本文提出一套大模型本地部署终端选型方法论:定约束、定档位、定框架、定参数四步决策法,配合入门、主力、质量、无损四档分层模型。以 Qwen3.8-27B 实测数据为例,逐环节解读显存、带宽、存储、散热、系统、预算等要素,给出面向不同预算的优选方案、决策自查清单与市场观察框架。文末前瞻 AI 笔记本的 CPU+GPU 与统一内存两条路线,论证四步决策法在新品类上的延续性。

热门文章

最新文章