医学四视图-004-四视图增加文字显示
这篇文章中就要给我的四视图增加文字显示了,这个东西就是在我摄像机上面的,不会随着图像变化而变化,感觉这个是不是就是在3D中的那种HUD呢。
电梯
- 1 效果展示
- 2 vtkTextActor
- 3 实现代码
- 3.1 头文件
- 3.2 源文件实现
- 3.2.1 新建变量,赋值,设置属性
- 3.2.2 加入到渲染器中
- ☞ 源码
1 效果展示
如下图所示,在每个图的左上角和左下角有文字显示,左上角显示的病人的基本信息,左下角显示的是当前切面。
2 vtkTextActor
实现文字显示,主要将用到vtkTextActor,这里还是把参考链接附上
https://vtk.org/doc/nightly/html/classvtkTextActor.html
回家截图
3 实现代码
3.1 头文件
既然用到了vtkTextActor那就就要包含他的头文件了,后面需要设置颜色啥的,所以需要我们顺便把属性头文件也包含了。如下
#include "vtkTextActor.h"
#include "vtkTextProperty.h"
新建变量
vtkSmartPointer<vtkTextActor> textActor[4];
vtkSmartPointer<vtkTextActor> peopleInforTextActor[4];
3.2 源文件实现
3.2.1 新建变量,赋值,设置属性
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);
3.2.2 加入到渲染器中
我这里有两种,如下:
riw[i]->GetRenderer()->AddActor(textActor[i]);
riw[i]->GetRenderer()->AddActor(peopleInforTextActor[i]);
ren->AddActor(textActor[3]);
ren->AddActor(peopleInforTextActor[3]);
详细内容见源码
☞ 源码
源码链接:https://github.com/DreamLife-Jianwei/Qt-Vtk
使用方法:☟☟☟
医学四视图-004-四视图增加文字显示相关推荐
- mysql实验四数据库查询和视图_数据库-第四次实验报告-视图-t-sql语句
实验十报告 创建视图 实验目的 1.掌握创建视图的SQL语句的用法. 2.掌握使用企业管管理器创建视图的方法. 3.掌握使用创建视图向导创建视图的方法. 4.掌握查看视图的系统存储过程的用法. 5.掌 ...
- MVG学习笔记(5) --四视图几何和n视图重建
四视图几何和n视图重建 可以使用基于张量的方法再进行一步,并定义四个视图中可见的四焦点张量相关实体. 然而这种方法很少使用,因为计算符合其内部约束的四焦点张量的相对困难. 然而,它确实提供了基 ...
- mysql实验四数据库查询和视图_实验四 数据库查询和视图.doc
实验四 数据库查询和视图 测试过程:(实验中出现的问题.错误.解决方法) 问题一:新建查询,调试过程中出现提示无效行或列 问题二:新建查询,调试过程中出现第几行出现错误 解决办法:检查新建的查询,标点 ...
- Mysql第四天笔记04——视图和索引
目录 1.为什么要使用视图 2.视图分类 3.创建视图 4.修改视图 5.视图上执行DML操作 6.索引 1.为什么要使用视图 限制其它用户对数据库表的访问,因为视图可以有选择性的显示数据库表的一部分 ...
- 建立视图实发工资mysql_MYSQL人事工资管理系统--设计视图(四)
什么是视图? 视图(view)是一种虚拟存在的表,对于使用视图的用户来说基本上是透明的.视图并不在数据库中实际存在,行和列数据来自定义视图的查询中使用的表,并且是在使用视图时动态生成的. 视图相对普通 ...
- 数据库 实验四 创建视图,使用视图,修改视图
1.创建视图 --***① 将Student Course 和sc表中学生的学号,姓名,课程号,课程名,成绩定义为视图V_S_C_G *** CREATE VIEW V_S_C_G ASSELECT ...
- 《Spring In Action(第4版)》阅读总结(四)渲染Web视图
渲染Web视图 将模型数据渲染为HTML 使用JSP视图 通过tiles定义视图布局 使用Thymealeaf视图 理解视图渲染 控制器只负责处理请求并返回模型数据和视图名 将控制器中请求处理逻辑与视 ...
- SQL语法精讲(包括建库、建表、建视图、查询、增加、删除、修改)
SQL语法精讲(包括建库.建表.建视图.查询.增加.删除.修改) SQL分类: DDL-数据定义语言(CREATE,ALTER,DROP,DECLARE) DML-数据操纵语言(SELECT,DELE ...
- mysql创建多表视图sql语句_SQL语法(包括建库、建表、建视图、查询、增加、删除、修改)...
SQL语法(包括建库.建表.建视图.查询.增加.删除.修改) SQL分类: DDL-数据定义语言(CREATE,ALTER,DROP,DECLARE) DML-数据操纵语言(SELECT,DELETE ...
最新文章
- 使用思维导图编写测试用例
- 站立潮头、无问西东 | 第二届“大数据在清华”高峰论坛成功举办
- cass地籍参数设置快捷命令_南方cass详解+视频教程+插件汇总,小白快速上手!限时领取...
- 【学术相关】为什么很多国内学者的AI的论文复现不了?
- 题目552-小数阶乘-nyoj20140811
- centos安装后iptables基本设置
- java项目高新_java高新技术
- 【网易云课堂---轻松读书:番茄工作法】
- 无法删除文件,无法读源文件或磁盘:U盘文件夹乱码无法删除的原因及解决方案...
- 软件测试女生可以学习么?现在还能入行么?
- 错误, Failed to introspect annotated methods on class org.springframework.boot.web.servlet.support.Spr
- 【前端学习-函数】js基础学习笔记
- kettle 用cmd bat来运行ktr和kjb
- Server2012 下 部署ADFS IFD
- 《光剑拾字编》甲子篇: 天干地支
- ElasticSearch整合SpringBoot的API操作
- Android 9 wifi PNO 扫描
- Codeforces Round #768 (Div. 1)(A-C)
- 微信小程序animation
- Python中的(1,)
热门文章
- 针对当当网畅销书籍榜单前500的研究分析
- ThinkPad 开机总提示找到新硬件 PCI Device
- node安装(超级详细版)适合小白
- [浏览器_1]-Windows 安装微软 Edge 浏览器以及配置 CSDN 浏览器助手
- selenium2library 倒入失败 解决方法
- 不好意思,我不想再听正确的废话了
- 计算机考试一级准考证
- Found GPU0 TITAN V which requires CUDA_VERSION = 9000 for optimal performance and fast startup time
- 【解决】关于 new Date 函数在苹果手机不兼容导致白屏的解决方案
- php数组指定位置后加,PHP 数组合并、增加元素、插入指定位置