vtk夹角计算控件

news2025/1/16 19:04:00

开发环境:

  1. Windows 11 家庭中文版
  2. Microsoft Visual Studio Community 2019
  3. VTK-9.3.0.rc0
  4. vtk-example
  5. 参考代码
  6. 目的:学习与总结

demo解决问题:renderWindow中创建一个夹角测量控件,通过三个点确定一个夹角

  1. 典型的控件类继承关系:vtkObject > vtkInteractorObsever > vtkAbstractWidget > vtkAngleWidget
  2. 交互对象设置:angleWidget->SetInteractor(renderWindowInteractor);
  3. 控件使能:renderWindowInteractor->Start();之前angleWidget->On();
  4. vtkRenderWindow 与vtkRenderWindowInteractor详解

在这里插入图片描述


prj name: AngleWidget

#include <vtkAngleWidget.h>
#include <vtkNamedColors.h>
#include <vtkNew.h>
#include <vtkRenderWindow.h>
#include <vtkRenderWindowInteractor.h>
#include <vtkRenderer.h>

int main(int, char*[])
{
  vtkNew<vtkNamedColors> colors;

  // A renderer and render window
  vtkNew<vtkRenderer> renderer;
  vtkNew<vtkRenderWindow> renderWindow;
  renderWindow->AddRenderer(renderer);
  renderWindow->SetWindowName("AngleWidget");

  // An interactor
  vtkNew<vtkRenderWindowInteractor> renderWindowInteractor;
  renderWindowInteractor->SetRenderWindow(renderWindow);

  vtkNew<vtkAngleWidget> angleWidget;
  angleWidget->SetInteractor(renderWindowInteractor);
  angleWidget->CreateDefaultRepresentation();

  // Render
  renderer->SetBackground(colors->GetColor3d("MidnightBlue").GetData());
  renderWindow->Render();
  renderWindowInteractor->Initialize();
  renderWindow->Render();
  angleWidget->On();
  renderWindowInteractor->Start();

  return EXIT_SUCCESS;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1187699.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

超声波清洗机怎么选?优质清洁力强超声波清洗机推荐

清洁物品对于大部分朋友来说都是件麻烦事情&#xff0c;能不动手就不动手。眼镜清洗也是一样的道理&#xff0c;随着科技发展&#xff0c;一些智能小家电的出现给我们的生活带来很大便利&#xff01;超声波清洗机不仅能够清洗眼镜&#xff0c;还可以清洗首饰、化妆刷等生活中的…

大小仅为人血细胞的1/10?揭秘纳米机器人的厉害之处

原创 | 文 BFT机器人 纳米机器人是一种比血细胞小10倍的微型机器人&#xff0c;有望彻底改变医疗保健行业。纳米技术与下一代软件平台和监督机器学习相结合&#xff0c;提供了广泛的强大的诊断、监测和治疗工具。 纳米机器人&#xff08;nanorobots&#xff09;旨在执行非常具…

golang工程中间件——redis常用结构及应用(set,zset)

Redis 命令中心 这些篇文章专门以应用为主&#xff0c;原理性的后续博主复习到的时候再详细阐述 set 集合&#xff0c;为了描述它的特征&#xff0c;我们可称呼为无序集合&#xff1b;集合的特征是唯一&#xff0c;集合中的元素是唯一存在 的&#xff1b; 存储结构 元素都…

易点易动固定资产管理系统:定制流程与用量控制的高效管理利器

固定资产管理对于企业来说至关重要&#xff0c;而如何提高固定资产管理的效率和精确度一直是企业管理者关注的焦点。易点易动固定资产管理系统以其自定义固定资产流程和用量控制功能&#xff0c;成为了提升固定资产管理效率的利器。本文将详细介绍易点易动固定资产管理系统的自…

【技术驿站】分布式基础与常见面试问题

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

虚幻5.3打包Windows失败

缺失UnrealGame二进制文件。 必须使用集成开发环境编译该UE项目。或者借助虚幻编译工具使用命令行命令进行编译 解决办法&#xff1a; 1.依次点击平台-项目启动程序 2.点击后面的按钮进行设置 3.稍等后&#xff0c;打包后的程序即可运行&#xff0c;之后就可以愉快的打包了

10个改变你Figma体验的高效插件!

Figma Ex 实用指数&#xff1a;⭐️⭐️⭐️⭐️⭐️ figma插件一直受到批评&#xff0c;很难找到。特别是一旦插件安装得太多&#xff0c;你就得去大海捞针&#xff0c;这是浪费时间。 这个工具可以使Figma的所有插件直接悬浮在右边的画布上&#xff0c;最重要的是显示每个插…

智慧工地管理系统源码 智慧大屏、手机APP、SaaS模式

一、智慧工地可以通过安全八要素来提升安全保障&#xff0c;具体措施包括&#xff1a; 1.安全管理制度&#xff1a;建立科学完善的安全管理制度&#xff0c;包括安全标准规范、安全生产手册等&#xff0c;明确各项安全管理职责和要求。 2.安全培训教育&#xff1a;对工地人…

DHorse(K8S的CICD平台)的实现原理

综述 首先&#xff0c;本篇文章所介绍的内容&#xff0c;已经有完整的实现&#xff0c;可以参考这里。 在微服务、DevOps和云平台流行的当下&#xff0c;使用一个高效的持续集成工具也是一个非常重要的事情。虽然市面上目前已经存在了比较成熟的自动化构建工具&#xff0c;比如…

汽车标定技术(六)--基于模型开发如何生成完整的A2L文件(2)

目录 1. 自定义ASAP2文件 2. asap2userlib.tlc需要修改的部分 3. 标定量观测量地址替换 3.1 由elf文件替换 3.2 由map文件替换 3.3 正则表达式&#xff08;含asap2post.m修改方法&#xff09; 4.小结 书接上文汽车标定技术(五)--基于模型开发如何生成完整的A2L文件(1)-C…

Python进阶该怎么学?有什么书推荐吗?

给大家再分享一下整理出来的Python进阶以及Python实践操作可以参考学习的堪称经典的书籍&#xff0c;同样是豆瓣高分榜&#xff01;内容有点长&#xff0c;一定要耐心看完。 Python进阶学习书籍 Effective Python&#xff1a;编写高质量Python代码的90个有效方法&#xff08;…

UVM 源码__report 机制浅析(一)

以uvm_error 为例浅析其背后的故事&#xff1a; uvm_error 是一个宏&#xff0c;在声明的时候只需要传入ID 和 msg&#xff0c;均为字符类型&#xff1b; 分析以上源码&#xff0c;发现起内部主要是调用了一个叫做uvm_report_enabled的函数进行判断&#xff0c;打印函数使用的…

零基础学Python有什么建议?如何入门编程?

零基础&#xff0c;如何入门编程&#xff1f; 首先要明确一点&#xff0c;编程之所以被成为超能力&#xff0c;在于其无所不能。学到深处&#xff0c;你自然可以跳脱限制&#xff0c;随心所欲&#xff1b;入门之时&#xff0c;你却处处碰壁&#xff0c;像蹒跚学步的孩童。其实…

Sublime Text Dev v4.0(HTML代码编辑)

Sublime Text是一款代码编辑器&#xff0c;也是一个先进的文本编辑器&#xff0c;支持HTML和散文。该软件由程序员Jon Skinner于2008年1月份开发&#xff0c;最初被设计为一个具有丰富扩展功能的Vim。 Sublime Text具有漂亮的用户界面和强大的功能&#xff0c;例如代码缩略图、…

人工智能进入强监管时代

全球AI产业正进入“强监管”时代&#xff0c;对人工智能安全威胁的监管正在成为各国政府普遍关注的重要议题。 以ChatGPT为代表的基于LLM(大语言模型)的生成式人工智能应用正风靡全球&#xff0c;各行各业都在争先恐后将其集成到前端和后端的各种系统中&#xff0c;与此同时生…

Docker - 概述

Docker概述 Docker概述Docker安装Docker命令 镜像命令容器命令操作命令 … Docker镜像容器数据卷DockerFileDocker网络管理IDEA整合DockerDocker ComposeDocker Swarm 简化版的K8s Docker为什么出现&#xff1f; 传统的项目部署&#xff0c;环境配置是十分麻烦&#xff0c;第…

【理解链表指针赋值】链表中cur->next = cur->next->next->next与cur =cur->next->next的区别

最近在做链表的题目的时候&#xff0c;对于所定义的cur链表指针产生了一些疑惑&#xff0c;查阅资料后整理一下我的理解&#xff1a; /*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode(int x) : val(x), next(n…

Linux 设置静态IP(Ubuntu 20.04/18.04)

以Ubuntu20.04示例 第一步&#xff1a;查看当前网络信息 ifconfig 本机网卡名为&#xff1a;ens32&#xff0c;IP地址为&#xff1a;192.168.15.133&#xff0c;子网掩码为&#xff1a;255.255.255.0 第二步&#xff1a;查看当前网关信息 route -n 网关地址为&#xff1a;1…

麒麟KYLINOS命令行设置系统静音

原文链接&#xff1a;麒麟KYLINOS命令行设置系统静音 hello&#xff0c;大家好啊&#xff0c;今天给大家带来一篇在麒麟KYLINOS上使用命令行调节系统静音的方法&#xff0c;有时候需要制作模板&#xff0c;便可以采用此方法&#xff0c;话不多说&#xff0c;一起来看看吧。 1、…

aardio 模式匹配函数

废话不多说 直接开干&#xff01; 知识点 string.find 使用模式匹配查找字符串并返回起始位置(i),结束位置(j); 第三个参数pos指定搜索开始的位置&#xff0c;这个参数可以省略(使用默认值1); pos如果为负数&#xff0c;则从右侧倒数计数(-1表示字符串最后一个字符)。 函数返回…