You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
560 lines
16 KiB
560 lines
16 KiB
2 years ago
|
package require vtk
|
||
|
package require vtkinteraction
|
||
|
|
||
|
vtkRenderer ren1
|
||
|
vtkRenderWindow renWin
|
||
|
renWin AddRenderer ren1
|
||
|
vtkRenderWindowInteractor iren
|
||
|
iren SetRenderWindow renWin
|
||
|
|
||
|
|
||
|
# create a scene with one of each cell type
|
||
|
|
||
|
# Voxel
|
||
|
|
||
|
vtkPoints voxelPoints
|
||
|
voxelPoints SetNumberOfPoints 8
|
||
|
voxelPoints InsertPoint 0 0 0 0
|
||
|
voxelPoints InsertPoint 1 1 0 0
|
||
|
voxelPoints InsertPoint 2 0 1 0
|
||
|
voxelPoints InsertPoint 3 1 1 0
|
||
|
voxelPoints InsertPoint 4 0 0 1
|
||
|
voxelPoints InsertPoint 5 1 0 1
|
||
|
voxelPoints InsertPoint 6 0 1 1
|
||
|
voxelPoints InsertPoint 7 1 1 1
|
||
|
|
||
|
vtkVoxel aVoxel
|
||
|
[aVoxel GetPointIds] SetId 0 0
|
||
|
[aVoxel GetPointIds] SetId 1 1
|
||
|
[aVoxel GetPointIds] SetId 2 2
|
||
|
[aVoxel GetPointIds] SetId 3 3
|
||
|
[aVoxel GetPointIds] SetId 4 4
|
||
|
[aVoxel GetPointIds] SetId 5 5
|
||
|
[aVoxel GetPointIds] SetId 6 6
|
||
|
[aVoxel GetPointIds] SetId 7 7
|
||
|
|
||
|
|
||
|
vtkUnstructuredGrid aVoxelGrid
|
||
|
aVoxelGrid Allocate 1 1
|
||
|
aVoxelGrid InsertNextCell [aVoxel GetCellType] [aVoxel GetPointIds]
|
||
|
aVoxelGrid SetPoints voxelPoints
|
||
|
|
||
|
vtkDataSetMapper aVoxelMapper
|
||
|
aVoxelMapper SetInput aVoxelGrid
|
||
|
|
||
|
vtkActor aVoxelActor
|
||
|
aVoxelActor SetMapper aVoxelMapper
|
||
|
[aVoxelActor GetProperty] BackfaceCullingOn
|
||
|
|
||
|
# Hexahedron
|
||
|
|
||
|
vtkPoints hexahedronPoints
|
||
|
hexahedronPoints SetNumberOfPoints 8
|
||
|
hexahedronPoints InsertPoint 0 0 0 0
|
||
|
hexahedronPoints InsertPoint 1 1 0 0
|
||
|
hexahedronPoints InsertPoint 2 1 1 0
|
||
|
hexahedronPoints InsertPoint 3 0 1 0
|
||
|
hexahedronPoints InsertPoint 4 0 0 1
|
||
|
hexahedronPoints InsertPoint 5 1 0 1
|
||
|
hexahedronPoints InsertPoint 6 1 1 1
|
||
|
hexahedronPoints InsertPoint 7 0 1 1
|
||
|
|
||
|
vtkHexahedron aHexahedron
|
||
|
[aHexahedron GetPointIds] SetId 0 0
|
||
|
[aHexahedron GetPointIds] SetId 1 1
|
||
|
[aHexahedron GetPointIds] SetId 2 2
|
||
|
[aHexahedron GetPointIds] SetId 3 3
|
||
|
[aHexahedron GetPointIds] SetId 4 4
|
||
|
[aHexahedron GetPointIds] SetId 5 5
|
||
|
[aHexahedron GetPointIds] SetId 6 6
|
||
|
[aHexahedron GetPointIds] SetId 7 7
|
||
|
|
||
|
|
||
|
vtkUnstructuredGrid aHexahedronGrid
|
||
|
aHexahedronGrid Allocate 1 1
|
||
|
aHexahedronGrid InsertNextCell [aHexahedron GetCellType] [aHexahedron GetPointIds]
|
||
|
aHexahedronGrid SetPoints hexahedronPoints
|
||
|
|
||
|
vtkDataSetMapper aHexahedronMapper
|
||
|
aHexahedronMapper SetInput aHexahedronGrid
|
||
|
|
||
|
vtkActor aHexahedronActor
|
||
|
aHexahedronActor SetMapper aHexahedronMapper
|
||
|
aHexahedronActor AddPosition 2 0 0
|
||
|
[aHexahedronActor GetProperty] BackfaceCullingOn
|
||
|
|
||
|
# Tetra
|
||
|
|
||
|
vtkPoints tetraPoints
|
||
|
tetraPoints SetNumberOfPoints 4
|
||
|
tetraPoints InsertPoint 0 0 0 0
|
||
|
tetraPoints InsertPoint 1 1 0 0
|
||
|
tetraPoints InsertPoint 2 .5 1 0
|
||
|
tetraPoints InsertPoint 3 .5 .5 1
|
||
|
|
||
|
vtkTetra aTetra
|
||
|
[aTetra GetPointIds] SetId 0 0
|
||
|
[aTetra GetPointIds] SetId 1 1
|
||
|
[aTetra GetPointIds] SetId 2 2
|
||
|
[aTetra GetPointIds] SetId 3 3
|
||
|
|
||
|
vtkUnstructuredGrid aTetraGrid
|
||
|
aTetraGrid Allocate 1 1
|
||
|
aTetraGrid InsertNextCell [aTetra GetCellType] [aTetra GetPointIds]
|
||
|
aTetraGrid SetPoints tetraPoints
|
||
|
|
||
|
vtkDataSetMapper aTetraMapper
|
||
|
aTetraMapper SetInput aTetraGrid
|
||
|
|
||
|
vtkActor aTetraActor
|
||
|
aTetraActor SetMapper aTetraMapper
|
||
|
aTetraActor AddPosition 4 0 0
|
||
|
[aTetraActor GetProperty] BackfaceCullingOn
|
||
|
|
||
|
# Wedge
|
||
|
|
||
|
vtkPoints wedgePoints
|
||
|
wedgePoints SetNumberOfPoints 6
|
||
|
wedgePoints InsertPoint 0 0 1 0
|
||
|
wedgePoints InsertPoint 1 0 0 0
|
||
|
wedgePoints InsertPoint 2 0 .5 .5
|
||
|
wedgePoints InsertPoint 3 1 1 0
|
||
|
wedgePoints InsertPoint 4 1 0 0
|
||
|
wedgePoints InsertPoint 5 1 .5 .5
|
||
|
|
||
|
vtkWedge aWedge
|
||
|
[aWedge GetPointIds] SetId 0 0
|
||
|
[aWedge GetPointIds] SetId 1 1
|
||
|
[aWedge GetPointIds] SetId 2 2
|
||
|
[aWedge GetPointIds] SetId 3 3
|
||
|
[aWedge GetPointIds] SetId 4 4
|
||
|
[aWedge GetPointIds] SetId 5 5
|
||
|
|
||
|
|
||
|
vtkUnstructuredGrid aWedgeGrid
|
||
|
aWedgeGrid Allocate 1 1
|
||
|
aWedgeGrid InsertNextCell [aWedge GetCellType] [aWedge GetPointIds]
|
||
|
aWedgeGrid SetPoints wedgePoints
|
||
|
|
||
|
vtkDataSetMapper aWedgeMapper
|
||
|
aWedgeMapper SetInput aWedgeGrid
|
||
|
|
||
|
vtkActor aWedgeActor
|
||
|
aWedgeActor SetMapper aWedgeMapper
|
||
|
aWedgeActor AddPosition 6 0 0
|
||
|
[aWedgeActor GetProperty] BackfaceCullingOn
|
||
|
|
||
|
# Pyramid
|
||
|
|
||
|
vtkPoints pyramidPoints
|
||
|
pyramidPoints SetNumberOfPoints 5
|
||
|
pyramidPoints InsertPoint 0 0 0 0
|
||
|
pyramidPoints InsertPoint 1 1 0 0
|
||
|
pyramidPoints InsertPoint 2 1 1 0
|
||
|
pyramidPoints InsertPoint 3 0 1 0
|
||
|
pyramidPoints InsertPoint 4 .5 .5 1
|
||
|
|
||
|
vtkPyramid aPyramid
|
||
|
[aPyramid GetPointIds] SetId 0 0
|
||
|
[aPyramid GetPointIds] SetId 1 1
|
||
|
[aPyramid GetPointIds] SetId 2 2
|
||
|
[aPyramid GetPointIds] SetId 3 3
|
||
|
[aPyramid GetPointIds] SetId 4 4
|
||
|
|
||
|
|
||
|
vtkUnstructuredGrid aPyramidGrid
|
||
|
aPyramidGrid Allocate 1 1
|
||
|
aPyramidGrid InsertNextCell [aPyramid GetCellType] [aPyramid GetPointIds]
|
||
|
aPyramidGrid SetPoints pyramidPoints
|
||
|
|
||
|
vtkDataSetMapper aPyramidMapper
|
||
|
aPyramidMapper SetInput aPyramidGrid
|
||
|
|
||
|
vtkActor aPyramidActor
|
||
|
aPyramidActor SetMapper aPyramidMapper
|
||
|
aPyramidActor AddPosition 8 0 0
|
||
|
[aPyramidActor GetProperty] BackfaceCullingOn
|
||
|
|
||
|
# Pixel
|
||
|
|
||
|
vtkPoints pixelPoints
|
||
|
pixelPoints SetNumberOfPoints 4
|
||
|
pixelPoints InsertPoint 0 0 0 0
|
||
|
pixelPoints InsertPoint 1 1 0 0
|
||
|
pixelPoints InsertPoint 2 0 1 0
|
||
|
pixelPoints InsertPoint 3 1 1 0
|
||
|
|
||
|
vtkPixel aPixel
|
||
|
[aPixel GetPointIds] SetId 0 0
|
||
|
[aPixel GetPointIds] SetId 1 1
|
||
|
[aPixel GetPointIds] SetId 2 2
|
||
|
[aPixel GetPointIds] SetId 3 3
|
||
|
|
||
|
vtkUnstructuredGrid aPixelGrid
|
||
|
aPixelGrid Allocate 1 1
|
||
|
aPixelGrid InsertNextCell [aPixel GetCellType] [aPixel GetPointIds]
|
||
|
aPixelGrid SetPoints pixelPoints
|
||
|
|
||
|
vtkDataSetMapper aPixelMapper
|
||
|
aPixelMapper SetInput aPixelGrid
|
||
|
|
||
|
vtkActor aPixelActor
|
||
|
aPixelActor SetMapper aPixelMapper
|
||
|
aPixelActor AddPosition 0 0 2
|
||
|
[aPixelActor GetProperty] BackfaceCullingOn
|
||
|
|
||
|
# Quad
|
||
|
|
||
|
vtkPoints quadPoints
|
||
|
quadPoints SetNumberOfPoints 4
|
||
|
quadPoints InsertPoint 0 0 0 0
|
||
|
quadPoints InsertPoint 1 1 0 0
|
||
|
quadPoints InsertPoint 2 1 1 0
|
||
|
quadPoints InsertPoint 3 0 1 0
|
||
|
|
||
|
vtkQuad aQuad
|
||
|
[aQuad GetPointIds] SetId 0 0
|
||
|
[aQuad GetPointIds] SetId 1 1
|
||
|
[aQuad GetPointIds] SetId 2 2
|
||
|
[aQuad GetPointIds] SetId 3 3
|
||
|
|
||
|
vtkUnstructuredGrid aQuadGrid
|
||
|
aQuadGrid Allocate 1 1
|
||
|
aQuadGrid InsertNextCell [aQuad GetCellType] [aQuad GetPointIds]
|
||
|
aQuadGrid SetPoints quadPoints
|
||
|
|
||
|
vtkDataSetMapper aQuadMapper
|
||
|
aQuadMapper SetInput aQuadGrid
|
||
|
|
||
|
vtkActor aQuadActor
|
||
|
aQuadActor SetMapper aQuadMapper
|
||
|
aQuadActor AddPosition 2 0 2
|
||
|
[aQuadActor GetProperty] BackfaceCullingOn
|
||
|
|
||
|
# Triangle
|
||
|
|
||
|
vtkPoints trianglePoints
|
||
|
trianglePoints SetNumberOfPoints 3
|
||
|
trianglePoints InsertPoint 0 0 0 0
|
||
|
trianglePoints InsertPoint 1 1 0 0
|
||
|
trianglePoints InsertPoint 2 .5 .5 0
|
||
|
|
||
|
vtkTriangle aTriangle
|
||
|
[aTriangle GetPointIds] SetId 0 0
|
||
|
[aTriangle GetPointIds] SetId 1 1
|
||
|
[aTriangle GetPointIds] SetId 2 2
|
||
|
|
||
|
vtkUnstructuredGrid aTriangleGrid
|
||
|
aTriangleGrid Allocate 1 1
|
||
|
aTriangleGrid InsertNextCell [aTriangle GetCellType] [aTriangle GetPointIds]
|
||
|
aTriangleGrid SetPoints trianglePoints
|
||
|
|
||
|
vtkDataSetMapper aTriangleMapper
|
||
|
aTriangleMapper SetInput aTriangleGrid
|
||
|
|
||
|
vtkActor aTriangleActor
|
||
|
aTriangleActor SetMapper aTriangleMapper
|
||
|
aTriangleActor AddPosition 4 0 2
|
||
|
[aTriangleActor GetProperty] BackfaceCullingOn
|
||
|
|
||
|
# Polygon
|
||
|
|
||
|
vtkPoints polygonPoints
|
||
|
polygonPoints SetNumberOfPoints 4
|
||
|
polygonPoints InsertPoint 0 0 0 0
|
||
|
polygonPoints InsertPoint 1 1 0 0
|
||
|
polygonPoints InsertPoint 2 1 1 0
|
||
|
polygonPoints InsertPoint 3 0 1 0
|
||
|
|
||
|
vtkPolygon aPolygon
|
||
|
[aPolygon GetPointIds] SetNumberOfIds 4
|
||
|
[aPolygon GetPointIds] SetId 0 0
|
||
|
[aPolygon GetPointIds] SetId 1 1
|
||
|
[aPolygon GetPointIds] SetId 2 2
|
||
|
[aPolygon GetPointIds] SetId 3 3
|
||
|
|
||
|
vtkUnstructuredGrid aPolygonGrid
|
||
|
aPolygonGrid Allocate 1 1
|
||
|
aPolygonGrid InsertNextCell [aPolygon GetCellType] [aPolygon GetPointIds]
|
||
|
aPolygonGrid SetPoints polygonPoints
|
||
|
|
||
|
vtkDataSetMapper aPolygonMapper
|
||
|
aPolygonMapper SetInput aPolygonGrid
|
||
|
|
||
|
vtkActor aPolygonActor
|
||
|
aPolygonActor SetMapper aPolygonMapper
|
||
|
aPolygonActor AddPosition 6 0 2
|
||
|
[aPolygonActor GetProperty] BackfaceCullingOn
|
||
|
|
||
|
# Triangle Strip
|
||
|
|
||
|
vtkPoints triangleStripPoints
|
||
|
triangleStripPoints SetNumberOfPoints 5
|
||
|
triangleStripPoints InsertPoint 0 0 1 0
|
||
|
triangleStripPoints InsertPoint 1 0 0 0
|
||
|
triangleStripPoints InsertPoint 2 1 1 0
|
||
|
triangleStripPoints InsertPoint 3 1 0 0
|
||
|
triangleStripPoints InsertPoint 4 2 1 0
|
||
|
|
||
|
vtkTriangleStrip aTriangleStrip
|
||
|
[aTriangleStrip GetPointIds] SetNumberOfIds 5
|
||
|
[aTriangleStrip GetPointIds] SetId 0 0
|
||
|
[aTriangleStrip GetPointIds] SetId 1 1
|
||
|
[aTriangleStrip GetPointIds] SetId 2 2
|
||
|
[aTriangleStrip GetPointIds] SetId 3 3
|
||
|
[aTriangleStrip GetPointIds] SetId 4 4
|
||
|
|
||
|
vtkUnstructuredGrid aTriangleStripGrid
|
||
|
aTriangleStripGrid Allocate 1 1
|
||
|
aTriangleStripGrid InsertNextCell [aTriangleStrip GetCellType] [aTriangleStrip GetPointIds]
|
||
|
aTriangleStripGrid SetPoints triangleStripPoints
|
||
|
|
||
|
vtkDataSetMapper aTriangleStripMapper
|
||
|
aTriangleStripMapper SetInput aTriangleStripGrid
|
||
|
|
||
|
vtkActor aTriangleStripActor
|
||
|
aTriangleStripActor SetMapper aTriangleStripMapper
|
||
|
aTriangleStripActor AddPosition 8 0 2
|
||
|
[aTriangleStripActor GetProperty] BackfaceCullingOn
|
||
|
|
||
|
# Line
|
||
|
|
||
|
vtkPoints linePoints
|
||
|
linePoints SetNumberOfPoints 2
|
||
|
linePoints InsertPoint 0 0 0 0
|
||
|
linePoints InsertPoint 1 1 1 0
|
||
|
|
||
|
vtkLine aLine
|
||
|
[aLine GetPointIds] SetId 0 0
|
||
|
[aLine GetPointIds] SetId 1 1
|
||
|
|
||
|
vtkUnstructuredGrid aLineGrid
|
||
|
aLineGrid Allocate 1 1
|
||
|
aLineGrid InsertNextCell [aLine GetCellType] [aLine GetPointIds]
|
||
|
aLineGrid SetPoints linePoints
|
||
|
|
||
|
vtkDataSetMapper aLineMapper
|
||
|
aLineMapper SetInput aLineGrid
|
||
|
|
||
|
vtkActor aLineActor
|
||
|
aLineActor SetMapper aLineMapper
|
||
|
aLineActor AddPosition 0 0 4
|
||
|
[aLineActor GetProperty] BackfaceCullingOn
|
||
|
|
||
|
# Poly line
|
||
|
|
||
|
vtkPoints polyLinePoints
|
||
|
polyLinePoints SetNumberOfPoints 3
|
||
|
polyLinePoints InsertPoint 0 0 0 0
|
||
|
polyLinePoints InsertPoint 1 1 1 0
|
||
|
polyLinePoints InsertPoint 2 1 0 0
|
||
|
|
||
|
vtkPolyLine aPolyLine
|
||
|
[aPolyLine GetPointIds] SetNumberOfIds 3
|
||
|
[aPolyLine GetPointIds] SetId 0 0
|
||
|
[aPolyLine GetPointIds] SetId 1 1
|
||
|
[aPolyLine GetPointIds] SetId 2 2
|
||
|
|
||
|
vtkUnstructuredGrid aPolyLineGrid
|
||
|
aPolyLineGrid Allocate 1 1
|
||
|
aPolyLineGrid InsertNextCell [aPolyLine GetCellType] [aPolyLine GetPointIds]
|
||
|
aPolyLineGrid SetPoints polyLinePoints
|
||
|
|
||
|
vtkDataSetMapper aPolyLineMapper
|
||
|
aPolyLineMapper SetInput aPolyLineGrid
|
||
|
|
||
|
vtkActor aPolyLineActor
|
||
|
aPolyLineActor SetMapper aPolyLineMapper
|
||
|
aPolyLineActor AddPosition 2 0 4
|
||
|
[aPolyLineActor GetProperty] BackfaceCullingOn
|
||
|
|
||
|
# Vertex
|
||
|
|
||
|
vtkPoints vertexPoints
|
||
|
vertexPoints SetNumberOfPoints 1
|
||
|
vertexPoints InsertPoint 0 0 0 0
|
||
|
|
||
|
vtkVertex aVertex
|
||
|
[aVertex GetPointIds] SetId 0 0
|
||
|
|
||
|
vtkUnstructuredGrid aVertexGrid
|
||
|
aVertexGrid Allocate 1 1
|
||
|
aVertexGrid InsertNextCell [aVertex GetCellType] [aVertex GetPointIds]
|
||
|
aVertexGrid SetPoints vertexPoints
|
||
|
|
||
|
vtkDataSetMapper aVertexMapper
|
||
|
aVertexMapper SetInput aVertexGrid
|
||
|
|
||
|
vtkActor aVertexActor
|
||
|
aVertexActor SetMapper aVertexMapper
|
||
|
aVertexActor AddPosition 0 0 6
|
||
|
[aVertexActor GetProperty] BackfaceCullingOn
|
||
|
|
||
|
# Poly Vertex
|
||
|
|
||
|
vtkPoints polyVertexPoints
|
||
|
polyVertexPoints SetNumberOfPoints 3
|
||
|
polyVertexPoints InsertPoint 0 0 0 0
|
||
|
polyVertexPoints InsertPoint 1 1 0 0
|
||
|
polyVertexPoints InsertPoint 2 1 1 0
|
||
|
|
||
|
vtkPolyVertex aPolyVertex
|
||
|
[aPolyVertex GetPointIds] SetNumberOfIds 3
|
||
|
[aPolyVertex GetPointIds] SetId 0 0
|
||
|
[aPolyVertex GetPointIds] SetId 1 1
|
||
|
[aPolyVertex GetPointIds] SetId 2 2
|
||
|
|
||
|
vtkUnstructuredGrid aPolyVertexGrid
|
||
|
aPolyVertexGrid Allocate 1 1
|
||
|
aPolyVertexGrid InsertNextCell [aPolyVertex GetCellType] [aPolyVertex GetPointIds]
|
||
|
aPolyVertexGrid SetPoints polyVertexPoints
|
||
|
|
||
|
vtkDataSetMapper aPolyVertexMapper
|
||
|
aPolyVertexMapper SetInput aPolyVertexGrid
|
||
|
|
||
|
vtkActor aPolyVertexActor
|
||
|
aPolyVertexActor SetMapper aPolyVertexMapper
|
||
|
aPolyVertexActor AddPosition 2 0 6
|
||
|
[aPolyVertexActor GetProperty] BackfaceCullingOn
|
||
|
|
||
|
# Pentagonal prism
|
||
|
|
||
|
vtkPoints pentaPoints
|
||
|
pentaPoints SetNumberOfPoints 10
|
||
|
pentaPoints InsertPoint 0 0.25 0.0 0.0
|
||
|
pentaPoints InsertPoint 1 0.75 0.0 0.0
|
||
|
pentaPoints InsertPoint 2 1.0 0.5 0.0
|
||
|
pentaPoints InsertPoint 3 0.5 1.0 0.0
|
||
|
pentaPoints InsertPoint 4 0.0 0.5 0.0
|
||
|
pentaPoints InsertPoint 5 0.25 0.0 1.0
|
||
|
pentaPoints InsertPoint 6 0.75 0.0 1.0
|
||
|
pentaPoints InsertPoint 7 1.0 0.5 1.0
|
||
|
pentaPoints InsertPoint 8 0.5 1.0 1.0
|
||
|
pentaPoints InsertPoint 9 0.0 0.5 1.0
|
||
|
|
||
|
vtkPentagonalPrism aPenta
|
||
|
[aPenta GetPointIds] SetId 0 0
|
||
|
[aPenta GetPointIds] SetId 1 1
|
||
|
[aPenta GetPointIds] SetId 2 2
|
||
|
[aPenta GetPointIds] SetId 3 3
|
||
|
[aPenta GetPointIds] SetId 4 4
|
||
|
[aPenta GetPointIds] SetId 5 5
|
||
|
[aPenta GetPointIds] SetId 6 6
|
||
|
[aPenta GetPointIds] SetId 7 7
|
||
|
[aPenta GetPointIds] SetId 8 8
|
||
|
[aPenta GetPointIds] SetId 9 9
|
||
|
|
||
|
vtkUnstructuredGrid aPentaGrid
|
||
|
aPentaGrid Allocate 1 1
|
||
|
aPentaGrid InsertNextCell [aPenta GetCellType] [aPenta GetPointIds]
|
||
|
aPentaGrid SetPoints pentaPoints
|
||
|
|
||
|
vtkDataSetMapper aPentaMapper
|
||
|
aPentaMapper SetInput aPentaGrid
|
||
|
|
||
|
vtkActor aPentaActor
|
||
|
aPentaActor SetMapper aPentaMapper
|
||
|
aPentaActor AddPosition 10 0 0
|
||
|
[aPentaActor GetProperty] BackfaceCullingOn
|
||
|
|
||
|
# Hexagonal prism
|
||
|
|
||
|
vtkPoints hexaPoints
|
||
|
hexaPoints SetNumberOfPoints 12
|
||
|
hexaPoints InsertPoint 0 0.0 0.0 0.0
|
||
|
hexaPoints InsertPoint 1 0.5 0.0 0.0
|
||
|
hexaPoints InsertPoint 2 1.0 0.5 0.0
|
||
|
hexaPoints InsertPoint 3 1.0 1.0 0.0
|
||
|
hexaPoints InsertPoint 4 0.5 1.0 0.0
|
||
|
hexaPoints InsertPoint 5 0.0 0.5 0.0
|
||
|
hexaPoints InsertPoint 6 0.0 0.0 1.0
|
||
|
hexaPoints InsertPoint 7 0.5 0.0 1.0
|
||
|
hexaPoints InsertPoint 8 1.0 0.5 1.0
|
||
|
hexaPoints InsertPoint 9 1.0 1.0 1.0
|
||
|
hexaPoints InsertPoint 10 0.5 1.0 1.0
|
||
|
hexaPoints InsertPoint 11 0.0 0.5 1.0
|
||
|
|
||
|
vtkHexagonalPrism aHexa
|
||
|
[aHexa GetPointIds] SetId 0 0
|
||
|
[aHexa GetPointIds] SetId 1 1
|
||
|
[aHexa GetPointIds] SetId 2 2
|
||
|
[aHexa GetPointIds] SetId 3 3
|
||
|
[aHexa GetPointIds] SetId 4 4
|
||
|
[aHexa GetPointIds] SetId 5 5
|
||
|
[aHexa GetPointIds] SetId 6 6
|
||
|
[aHexa GetPointIds] SetId 7 7
|
||
|
[aHexa GetPointIds] SetId 8 8
|
||
|
[aHexa GetPointIds] SetId 9 9
|
||
|
[aHexa GetPointIds] SetId 10 10
|
||
|
[aHexa GetPointIds] SetId 11 11
|
||
|
|
||
|
vtkUnstructuredGrid aHexaGrid
|
||
|
aHexaGrid Allocate 1 1
|
||
|
aHexaGrid InsertNextCell [aHexa GetCellType] [aHexa GetPointIds]
|
||
|
aHexaGrid SetPoints hexaPoints
|
||
|
|
||
|
vtkDataSetMapper aHexaMapper
|
||
|
aHexaMapper SetInput aHexaGrid
|
||
|
|
||
|
vtkActor aHexaActor
|
||
|
aHexaActor SetMapper aHexaMapper
|
||
|
aHexaActor AddPosition 12 0 0
|
||
|
[aHexaActor GetProperty] BackfaceCullingOn
|
||
|
|
||
|
|
||
|
|
||
|
ren1 SetBackground .1 .2 .4
|
||
|
|
||
|
ren1 AddActor aVoxelActor; [aVoxelActor GetProperty] SetDiffuseColor 1 0 0
|
||
|
ren1 AddActor aHexahedronActor; [aHexahedronActor GetProperty] SetDiffuseColor 1 1 0
|
||
|
ren1 AddActor aTetraActor; [aTetraActor GetProperty] SetDiffuseColor 0 1 0
|
||
|
ren1 AddActor aWedgeActor; [aWedgeActor GetProperty] SetDiffuseColor 0 1 1
|
||
|
ren1 AddActor aPyramidActor; [aPyramidActor GetProperty] SetDiffuseColor 1 0 1
|
||
|
ren1 AddActor aPixelActor; [aPixelActor GetProperty] SetDiffuseColor 0 1 1
|
||
|
ren1 AddActor aQuadActor; [aQuadActor GetProperty] SetDiffuseColor 1 0 1
|
||
|
ren1 AddActor aTriangleActor; [aTriangleActor GetProperty] SetDiffuseColor .3 1 .5
|
||
|
ren1 AddActor aPolygonActor; [aPolygonActor GetProperty] SetDiffuseColor 1 .4 .5
|
||
|
ren1 AddActor aTriangleStripActor; [aTriangleStripActor GetProperty] SetDiffuseColor .3 .7 1
|
||
|
ren1 AddActor aLineActor; [aLineActor GetProperty] SetDiffuseColor .2 1 1
|
||
|
ren1 AddActor aPolyLineActor; [aPolyLineActor GetProperty] SetDiffuseColor 1 1 1
|
||
|
ren1 AddActor aVertexActor; [aVertexActor GetProperty] SetDiffuseColor 1 1 1
|
||
|
ren1 AddActor aPolyVertexActor; [aPolyVertexActor GetProperty] SetDiffuseColor 1 1 1
|
||
|
ren1 AddActor aPentaActor; [aPentaActor GetProperty] SetDiffuseColor .2 .4 .7
|
||
|
ren1 AddActor aHexaActor; [aHexaActor GetProperty] SetDiffuseColor .7 .5 1
|
||
|
|
||
|
ren1 ResetCamera
|
||
|
[ren1 GetActiveCamera] Azimuth 30
|
||
|
[ren1 GetActiveCamera] Elevation 20
|
||
|
[ren1 GetActiveCamera] Dolly 1.25
|
||
|
ren1 ResetCameraClippingRange
|
||
|
|
||
|
renWin Render
|
||
|
|
||
|
vtkCellPicker cellPicker
|
||
|
vtkPointPicker pointPicker
|
||
|
vtkWorldPointPicker worldPicker
|
||
|
|
||
|
set cellCount 0
|
||
|
set pointCount 0
|
||
|
ren1 IsInViewport 0 0
|
||
|
|
||
|
for {set x 0} { $x <= 265} {incr x 6} {
|
||
|
for {set y 100} {$y <= 200} {incr y 6} {
|
||
|
cellPicker Pick $x $y 0 ren1
|
||
|
pointPicker Pick $x $y 0 ren1
|
||
|
worldPicker Pick $x $y 0 ren1
|
||
|
if {[cellPicker GetCellId] != "-1" } {
|
||
|
incr cellCount
|
||
|
}
|
||
|
if {[pointPicker GetPointId] != "-1" } {
|
||
|
incr pointCount
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
# render the image
|
||
|
#
|
||
|
iren AddObserver UserEvent {wm deiconify .vtkInteract}
|
||
|
iren Initialize
|
||
|
wm withdraw .
|