vtk.js
文章平均质量分 58
小江江12
专心专研,努力奋战。
展开
-
vtkjs介绍
vtkjs介绍翻译 2022-04-20 11:02:47 · 4219 阅读 · 0 评论 -
vtkjs设置切片固定不动
sence['widgetManager' + type] = vtkWidgetManager.newInstance();//工具管理器sence['widgetManager' + type].setRenderer(sence['renderer' + type]);//设置渲染sence['widgetManager' + type].addWidget( paintWidget,//绘画工具 ViewTypes.SLICE);//增加绘画工具,设置后方不可动sence[.原创 2022-01-17 10:59:38 · 342 阅读 · 0 评论 -
关于vtkjs中x,r,g,b的解析
vtkjs中关于映射颜色值的解析原创 2022-04-13 10:29:16 · 632 阅读 · 0 评论 -
itk.js读取.nii.gz文件,vtk.js进行渲染
我们只需要用到itk中的readImageArrayBuffer从这个api我们可以看出,我们需要的是一个ArrayBuffer的数据,那么,我们通过vtk.js中的vtkHttpDataAccessHelper的方法把数据转换成ArrayBuffer后进行处理,即下面的import vtkHttpDataAccessHelper from "vtk.js/Sources/IO/Core/DataAccessHelper/HttpDataAccessHelper";const {原创 2022-05-11 11:43:48 · 3089 阅读 · 33 评论 -
vtkjs修改背景颜色setBackground
vtkjs修改背景颜色setBackground原创 2022-01-12 13:57:51 · 1154 阅读 · 2 评论 -
vtk.js关于vtkCamera
我们学习vtk.js的时候必然要了解到相机相关的知识,因为它是基于相机的原理去渲染相关的;在vtk中我们会用到import vtkCamera from 'vtk.js/Sources/Rendering/Core/Camera'const camera = vtkCamera.newInstance();我们打印一下camera设置值有如下信息我们打印一下相应的数据后得到从打印中我们看到,焦点原始为(0,0,0);向上方向(0,1,0)视角默认为30度..原创 2022-05-12 18:07:04 · 737 阅读 · 0 评论 -
vtk.js实现vtp文件上传
正在上传…重新上传取消原创 2022-05-16 12:19:28 · 653 阅读 · 0 评论 -
vtkjs中AR的实现过程分析
vtkjs中AR原创 2022-01-18 17:41:29 · 636 阅读 · 0 评论 -
vtk.js切片上色后取消颜色
从vtk.js给图形上色文章中,我们已经知道怎么给切片上颜色,但有时后,我们制作一个按钮来决定切片是否上颜色勾选之后就是我们从给图形上色中得到的颜色切片取消切片颜色时,我们只需要设置sence['imageActor' + typeMap[type]].getProperty().setRGBTransferFunction(0, null);sence['imageActor' + typeMap[type]].getProperty().setScalarOpacity(0, 0);..原创 2022-04-29 14:07:15 · 628 阅读 · 0 评论 -
itk.js读取dicom文件,vtk.js进行渲染
itk.js读取dicom文件时,我们只需要用到readImageDICOMFileSeries即可其余的均为vtk.js中调用let files_paths = [];//path为dicom文件files_paths.push(path);const fetchFiles = files_paths.map((file_path, index) => { const path = file_path; return axios.get(path, { resp原创 2022-05-07 17:13:15 · 2181 阅读 · 0 评论 -
vtkjs锥体在边数和描绘的表现设置
import vtkActor from 'vtk.js/Sources/Rendering/Core/Actor';const actor = vtkActor.newInstance();//行为角色通过vtkActor实体的setRepresentation进行描绘的表现其中,0为点1为线2为面通过锥体import vtkConeSource from 'vtk.js/Sources/Filters/Sources/ConeSource'...原创 2022-01-19 12:27:22 · 361 阅读 · 0 评论 -
vtk.js切片后移正
从之前文章vtkjs渲染一个切片体渲染的过程中我们得到了一个I切片,但此时它是这样的故我们想初始的时候它就是正的,这是我们在imageActorI.setMapper(imageMapperI);之后可以设置const ijk = [0, 0, 0];const position = [0, 0, 0];const focalPoint = [0, 0, 0];data.indexToWorld(ijk, focalPoint);ijk[sliceMode] = 1;data.in原创 2022-04-28 12:05:14 · 318 阅读 · 0 评论 -
vtkjs窗口大小修改
vtkjs窗口大小修改原创 2022-01-17 10:44:46 · 652 阅读 · 0 评论 -
vtkjs各例子图
...原创 2022-02-15 11:10:14 · 746 阅读 · 0 评论 -
vtkjs渲染一个切片体渲染的过程
vtkjs数据流的一般情况是source——filter——mapper——actor——render——renderwindow资源——筛选资源(数据处理,一个或多个输入,但只有一个输出) ——映射筛选后的资源——可视化映射筛选后的资源——render——renderwindow首先引入对应apiimport vtkFullScreenRenderWindow from 'vtk.js/Sources/Rendering/Misc/FullScreenRenderWindow';原创 2022-04-24 11:55:48 · 1402 阅读 · 0 评论 -
vtk.js给图形上色
我们可以通过vtkColorTransferFunction设置不同灰度值进行着色import vtkColorTransferFunction from 'vtk.js/Sources/Rendering/Core/ColorTransferFunction';const ctfun = vtkColorTransferFunction.newInstance();ctfun.addRGBPoint(0, 1.0, 0, 0);//立方体的颜色,红色通过vtkPiecewiseF原创 2022-04-25 11:59:06 · 1074 阅读 · 0 评论 -
关于interactorStyle
关于interactorStyle原创 2022-06-01 18:01:48 · 351 阅读 · 0 评论 -
vtk.js鼠标左键滑动改变窗位和窗宽
鼠标动态修改窗位wl,窗宽ww原创 2022-06-20 15:36:01 · 615 阅读 · 0 评论 -
vtk.js关于vtkLight
vtk.js关于vtkLight原创 2022-06-02 14:06:29 · 286 阅读 · 0 评论 -
关于vtk.js和@kitware/vtk.js的旧式小部件
关于vtk.js和@kitware/vtk.js的旧式小部件原创 2022-06-07 15:21:46 · 433 阅读 · 0 评论 -
关于创建vue+vtk.js
关于创建vue+vtk.js原创 2022-06-07 09:37:30 · 770 阅读 · 6 评论 -
actor颜色
const actor = vtkActor.newInstance();通过actor.getProperty().setColor(0,0,0)可以设置为黑色,这里的颜色为0-1的一个255换算值;比如我们设置(0.5,0.5,1)得到需要注意的是,当被绘制的几何体带有属性数据时,通过这种方法设置的颜色将无效。vtk.js将要使用属性数据和默认的颜色查找表绘制颜色,也可以用saclarVisibilityOff()方法忽略属性数据。...原创 2022-05-18 17:10:44 · 561 阅读 · 0 评论 -
vtk.js图形模型的核心类组成
vtk.js图形模型的核心类组成原创 2022-05-18 12:19:29 · 496 阅读 · 0 评论 -
启用官方vtk.js
官方vtk.js原创 2022-06-15 12:09:00 · 709 阅读 · 2 评论 -
vtk.js中宽窗宽位的范围值
为了直观的看到切片的效果我们往往需要进行宽窗宽位的调整,但我们开始初始的宽窗宽位往往想设置到中间值,这是我们是需要知道它的范围值好去处理的。中有一个getScalars()获取标量值,而它下面又有一个getRange()视觉范围值,打印后得到[0, 3926]这个即是宽窗宽位的范围值了。我们可以看到getPointData()方法获取数据点,因为我们的图像的渲染就是各个点之间的像素对比度和亮度所确定的,它下面。经过测试,发现,宽窗范围值在-3926/2时达到峰值,全白;宽位在0时达到峰值,全黑。原创 2023-03-14 17:19:25 · 230 阅读 · 0 评论 -
vtk.js中获取切片的总数量
有时候我们需要获取切片的总数量,因为我们一开始展示时可能会显示中间张,也可能我们刚开始只想展示第一张,还有可能我们的业务需求需要动态的展示某一张切片,这时我们就需要知道它的总切片数。这六个值分别代表了,I,J,K中的最小,最大值,即[ I最小值,I最大值,J最小值,J最大值,K最小值,K最大值 ];其实这个在我们扫描的时候已经确定了切片数量的,所以我们可以想到,应该是从数据总获取到对应的总切片数。其中有一个getExtent()的方法,我们打印得到。原创 2023-03-14 16:37:27 · 252 阅读 · 1 评论 -
vtkjs中Apply opacity to slices
Apply opacity to slices原创 2022-12-01 10:07:00 · 146 阅读 · 0 评论 -
关于宽窗宽位
宽窗宽位图解原创 2022-12-01 10:19:34 · 2425 阅读 · 0 评论 -
vtk.js关于透明度
vtk.js关于透明度使用vtkLookupTable预制透明度问题原创 2022-11-23 18:04:38 · 397 阅读 · 0 评论 -
vtk.js滚动切片
vtk.js滚动实现切片原创 2022-11-23 16:07:53 · 437 阅读 · 0 评论 -
vtkjs中Sample Distance功能
通过SetSampleDistance ()来设置每条射线的采样步长,默认值为1,单位为世界坐标系单位,数值越小越精细原创 2022-11-30 18:05:23 · 420 阅读 · 0 评论 -
vtk教程第十二章 应用
我们已经描述了一个广泛的可视化技术工具包的设计和实现。在本章中,我们将研究几个案例研究,以展示如何使用这些工具来深入了解重要的应用领域。这些领域包括医学成像、金融可视化、建模、计算流体动力学、有限元分析和算法可视化。对于每一种情况,我们简要描述了问题域,以及我们期望通过可视化获得哪些信息。然后我们设计一种方法来显示结果。很多时候,我们会使用特定于应用程序的工具来扩展可视化工具包的功能。最后,我们给出了一个示例程序并显示了生成的图像。我们所经历的可视化设计过程在每种情况下都是相似的。首先,我们读取或生成特定于翻译 2023-02-28 10:33:06 · 1510 阅读 · 0 评论 -
vtk教程第十一章 Web上的可视化
20世纪90年代早期建立了万维网的广泛使用和可访问性。曾经主要由研究人员和大学使用的网络,现在已经成为全世界人民都在使用的东西。这种转变的效果非常显著,从带有静态图像和文本的个人主页,到嵌入动画和虚拟现实的专业Web页面。本章将讨论其中的一些变化,并描述如何使用万维网使可视化更易于访问、更具交互性和更强大。涉及的主题包括客户端可视化与服务器端可视化、VRML和Java3D的优缺点,并结合了演示示例。 11.1的动力在详细描述如何在Web上执行可视化之前,了解我们期望获得什么是很重要的。显然,在Web发明之前翻译 2023-02-27 10:13:12 · 971 阅读 · 0 评论 -
vtk教程第十章 图像处理
在本章中,我们将描述可视化工具包的图像处理组件。重点是关键的表示思想,管道问题,如数据流,和有用的算法,以改善图像的外观和有效性10.1介绍自从数字计算机出现以来,图像处理一直是计算的支柱。早期的努力集中在改进图像内容以供人类解读。最近,图像处理已被计算机视觉从业者利用,其目标是处理图像数据以实现自动机器感知[Gonzalez92]。从数据可视化的角度来看,图像处理是对图像内容进行操作,以改善后续处理和解释的结果。例如,CT或MRI扫描可能会产生假信号噪声或需要图像分割。利用图像处理技术,可以逐片(即一幅一翻译 2023-02-24 15:53:46 · 833 阅读 · 0 评论 -
vtk教程第九章 高级算法
我们再次回到可视化算法。本章描述的算法要么实现起来比较复杂,要么在3D可视化应用中应用较少。我们将算法分类为标量、向量、张量或建模算法。9.1标量算法正如我们所看到的,标量算法通常涉及通过查找表映射标量值,或者创建等高线或曲面。在本节中,我们将研究另一种轮廓算法,分割立方体,该算法使用密集点云生成轮廓曲面。我们也描述地毯情节。地毯图不是真正的3D可视化技术,但被广泛用于可视化许多类型的标量数据。最后,裁剪是与轮廓相关的另一个重要算法,其中单元格作为标量值的函数被切割成碎片。分割立方体是一种类似于移动立方体的翻译 2023-02-23 14:45:47 · 2209 阅读 · 4 评论 -
vtk教程第八章 高级数据表示
本章讨论数据表示中的高级主题。主题包括拓扑和几何关系和计算方法的单元格和数据集。8.1坐标系我们将研究三种不同的坐标系:全局坐标系、数据集坐标系和结构化坐标系。图8 - 1展示了全局坐标系和数据集坐标系之间的关系,并描绘了结构化坐标系。全球坐标系全球坐标系是一个笛卡尔的三维空间。每个点都表示为沿着x、y和z轴的值的三元组(x、y、z)。这与第三章中描述的系统是相同的(参见46页的“坐标系”)。全局坐标系总是用于指定数据集的几何形状(即点坐标)和数据属性,如法线和向量。我们将使用“位置”一词来表示我们使用的是翻译 2023-02-22 12:22:33 · 1532 阅读 · 0 评论 -
vtk教程第七章 高级计算机图形学
第三章介绍了计算机图形学的基本概念。那一章的主要主题是如何使用表面原语(如点、线和多边形)表示和渲染几何。在本章中,我们主要关注体积图形。与表面图形相比,体图形在呈现非均匀材料方面具有更大的表达范围,是三维图像(体)数据集可视化的主要技术。本章的开始,我们将介绍两种对表面图形和体积图形都很重要的技术。它们使用简单的混合函数来模拟物体透明度,并使用纹理映射来增加真实感,而不需要过多的计算成本。我们还描述了这些技术固有的各种问题和挑战。然后,我们将重点讨论体积图形,包括对象顺序和图像顺序技术,照明模型,混合表面翻译 2023-02-20 16:34:20 · 1737 阅读 · 0 评论 -
vtk教程第六章 基础算法
我们已经了解了如何表示基本类型的可视化数据,如图像数据、结构化网格、非结构化网格和多边形数据。本章探讨了将这些数据转换为这些不同表示形式的方法,最终生成我们可以渲染的图形原语。这些方法被称为算法,并且对那些在可视化领域工作的人特别感兴趣。算法是动词,它允许我们以可视化的形式表达数据。通过适当地组合这些动词,我们可以将复杂的数据简化为简单、易于理解的句子,这就是数据可视化的力量。6.1介绍 转换数据的算法是数据可视化的核心。为了描述各种可用的转换,我们需要根据转换的结构和类型对算法进行分类。通过结构,我们指的翻译 2023-02-17 16:29:36 · 3478 阅读 · 0 评论 -
vtk教程第五章 基本数据表示
在第4章中,我们开发了可视化过程的实用定义:将信息映射到图形原语。我们看到了这种映射是如何通过一个或多个步骤进行的,每个步骤将数据从一种形式或数据表示转换为另一种形式或数据表示。在本章中,我们将研究用于可视化的常见数据表单。我们的目标是让您熟悉这些表单,以便使用本文提供的工具和技术可视化您自己的数据。 5.1介绍为了设计数据的表示方案,我们需要了解可能遇到的数据。我们还需要牢记设计目标,这样我们才能设计有效的数据结构和访问方法。接下来的两节将讨论这些问题。描述可视化数据由于我们的目标是可视化数据,显然我们需翻译 2023-02-15 10:30:34 · 2093 阅读 · 0 评论 -
vtk教程第四章 可视化管道
VisTrails多视图可视化系统。VisTrials支持可视化管道的交互式创建,维护它们的发展历史,优化它们的执行,并允许多个管道在电子表格风格的布局中进行比较。图片来源:SCI犹他大学研究所。在前一章中,我们使用光照、观看和几何的简单数学模型创建了图形图像。光照模型包括环境、漫反射和镜面效果。观看包括透视和投影的效果。几何被定义为图形原语(如点和多边形)的静态集合。为了描述可视化的过程,我们需要扩展我们对几何的理解,以包括更复杂的形式。我们将看到可视化过程将数据转换为图形原语。本章考察了数据转换的过程,翻译 2023-02-13 15:14:40 · 1358 阅读 · 0 评论