VTK
文章平均质量分 66
张大饼的最爱
这个作者很懒,什么都没留下…
展开
-
编译VTK -example 最短的 CMakeList.txt 文件
最简单的CMakeList 文件内容原创 2022-09-01 11:09:22 · 526 阅读 · 2 评论 -
VTK入门(配置+常见问题)
前言环境: win7 64 + visual studio 2012 + VTK 7.0.0主要参考网址: 在Windows下用vs构建VTK 项目步骤:Step 1 - Download VTK (zip or tar.gz格式)Step 2 - Download CMakeStep 3 - Create a build原创 2016-07-18 17:38:17 · 18391 阅读 · 9 评论 -
VTK中的布尔运算——vtkBooleanOperationPolyDataFilter
【类简介】该类主要是计算两个输入面定义的容器的并、交、差运算的边缘,需要输入面是流形的,不然结果不可预料。第一个输出是结果面第二个输出是两个输入面的交线具体内容可参考: "Boolean Operations on Surfaces in VTK Without External Libraries" by Cory Quammen, Chris Weigle C., Russ T原创 2016-10-08 17:40:08 · 9976 阅读 · 56 评论 -
QT+VTK+win7 64位
一定要记住,如果是64位的话,所有的IDE啊库啊都要选择64位的。在64位平台下编译 QT5 链接:http://www.holoborodko.com/pavel/2011/02/01/how-to-compile-qt-4-7-with-visual-studio-2010/原创 2016-11-08 09:28:30 · 743 阅读 · 0 评论 -
vtkPolygonalSurfaceContourLineInterpolator 多边形曲面上的多边形绘制器
【类简介】在多边形曲面上实现轮廓点的交互绘制。该类主要是实现在多边形曲面上绘制、移动轮廓点。该类插入的节点主要是用多边形数据来计算图像的测地距离,也就是说两点之间连线的是沿着几何表面的最短路径,使用Dijkstra算法。该类的使用需要结合vtkPolygonalSurfacePointPlacer类,此外还需要一个 cell pick,单元拾取器。输入的多边形曲面需要计算法向量。原创 2016-11-07 11:04:04 · 2993 阅读 · 4 评论 -
vtkPolyData 转 vtkAlgorithmOutput
vtkSmartPointer<vtkPolyData> input1;···vtkSmartPointer<vtkCleanPolyData> clean1 = vtkSmartPointer<vtkCleanPolyData>::New();#if VTK_MAJOR_VERSION <= 5 clean1->SetInputCo...原创 2016-10-14 17:12:33 · 3834 阅读 · 5 评论 -
求两个多边形数据 vtkPolyData 的相交线
vtkIntersectionPolyDataFilter【简介】该滤波器计算两个多边形数据 vtkPolyData 的交集。其第一个输出是 交集线集( a set of lines );第二个和第三个输出分别为第一和第二个输入 vtkPolyData.如果需要,后两个输出可以被相交线分割。【示例】#include #include #include #inclu原创 2016-09-13 11:39:44 · 5835 阅读 · 5 评论 -
VTK-Wight 之 vtkContourWidget简介
VTK中Wights功能的实现需要两个部分的协作: 事件处理,继承于 vtkAbstractWight 类 描述几何特征,继承于 vtkWightRespresentationvtkContourWidget 简介用一个点集创建一个轮廓。该类常常用于选取一个点集,绘制点之间的连线。最后一个点的选取决定了,轮廓是闭合的还是是开放的。vtkContourRepresen原创 2016-09-07 11:30:03 · 3107 阅读 · 4 评论 -
vtkAlgorithm 函数分析
vtkAlgorithm NAME vtkAlgorithm - 在VTK中所有源代码、滤波器、槽的父类。 (Superclass for all sources, filters, and sinks in VTK.)Sources 通过读取(Reader 对象)或者创建数据对象(程序源对象)两种方式来产生数据;Filters 处理输入数据并产生新的数据对象;原创 2016-08-26 16:13:19 · 2440 阅读 · 0 评论 -
Alpha通道及合成运算
前言在看《VTK图形图像开发进阶》的时候,第七章中提到了Alpha合成技术,不明白是什么,所以。。。。Alpha通道是一个8位的灰度通道,该通道用256级灰度来记录图像中的透明度信息,定义透明、不透明和半透明区域,其中黑表示全透明,白表示不透明,灰表示半透明。彩色深度标准通常有以下几种:8位色,每个像素所能显示的彩色数为2的8次方,即转载 2016-08-03 11:06:37 · 5103 阅读 · 2 评论 -
vtkMergePoints 插入点时去除重复点
vtkMergePoints 该类主要是用于合并重合的点。原创 2016-12-30 17:46:02 · 1994 阅读 · 0 评论 -
vtk学习助力软件VTKDesigner2
软件下载:链接:http://pan.baidu.com/s/1hrNGtSw 密码:fpbt使用手册:链接:http://pan.baidu.com/s/1o7VB8oy 密码:gd8o、查了很多资料有提到这个软件,开始的时候我以为只有用源代码编译才可以使用。结果不知道是环境问题还是配置问题,一直编译不成功源代码。在我以为无法使用这个软件的时候,无意中找了他真原创 2016-11-24 11:15:11 · 1222 阅读 · 1 评论 -
vtkDelaunay2D - 三角剖分面
【功能】输入点的二维 Delaunay 三角化该类是一个过滤器,输入: vtkPointSet 和他的子类输出: 多边形数据集。 一般来说,输出是一个三角化的面; 但是如果指定一个非0的埃尔法值 alpha 距离值,只有在该alpha半径内的所有的三角形、边、顶点才会被输出。原创 2017-01-09 17:13:06 · 3755 阅读 · 0 评论 -
vtk ScalerType 值的解析
#define VTK_VOID 0#define VTK_BIT 1#define VTK_CHAR 2#define VTK_SIGNED_CHAR 15#define VTK_UNSIGNED_CHAR 3#define VTK_SHORT 4#define VTK_UNSIGNED...原创 2019-05-06 15:41:27 · 421 阅读 · 0 评论 -
利用探针类 vtkProbeFilter 实现“切面的组织镜面”
原创 2018-11-12 15:18:34 · 1279 阅读 · 4 评论 -
VTK 的探针类 vtkProbeFilter
这个类是一个计算指定点位置的属性(标量、向量等)。需要两个输入 : 数据源、指定的点集。指定点的属性根据数据源的值通过插值计算得到。例如,我们可以计算一个体的某一个面的值。#include <vtkVersion.h>#include <vtkProperty.h>#include <vtkDataSetMapper.h>#include...原创 2018-11-12 14:33:53 · 2097 阅读 · 0 评论 -
将两个 vtkpolydata 数据合并
因为一般 VTK 自己的形状都是 polydata的,我们有时候需要将两个或者多个数据进行合并显示。直接说,使用的类是 vtkAppendPolyData,输入多个数据,直接 update() 就可以得到想要的结果。之后可以加一个 vtkCleanPolyData 的对象进行基本的数据处理 - 去掉重复的点。示例 创建了一个 圆锥和圆柱(圆管)。 //Create a cone v...原创 2018-11-09 10:06:42 · 6610 阅读 · 3 评论 -
VTK - vtkCamera 参数设置
VTK 可以实现旋转的方式有很多。 本文主要讲 vtkCamera, 可以想象这个就是你的眼睛, 焦点位置为图片, ViewUp 是为Camera的方向。下图明确的表示了参数对于Camera和焦点的影响因子。vtkCamera除了提供设置与相机投影因素相关的方法之外,还提供了大量的控制相机运动的方法,如:vtkCamera::Dolly(),vtkCamera::Roll(),vtk...原创 2018-07-26 10:17:45 · 4486 阅读 · 0 评论 -
vtk 鼠标操作
【窗宽窗位】 vtk 是可以通过鼠标的操作调节窗宽窗位的。鼠标左键- 水平移动调节窗宽 - 垂直移动调节窗位原创 2017-10-12 18:18:54 · 2254 阅读 · 0 评论 -
vtkFeatureEdges提取多边形数据“指定”的轮廓
该类的主要目的就是为了从多边形数据中提取边界、非流形边、锐利边缘/轮廓。该类是一个过滤器,为输入的多边形数据提取特殊类型/指定的边缘,边界类型可以是① 分界线(一个多边形的)或者是一条边;② 非流形的 (被三个或者更多的多边形使用);③ 特征边(被两个三角形使用的边界,且二面角大于特征角);④ 流形边(只是被两个多边形使用的边)提取的边界可能是任意连接的。原创 2017-01-18 15:55:04 · 2529 阅读 · 0 评论 -
vtkPolyDataConnectivityFilter连通区域分析
提取数据集中连通的多边形数据。该类是一个滤波器,提取cell(区域) - 拥有公共点或者满足某个阈值该类在提取连通区域时候有如下6种模式: 1)提取数据集中的最大(最多点)连接区域:SetExtractionModeToLargestRegion(); 2)提取指定区域号:SetExtractionModeToSpecifiedRegions();原创 2017-01-12 14:43:01 · 4319 阅读 · 0 评论 -
VTK拾取相关的类
1、vtkAbstractPicker:define API for picking subclasses 该类是一个抽象基类,为它的具体的子类定义了最基本的API,最基本的功能是返回拾取位置的x-y-z global坐标系统的坐标值(pick自身是在屏幕坐标中进行定义的)。 类定义了一个纯虚函数Pick(),它的作用是给定一个选择点(屏幕坐标系统里的,以像素为单位)以及一个R转载 2016-08-12 10:19:29 · 2203 阅读 · 3 评论 -
vtkContourWidget
简介:vtkContourWidget: 主要用来表示一个点集,点集之间有连线【相邻点,而非任意点】。轮廓可以是闭合的也可以是没有闭合的,这个取决于最后一个点的位置。vtkContourRespresentation: 负责画点/线、所有点的位置、连线方式、轮廓区域的操作【主要通过 vtkPointPlacer 和 vtkContourLineInterpolator 这两个类在辅助实现该原创 2016-08-10 17:52:39 · 2934 阅读 · 0 评论 -
VTK 三维轮廓等值面的提取
目的: 学习VTK可视化案例一/************************************************************************//* 可视化基础算法-三维轮廓面(等值面)提取 *//******原创 2016-07-21 16:16:01 · 4074 阅读 · 1 评论 -
vtkBoxWidget.cxx 源代码学习
看源代码能学到很多东西。。。。。/*=========================================================================Program: Visualization ToolkitModule: vtkBoxWidget.cxxCopyright (c) Ken Martin, Will Schroeder,原创 2016-08-16 10:58:00 · 1609 阅读 · 1 评论 -
PreMultiply 使用
简单来讲就是一个4*4的线性变换矩阵。初始化时,这个矩阵为恒等变换(identity transformation)。输入数据: 可以是其他的 transform.通过这个对象,可以实现:平移、旋转、连接(Translate, Rotate, and Concatenate)。模式: PreMultiply:添加的平移、连接等变换在当前设置的矩阵之前实现 P原创 2016-08-16 09:56:25 · 1548 阅读 · 0 评论 -
VTK lookuptable创建颜色映射表
新建对象的方式有两种一种是智能指针,一种就是new+delete本文也不完全是自己原创的东西,也是参考别人的BLOG。首先,定义一个立方体,点+ 面;而后,为立方体的每一个点设置属性值; // 设定每个顶点的标量值cube->GetPointData()->SetScalars(scalars);在建立颜色表的同时需要连接 属性值/标量值~~~原创 2016-07-20 17:55:46 · 8305 阅读 · 0 评论 -
VTK 简单操作代码演示
参考网址第二小节的内容#include VTK_MODULE_INIT(vtkRenderingOpenGL2);VTK_MODULE_INIT(vtkInteractionStyle);#include #include #include #include #include int main(int, char *[]){ // 点到直线的距离 double翻译 2016-07-20 15:31:42 · 1671 阅读 · 0 评论 -
VTK 简单绘制
VTK的可视化技术是基于管线流(data pipeline)的设计模式(数据传递模式):数据源(Source)-->过滤器(Filters)-->映射(Mappers)-->Props对象(Actor/Volume) --> 绘制对象(Renderer)-->绘制窗口(RenderWindow)渲染窗口(RenderWindow): 基类为vtkRenderWindow,管理显示设备上的窗原创 2016-07-20 11:25:39 · 2917 阅读 · 0 评论 -
VTK 读取JPEG图像 灰度化 彩色映射
VTK6.1.0 闲来无事,敲段小代码#include "stdafx.h"#include VTK_MODULE_INIT(vtkRenderingOpenGL);VTK_MODULE_INIT(vtkInteractionStyle);VTK_MODULE_INIT(vtkRenderingFreeType);#include #inc原创 2016-07-29 10:47:16 · 1002 阅读 · 0 评论 -
VTK vtkImageBlend 程序崩溃了
前言因为某些原因必须使用VTK 6.1.0, 不知道是不是里面的BUG,在学习图像融合这块的时候,程序崩溃了。正文(请忽略我的命名什么的不规范)① 读入一个图片vtkSmartPointer jimg = vtkSmartPointer::New(); jimg->SetFileName("E:\\workspace\\001.jpg"); jimg->Update原创 2016-07-28 17:36:04 · 1356 阅读 · 0 评论 -
Marching Cubes
MarchingCubes建模是三维可视化库VTK建模算法之一。该建模方法采用空间分解的方法,对空间体元进行不断的切割处理,最后得到一个由规则体构成的非规则复杂物体的近似。这种方法包括有物体的内在信息,从而实现体数据的表达。MC方法求等值面的算法流程:① 将三维离散规则数据场分层读入内存;② 扫描两层数据,逐个构造体元,每个体元中的8个角点取自相邻的两层;③ 将体元每个角点原创 2016-07-26 16:23:02 · 3573 阅读 · 0 评论 -
VTK .gml文件的读取
参考网址CMakeLists.txtcmake_minimum_required(VERSION 2.8) PROJECT(XGMLReader) find_package(VTK REQUIRED)include(${VTK_USE_FILE}) add_executable(XGMLReader MACOSX_BUNDLE XGMLReader)翻译 2016-07-21 17:17:38 · 1051 阅读 · 0 评论 -
常用的VTK工具/控件(VTK Widget)
Family of VTK Widgets3D Slider widget 2D Slider widget Box widget Line widgetImplicit plane widget原创 2016-08-04 17:03:02 · 5244 阅读 · 1 评论 -
VTK-Wight 之vtkIncrementalOctreePointLocator简介
【定义】这个增量式八叉树支持点的定位和插入。【简介】这个是翻译的,可能确实是翻译的不好,见谅不同于传统的有固定空间解析度的基于分支的搜索框架(如 vtkPointLocator ), 一个八叉树原理将一个3D数据应用为每一层为树状划分。他可以确定已知数据的空间解析度,进而加速点的定位和插入,尤其是处理在自适应网格中不平衡分布的点、不常见的数据集。相较于一个稳定的点定位器通过固定的点集建翻译 2016-09-12 16:08:33 · 855 阅读 · 0 评论 -
vtkFeatureEdges 类简介
vtkFeatureEdges【类说明】提取多边形数据(polygonal data)的边界,非流行、锋利的边缘。该类是针对输入数据为多边形几何数据的滤波器,提取特定类型的边缘数据。这些边缘可以是:一个多边形的边界 boundary 或者一个 line cell;非流形数据 - 三个或者更多的多边形数据;特征边(两个三角形的边缘, 三角形的二面角大于特征角)流形边(翻译 2016-08-31 17:54:53 · 1776 阅读 · 0 评论 -
VTK Camera简介
参考网址介绍:vtkCamera 是三维渲染的虚拟相机。它提供视角的位置、角度、方向, 焦点。 vtkCamera投影示意图与相机投影相关的因素主要有:l 相机位置:即相机所在的位置,用方法vtkCamera::SetPosition()设置。l 相机焦点:用方法vtkCamera::SetFocalPoint()设置,默认的焦点转载 2016-08-10 09:40:35 · 2511 阅读 · 0 评论 -
如何判断一个vtkActor的类型
在VTK管线流程中,有个重要的角色就是vtkActor,本文旨在学习示例代码,学习使用方法。#include #include #include #include #include #include #include #include #include #include int main(int, char *[]){ // Sphere vtkSmart原创 2016-08-31 14:12:24 · 1377 阅读 · 0 评论 -
VTK 求多边形和直线的交点
我只想说IntersectWithLine() 这个函数好强大参考/************************************************************************//* 线和面的交点 *//**************原创 2016-08-09 14:35:15 · 3887 阅读 · 0 评论 -
VTK中oberver 和 command 的信息机制详解
前言看了东灵出版的书的第八章,有点迷糊,这里简单做些笔记。正文观察者/命令模式(Observer / Command)目的: 实现VTK的交互功能定义: 一个vtkObject (包括它的子类) 可以拥有多个 Observer。 就是观察者在对象的状态发生改变时,调用相应的函数或者说是执行预定的动作。实现事件回调函数示例//第一步,定义原创 2016-08-04 16:48:29 · 3339 阅读 · 0 评论