【VTK】create spline points

2024-03-27 22:18
文章标签 create points vtk spline

本文主要是介绍【VTK】create spline points,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

定义5个点

在这里插入图片描述

    double p[5][3] = { {0.0, 4.0, 0.0},{2.0, 0.0, 0.0},{4.0, 2.0, 0.0},{6.0, 0.0, 0.0},{8.0, 4.0, 0.0} };

定义500个插值点

在这里插入图片描述

示例代码:

    double p[5][3] = { {0.0, 4.0, 0.0},{2.0, 0.0, 0.0},{4.0, 2.0, 0.0},{6.0, 0.0, 0.0},{8.0, 4.0, 0.0} };vtkSmartPointer<vtkPoints> points = vtkSmartPointer<vtkPoints>::New();for( int i = 0; i < 5; ++i ){points->InsertNextPoint( p[i] );}vtkSmartPointer<vtkParametricSpline> spline =vtkSmartPointer<vtkParametricSpline>::New();spline->SetPoints(points);vtkSmartPointer<vtkPoints> betaPoints = vtkSmartPointer<vtkPoints>::New();int index = 0;int countOfDeltaPoints = 500;double step = 1.0 / ( countOfDeltaPoints - 1 );for( double i = 0; i <= 1; i = i + step ){double tmp[3] = { i, 0, 0 };spline->Evaluate( tmp, tmp, NULL );betaPoints->InsertPoint( index++, tmp );}

使用vtkParametricFunctionSource的polyData,不用开发者自己来create points:

在这里插入图片描述

示例代码:

#include <vtkSmartPointer.h>
#include <vtkParametricFunctionSource.h>
#include <vtkParametricSpline.h>#include <vtkCellArray.h>
#include <vtkCellData.h>
#include <vtkDoubleArray.h>
#include <vtkPoints.h>
#include <vtkPolyData.h>
#include <vtkPolyDataMapper.h>
#include <vtkActor.h>
#include <vtkTransformPolyDataFilter.h>
#include <vtkProperty.h>#include <vtkRenderWindow.h>
#include <vtkRenderer.h>
#include <vtkRenderWindowInteractor.h>
#include <vtkTransform.h>#include <vtkSphereSource.h>
#include <vtkNamedColors.h>
#include <vtkTextSource.h>
#include <vtkCoordinate.h>
#include <vtkPolyDataMapper2D.h>
#include <vtkActor2D.h>#include <QString>
#include <iostream>
using namespace std;int main(int, char *[])
{vtkSmartPointer<vtkNamedColors> colors =vtkSmartPointer<vtkNamedColors>::New();double p[5][3] = { {0.0, 4.0, 0.0},{2.0, 0.0, 0.0},{4.0, 2.0, 0.0},{6.0, 0.0, 0.0},{8.0, 4.0, 0.0} };vtkSmartPointer<vtkPoints> points = vtkSmartPointer<vtkPoints>::Ne

这篇关于【VTK】create spline points的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/853563

相关文章

初步了解VTK装配体

VTK还不太了解,根据资料, vtk.vtkAssembly 是 VTK库中的一个重要类,允许通过将多个vtkActor对象组合在一起来创建复杂的3D模型。 import vtkimport mathfrom vtk.util.colors import *filenames = ["cylinder.stl","sphere.stl","torus.stl"]dt = 1.0renW

005:VTK世界坐标系中的相机和物体

VTK医学图像处理---世界坐标系中的相机和物体 左侧是成像结果                                                    右侧是世界坐标系中的相机与被观察物体 目录 VTK医学图像处理---世界坐标系中的相机和物体 简介 1 在三维空间中添加坐标系 2 世界坐标系中的相机 3 世界坐标系中vtkImageData的参数 总结:

GTK中创建线程函数g_thread_new和g_thread_create的区别

使用GThread函数,需要引用glib.h头文件。 这两个接口的核心区别就是  g_thread_create 是旧的接口,现在已经不使用了,而g_thread_new是新的接口,建议使用。 g_thread_create: g_thread_create has been deprecated since version 2.32 and should not be used in n

Create and manage temporary, permanent, and undo tablespaces

Create and manage temporary, permanent, and undo tablespaces 关于tablespace的操作语句有三大类,分别是create tablespace、alter tablespace、drop tablespace 表空间如标题所说,总体也分为三大类,temporary tablespace 、system/sysaux/users

004: VTK读入数据---vtkImageData详细说明

VTK医学图像处理---vtkImageData类 目录 VTK医学图像处理---vtkImageData类 简介: 1 Mricro软件的安装和使用 (1) Mricro安装 (2) Mricro转换DICOM为裸数据  2 从硬盘读取数据到vtkImageData 3 vtkImageData转RGB或RGBA格式 4 练习 总结 简介:         对于医

Navicat Premium上出现Cannot create oci environment错误的解决办法

因为要连接运程的Orcale数据库,由于一些原因连不上,于是我把顶栏里的工具->选项->Oic(最最下面的一个)的oci.dll给替换了,然后就一直出现Cannot create oci environment这个错误 这是由于替换的oci.dll的版本不对,于是替换了各种版本有时候也会出现这个错误 最后就是因为版本不对,先看好安装的版本然后下载一个相对应的 下载地址:http://ww

kubernetes Pod failed to create fsnotify watcher: too many open files

fs.nr_open: 控制单个进程可以打开的文件描述符的最大数量。单个进程的文件描述符限制可以通过 ulimit 命令来设置。 /proc/sys/fs/nr_open 是一个系统级别的全局参数,表示系统中单个进程能够打开的文件描述符总数的限制。/proc/sys/fs/file-max 系统级别,当前系统可打开的最大数量/etc/security/limits.conf 用户级别,指定用户

hive udaf 用maven打包执行create temporary function 时报错

用maven打包写好的jar,在放到hive中作临时函数时报错。 错误信息如下: hive> create temporary function maxvalue as "com.leaf.data.Maximum";java.lang.SecurityException: Invalid signature file digest for Manifest main att

001:VTK的学习资料与方法

VTK 医学图像处理---VTK学习资料 简介:       本节主要介绍学习VTK的一些资料和学习方法,仅供参考,可以根据自己的实际情况来调整。学习资料主要以VTK官网提供的资料为主,不管对于入门还是深入研究都足够了;但为了让入手VTK的难度更低一点,所以在有了本系列博文。 VTK 医学图像处理---VTK学习资料 简介: 1 官网免费电子书(好像有中文翻译版,建议看原版)

【docker无法启动】 can't create unix socket /var/run/docker.sock: is a directory

一次重启docker后出现的问题 Oct 18 19:18:20 worker systemd[1]: Starting Docker Application Container Engine...Oct 18 19:18:20 worker1 dockerd-current[118257]: time="2018-10-18T19:18:20.734668371+08:00" level=w