本文轉載于https://www.michaelapp.com/posts/2019/VTK-Filter%E6%80%BB%E7%BB%93/
文章目錄
- 源對象
- 成像濾波器
-
- 可視化濾波器
-
- 可視化濾波器(輸入類型vtkDataSet)。
- 可視化濾波器(輸入類型vtkPointSet)
- 可視化濾波器(輸入類型vtkPolyData)
- 可視化濾波器((輸入類型vtkStructuredGrid)。
- 可視化濾波器(輸入類型vtkUnStructuredGrid)
- 可視化濾波器(輸入類型vtkRectilinearGrid)
- 投射器對象
- Actor(Prop)對象
VTK Filter 總結
本節我們提供了對濾波器的總結。劃分為三個部分:
源對象Filter清單
可視化Filter清單
成像Filter清單
源對象
本節我們提供了對源對象的一個簡要描述。源對象發動可視化管線。注意閱讀器(讀檔案的源對象)沒有在這裡列出。
vtkBooleanTexture——建立一個基于内部,外部組合,和在隐式函數上的2D紋理圖檔(結構化點)。
vtkConeSource——産生一個核的一個多邊形表示
vtkCubeSource——産生一個立方體的一個多邊形表示
vtkCursor3D——産生一個給定一個bounding box和焦點的3D指針(表示為線)
vtkCylinderSource——産生一個圓柱體的一個多邊形表示
vtkDiskSource——産生一個核的一個多邊形表示
vtkEarthSource——産生一個地球的一個多邊形表示
vtkImageCanvasSource2D——通過使用基本的形狀繪畫來建立一個圖象
vtkImageEllipsoidSource——建立一個橢圓體分布的圖象
vtkImageGaussianSource——建立一個Gaussian分布的圖象
vtkImageMandelbrotSource——建立一個Mandelbrot集的圖象
vtkImageNoiseSource——建立一個填滿噪聲的圖象
vtkImageSinusoidSource——建立一個Sinusoid正弦曲線值的圖象
vtkLineSource——産生一個核的一個多邊形表示
vtkOutLineSource——産生一個核的一個多邊形表示
vtkPlaneSource——産生一個核的一個多邊形表示
vtkPointLoad——産生來自一個半—無窮區域上一個點負荷的一個張量區域
vtkPointSetSource——使用正弦曲線圖象值建立一個圖象
vtkPointSource——産生一個核的一個多邊形表示
vtkProgrammableDataObjectSource——在運作時可以被規劃以讀或者産生一個vtkDataObject(i.e,一個區域)的一個濾波器
vtkProgrammableSource——在運作時可以被規劃以讀或者産生任意類型資料的一個濾波器
vtkRendererSource——把繪制器或者繪制視窗放入成像管線(對于螢幕擷取是很好的)的一個成像濾波器
vtkSampleFunction——采樣直到一個體上的一個隐式函數
vtkSphereSource——産生一個核的一個多邊形表示
vtkSuperquadricSource——産生一個超二次曲面的一個多邊形表示
vtkTextSource——建立作為一個多邊形表示的文本
vtkTextureSphereSource——使用相關的紋理坐标建立作為一個球體的多邊形表示
vtkTriangularTexture——産生一個三角形2D紋理圖檔
vtkVectorTexture——建立一個文本的一個多邊形表示
vtkVideoSource——攫取視訊信号作為一個圖象
成像濾波器
本節我們提供了對成像濾波器的總結。 這裡描述的所有濾波器把vtkImageData(或者陳舊的vtkStructurePoints)作為輸入,而且産生同樣類型的輸出。
vtkClipVolume——使用一個隐式函數剪切一個體來産生一個四面體網絡
vtkComositeFilter——把結構化(合成的)的點結合進一個單一的資料集中
vtkDividingCubes——産生作為點雲的等值面
vtkExtractVOI——提取一個興趣體和/或子采樣體
vtkImageAccumulate——産生輸入圖象的一個柱狀圖
vtkImageAnisotropivDiffusion2D——疊代地應用一個2D漫射濾波器
vtkImageAnisotropivDiffusion3D——疊代地應用一個3D漫射濾波器
vtkImageAppend——把多輸入圖象并入一個輸出圖象
vtkImageAppendComonents——合并來自兩個輸入圖象的成分
vtkImageBlend——根據為每個輸入設定的alpha值和/或不透明性混和多個圖象
vtkImageButterworthHighPass——應用高通濾波器
vtkImageButterworthLowPass——應用低通濾波器
vtkImageCacheFilter——未來避免管線重新執行的高速緩沖存儲器圖象
vtkImageCanvasSource2D——基本的圖象顯示/元素繪畫功能
vtkImageCast——把輸入圖象投射到一個特定的輸出類型
vtkImageCityBlockDistance——使用city block度量建立一個距離圖檔
vtkImageClip——壓縮輸入圖象的大小
vtkImageCompose——使用像素和Z—緩沖器資料的合成的多個圖象
vtkImageConstantPad——使用一個常量值pad輸入圖象
vtkImageContinuousDilate3D——在一個橢球體臨近區域内賦予最大值
vtkImageContinuousErode3D——在一個橢球體臨近區域内賦予最小值
vtkImageCorrelation——建立兩個輸入圖象的一個相關圖象
vtkImageCursor3D——把一個指針添加到輸入圖象上去
vtkImageDataStreamer——對圖象資料開始流動
vtkImageDataToPolyData Filter——把一個圖象轉化為多邊形
vtkImageDifference——産生兩個圖象的一個差别圖象/誤內插補點
vtkImageDilateErode3D——在一個邊界上執行擴大/侵蝕操作
vtkImageDivergence——建立一個表示了輸入向量區域改變率的一個标量區域
vtkImageDotProduct——建立來自兩個向量圖象的一個點積圖象
vtkImageEuclideanToPolar——把2DEuclidean坐标轉化為一個極坐标
vtkImageExtractComonents——提取輸入圖象成分的一個子集
vtkImageFFT——執行一個快速傅立葉變換
vtkImageFlip——圍繞一個特定的軸翻轉一個圖象
vtkImageFourierCenter——從原點到中心移動0度
vtkImageGaussianSmooth ——執行1D,2D,3D Gaussian 卷積
vtkImageGradient——計算一個圖象的梯度向量
vtkImageGradientMagnitude——計算梯度向量的大小
vtkImageHSVToRGB——把HSV轉換為RGB
vtkImageHybridMedian2D——當保持線/角落時執行一個中值濾波器
vtkImageIdealHighPass——執行一個簡單的頻率域高通濾波器
vtkImageIdealLowPass——執行一個簡單的頻率域低通濾波器
vtkImageIslandRemoval2D——移走來自圖象的所有小串
vtkImageLaplacian——計算Laplacian(梯度的散度)
vtkImageLogarithmicScale——執行一個邏輯操作:AND,OR,XOR,NAND,NOR,NOT
vtkImageLuminance——計算一個RGB圖象的亮度
vtkImageMagnify——通過一個整數縮放因子放大圖象
vtkImageMagnitude——計算一個圖象成分的大小
vtkImageMapToColors——通過一個查找表投射一個圖象
vtkImageMarchingCubes——MarchingCubes的一個流動版本
vtkImageMask——把一個面具應用于一個圖象
vtkImageMaskBits——把一個位—面具類型應用于圖象成分
vtkImageMathematics——把基本的數學操作應用于一個或者兩個圖象
vtkImageMedian3D——計算一個矩形臨近區域内的一個中值濾波器
vtkImageMirrorPad——使用一個Mirror圖象Pad輸入圖象
vtkImageNonMaximumSuppression——執行非最大的抑制
vtkImageNormalize——标準化一個圖象的标量成分
vtkImageOpenClose3D——執行兩個擴大/侵蝕操作
vtkImagePermute——改變一個圖象軸的次序
vtkImageQuantizeRGBToIndex——把一個RGB圖象量子化為一個索引圖象和一個查找表
vtkImageRange3D——計算一個橢圓體臨近的範圍
vtkImageResample——重新采樣一個圖象,使其更大或者更小
vtkImageRFFT——執行一個Reverse 快速傅立葉變換
vtkImageRGBToHSV——把RGB成分轉化為HSV
vtkImageReslice——沿着一個特定的軸Reslice重新劃分體
vtkImageSeedConnectivity——使用使用者被提供的種子賦予連通性
vtkImageShiftScale——在輸入圖象上執行一個交換和縮放操作
vtkImageShrink3D——通過在一個不規則的栅格上子采樣來收縮一個圖象
vtkImageSkeleton2D——執行一個2D上的Skeleton基礎操作
vtkImageSobel2D——使用Sobel函數計算一個圖象的向量域
vtkImageSobel3D——使用Sobel函數計算一個體的向量域
vtkImageThreshold——執行二進制或者連續的極限操作
vtkImageVariance3D——計算一個橢圓體臨近内的變量
vtkImageWrapPad——在像素索引上使用一個mod操作來pad一個圖象
vtkLinkEdgels——把邊緣連接配接在一起形成數字曲面
vtkMarchingCubes——高性能的等值面算法
vtkMarchingSquares——2D上高性能的等值面算法
vtkRecursiveDividingCubes——産生作為點雲的一個等值面
vtkStructuredPointsGeometryFilter——提取出幾何(點,線,面)作為vtkPolyData
vtkSweptSurface——産生一個移動部分的掃頻表面
vtkSynchronizedTemplates2D——2D上高性能的等值面算法
vtkSynchronizedTemplates3D——3D上高性能的等值面算法
可視化濾波器
下面的類被組織成它們輸入的資料的類型。每個類包括一個簡要的描述.
可視化濾波器(輸入類型vtkDataSet)。
這些濾波器會處理任何類型的資料集(即,vtkDataSet的子類)
vtkAppendFilter——把一個或者多個資料集添加到一個單一的非結構化的網絡
vtkAsynchronousBuffer——導緻異步管線執行
vtkAttributeDataToFilterDataFilter——把屬性資料(點或者單元)變換為區域資料
vtkBrownianPoints——把随機的向量賦予點
vtkCastToConcrete——把輸入的一個抽象類型(e.g,vtkDataSet)投射為一個具體的形式(e.g,vtkPolyData)
vtkCellCenters——産生組成單元中心的點(vtkPolyData)
vtkCellDataToPointData——把單中繼資料轉化為點資料
vtkCellDerivatives——計算标量和向量的導數
vtkClipDataSet——使用一個隐式函數Clip修剪任意的vtkDataSets
vtkConnectivityFilter——把連接配接的單元提取到一個非結構化的網絡
vtkContourFilter——産生等值面
vtkCutter——産生一個來自一個n維資料集的n-1維的剪切平面
vtkDashedStreamLine——産生表示消逝時間的dash的一個流水線
vtkDataSetToDataObjectFilter——把一個資料集轉化為一個通常的資料對象
vtkDicer——産生基于空間(或者其它)分割的資料值
vtkEdgePoints——産生沿着與等值面值交叉的邊緣的點
vtkElevationFilter——根據沿着向量的投射産生标量
vtkExtractEdges——提取作為線的一個資料集的邊緣
vtkExtractGeometry——提取位于一個隐式函數内部或者外部的單元
vtkExtractTensorComonents——提取一個張量的成分作為标量,向量,法線,或者紋理坐标
vtkFieldDataToAttributeDataFilter——把通常的區域資料轉化為點或者單元屬性資料
vtkGaussianSplatter——通過使用一個Gaussian分布splatting點來産生一個體内的标量區域
vtkGeometryFilter——提取來自一個資料集的表面幾何;把一個資料集轉化為vtkPolyData
vtkGlyph2D——vtkGlyph3D的一個2D特殊化。平移,旋轉,縮放限制于x-y平面
vtkGlyph3D——把一個vtkPolyData(定義了Glyph的第二個輸入)複制到輸入的每個點上
vtkGraphLayout——把非直接的圖表進行滿意的安排
vtkHedgeHog——在來自相關向量區域的每個點上産生縮放的和定向的線
vtkHyperStreamline——使用張量資料産生一個流管,穿越部件的流管根據特征向量被覆寫
vtkldFilter——産生整數id值(對于plotting是有用的)
vtkImplicitModeller——産生來自輸入幾何的一個距離區域
vtkImplicitTextureCoords——使用一個隐式函數建立紋理坐标
vtkInterpolateDataSetAttributes——在兩個資料集(對于動畫是有用的)之間内插屬性資料
vtkMaskPoints——選擇輸入點的一個子集
vtkMergeDataObjectFilter——合并一個資料對象和資料集以形成一個新的資料集(對分離來自解答檔案的幾何是有用的)
vtkMergeFilter——把來自不同資料集的塊合并進入一個單一的資料集
vtkOBBDicer——使用定向bounding box把一個資料集分割為塊
vtkOutlineFilter——建立一個圍繞資料集的輪廓
vtkPointDataToCellData——把點資料轉化為單中繼資料
vtkProbeFilter——使用其它的對一個資料集進行采集,重采樣
vtkProgrammableAttributeDataFilter——操作于資料屬性的一個運作可程式設計濾波器
vtkProgrammableFilter——一個運作可程式設計濾波器
vtkProgrammableGlyphFilter——一個運作可程式設計濾波器,它可以産生根據資料值的任意變化的圖表
vtkProjectedTexture——産生投射到一個任意表面上的紋理坐标
vtkSelectVisiblePoints——選擇可見的點的子集;隐藏點被精選出來
vtkShepardMethod——重新把一個點集采樣進一個體
vtkShrinkFilter——收縮一個資料集的單元
vtkSimpleElevationFilter——根據z坐标值産生标量
vtkSpatialRepresentationFilter——建立空間研究(i.e,定位器)對象的一個多邊形表示
vtkStreamer——抽象超類執行向量區域的微粒內建,積分
vtkStreamLine——産生來自一個向量區域的流線
vtkStreamPoints——産生沿着來自一個向量區域的流線的一個點集
vtkSurfaceReconstructionFilter——建構來自非組織化點的一個表面
vtkTensorGlyph——根據張量值産生圖表
vtkTextureMapToBox——産生一個3D紋理坐标
vtkTextureMapToCylinder——使用圓柱體坐标産生一個2D紋理坐标
vtkTextureMapToPlane——通過把資料投射到一個平面上産生一個2D紋理坐标
vtkTextureMapToSphere——使用球形的坐标産生一個2D紋理坐标
vtkThreshold——提取标量值在一個極限區域之下,之上,之間的單元
vtkThresholdPoints——提取标量值在一個極限區域之下,之上,之間的點
vtkThresholdTextureCoords——變換(e.g,縮放,etc)紋理坐标
vtkTransform TextureCoords——計算基于滿足的極限标準的紋理坐标
vtkVectorDot——計算來自向量和法線之間點集的标量
vtkVectorNorm——計算來自向量Euclidean規範的标量
vtkVectorTopology——标記向量區域消失(i.e,奇異存在)的點
vtkVoxelModeller——把任意的資料集轉化為一個體素表示
可視化濾波器(輸入類型vtkPointSet)
這些濾波器會處理作為vtkPointSet一個子類的資料集。(這些類顯式地使用一個vtkPoints執行個體表示了它們的點)
vtkDelaunay2D——建立包括alpha形狀的受限制的和不受限制的Delaunay三角剖分
vtkDelaunay3D——建立包括alpha形狀的3D Dlaunay三角剖分
vtkTransformFilter——使用一個4*4變換矩陣轉化點
vtkWarpLens——根據透鏡失真轉化點
vtkWarpScalar——根據标量值進行縮放來修改點坐标
vtkWarpTo——通過朝着一個點彎曲來修改點坐标
vtkWarpVector——通過在點向量的方向上進行縮放來修改點坐标
可視化濾波器(輸入類型vtkPolyData)
vtkAppendPolyData——把一個或者多個vtkPolyData添加到一個單一的vtkPolyData
vtkApproximatingSubdivisionFilter——使用一個近似的配置産生一個子分割表面
vtkArcPlotter——沿着一個任意的多線畫資料
vtkButterflySubdivisionFilter——使用一個Butterfly子分割配置對一個三角形,多邊形表面進行子分割
vtkCleanPolyData——合并一緻的點,移走退化的元素
vtkClipPolyData——使用一個隐式函數(或者标量值)clip一個多邊形資料集
vtkDecimate——壓縮一個三角形網絡中(有專利的)的三角形數目
vtkDecimatePro——壓縮一個三角形網絡中(無專利的)的三角形數目
vtkDepthSortPolyData——根據深度進行多邊形排序,用于半透明繪制
vtkExtractPolyDataGeometry——提取完全位于一個隐式函數内部或者外部的多邊形單元
vtkFeatureEdges——提取滿足一定條件的邊緣(特征,邊界,非多種形式的邊緣)
vtkHull——産生來自六個或者更多獨立平面的一個凸起的外殼
vtkLinearSubdivisionFilter——使用一個線性子分割配置對一個三角形,多邊形表面進行子分割
vtkLoopSubdivisionFilter——使用一個循環子分割配置對一個三角形,多邊形表面進行子分割
vtkMaskPolyData——選擇多邊形資料的塊
vtkPolyDataConnectivityFilter——提取連接配接的區域
vtkPolyDataNormals——産生表面法線
vtkQuadricClustering——對于每個大型資料集的一個decimation算法
vtkQuadricDecimation——使用二次曲面誤差測量的一個decimation算法
vtkReverseSense——反轉連通順序或者表面法線的方向
vtkRibbonFilter——建立來自線的定向的帶
vtkRotationalExtrusionFilter——通過轉動地擠壓出另外一個vtkPolyData來産生多邊形資料
vtkRuledSurfaceFilter——建構來自兩個或者多個“平行”線的一個表面。通常用來建立來自一個流線耙子的的流表面
vtkSelectPolyData——通過畫一個環來選擇多邊形資料
vtkShrinkPolyData——通過壓縮超向重心的每個單元來壓縮多邊形資料
vtkSmoothPolyDataFilter——使用Laplacian平滑來改善網絡
vtkStripper——産生來自輸入三角形網絡的三角形條
vtkSubPoxelPositionEdgels——根據梯度調整邊緣(線)位置
vtkThinPlateSplineMeshWarp——使用裡程碑扭曲(或變體)多邊形網絡
vtkTransformPolyDataFilter——根據一個4*4的變換矩陣變換多邊形資料
vtkTriangleFilter——産生來自多邊形或三角形條的三角形
vtkTriangularTCoords——産生2D三角形紋理圖檔
vtkTubeFilter——使用管子來包裝線
vtkVoxelContoursToSurfaceFilter——把線輪廓轉化為一個表面
vtkWindowedSincPolyDataFilter——使用一個視窗化的sin函數平滑網絡
可視化濾波器((輸入類型vtkStructuredGrid)。
輸入類型必須是vtkStructuredGrid。記住接受vtkDataSet和vtkPointSet的濾波器也會處理vtkStructuredGrid。
vtkExtractGrid——提取vtkStructuredGrid的一個興趣區域/子例子
vtkGridSynchronizedTemplates3D——高性能的等值線算法
vtkStructuredGridGeometryFilter——提取作為多邊形幾何(點,線,表面)的栅格的一部分
vtkStructuredGridOutlineFilter——産生結構化栅格邊界的一個線輪廓
可視化濾波器(輸入類型vtkUnStructuredGrid)
這些濾波器把vtkUnStructuredGrid作為輸入。記住接受vtkDataSet的濾波器也會處理vtkUnStructuredGrid。
vtkExtractUnStructuredGrid——從一個非結構化的栅格中提取一個興趣區域,點,或單元
vtkSubdivideTetra——把一個四面體網絡對于每個原始四面體子分割為12個四面體
可視化濾波器(輸入類型vtkRectilinearGrid)
輸入類型必須是vtkRectilinearGrid. 記住接受vtkDataSet和vtkPointSet的濾波器也會處理vtkRectilinearGrid.
vtkRectilinearGridGeometryFilter——接受作為多邊形幾何(點,線,表面)的栅格的一部分
投射器對象
這節我們提供了對于投射器對象的一個簡要描述。投射器對象制止了可視化管線。每個條目包括一個簡要描述(包括了它們需要的輸入類型)
vtkDataSetMapper——接收作為輸入的任意類型的資料集并且投射到圖象系統
vtkImageMapper——2D圖象顯示
vtkLabeledDataMapper——把多邊形資料投射到圖象系統
vtkLabeledDataMapper2D——把vtkPolyData畫到覆寫圖平面上
vtkTextMapper——産生2D文本動畫
vtkVolumeProMapper——通過kVolumePro硬體把體投射到一個圖象上
vtkVolumeRayCastMapper——通過光線投射把體投射到一個圖象上
vtkVolumeTextMapper2D——通過2D紋理把體投射到一個圖象上
Actor(Prop)對象
以下是系統中一個對多種類型的vtkProp的簡要描述(e.g,vtk Prop3D和vtkActor)
vtkActor2D——在一個覆寫圖平面上的Prop類型
vtkAssembly——有共享的變換矩陣的一個有序的vtkProp3D的組
vtkAxisActor2D——在一個覆寫圖平面上的一個單一的标記軸
vtkCaptionActor2D——把一個文本标題加到一個對象上
vtkCubeAxesActor2D——畫一個vtkProp的x-y-z軸
vtkFollower——允許面向相機的一個vtkProp3D
vtkImageActor——一種特定類型的vtkProp,在一個單一多邊形的頂部畫一個作為紋理圖檔的圖象
vtkLegendBoxActor——被vtkXYPlotActor用來畫曲線圖例;把文本,符号,和線結合成一個曲線圖例
vtkLODActor——一個用來繪制3D幾何的單一層次細節的摘要
vtkLODProp3D——vtkProp3D的層次細節方法
vtk Parallel Coordinates Actor——多元可視化技術
vtkPropAssembly——一組vtkProps
vtkProp3D——vtkProp的一種可變化的(i.e,有一個矩陣)類型
vtkScalarBarActor——一個标注好的,着色的真實地表現顔色和标量值之間關系的條
vtkScalarTextActor——随着視點改變大小而縮放的文本
vtkVolume——用于體繪制的一個vtkProp
vtkXYPlotActor——畫一個資料的x-y圖