本文整理汇总了Python中vtk.vtkGlyph3D函数的典型用法代码示例。如果您正苦于以下问题:Python vtkGlyph3D函数的具体用法?Python vtkGlyph3D怎么用?Python vtkGlyph3D使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了vtkGlyph3D函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: Glyph3D
def Glyph3D(self, currentElement):
glyph = vtk.vtkGlyph3D()
# Datatype(s) I need for input: Algorithm
AlgorithmElement = ''
for childElement in currentElement.getchildren():
if childElement.tag in vtkTypes['Algorithm']:
AlgorithmElement = childElement
if AlgorithmElement != '':
dataset = self.namesToFunctions[AlgorithmElement.tag](AlgorithmElement)
try:
glyph.SetInputConnection(dataset.GetOutputPort())
except:
self.logger.error(' .. <Glyph3D> failed to SetInputConnection')
else:
self.logger.error(' .. <Glyph3D> needs an Algorithm-type childElement')
if 'SetSource' in currentElement.keys():
gsourceName = currentElement.get('SetSource')
try:
self.logger.debug(' .. <Glyph3D> SetSource(%s)' % gsourceName)
glyph.SetSource( self.glyphsources[gsourceName].GetOutput() )
except:
self.logger.error(' .. <Glyph3D> failed to SetSource')
glyph.SetScaleModeToScaleByVector ()
glyph.SetColorModeToColorByVector ()
glyph.SetRange(0.0, 0.11445075055913652)
glyph.SetScaleFactor(3.0)
return glyph
示例2: __init__
def __init__(self, profile=0, radius=2):
if not radius:
self.radius = Globals.renderProps["sphereSize"] * 1.1
else: self.radius = radius
self.z = 0
self.data = vtk.vtkPolyData()
self.sphere = vtk.vtkSphereSource()
self.sphere.SetRadius( Globals.referenceSize * self.radius )
self.sphere.SetPhiResolution( Globals.renderProps["spherePhiResolution"] )
self.sphere.SetThetaResolution( Globals.renderProps["sphereThetaResolution"] )
self.glyphPoints = vtk.vtkGlyph3D()
self.glyphPoints.SetInput( self.data )
self.glyphPoints.SetSource( self.sphere.GetOutput() )
self.mapper = vtk.vtkPolyDataMapper()
self.mapper.SetInputConnection( self.glyphPoints.GetOutputPort() )
self.actor = vtk.vtkActor()
self.actor.SetMapper(self.mapper)
if profile:
self.actor.GetProperty().SetColor(0,0,1)
else:
self.actor.GetProperty().SetColor(1,1,0)
Globals.ren.AddActor(self.actor)
示例3: __init__
def __init__(self,ext_actors=None): #ext_actors is a list of any external vtkActors.
#initializations:
self.renderer = vtk.vtkRenderer()
self.window = vtk.vtkRenderWindow()
self.window.SetSize(1000,1000)
self.mapper = vtk.vtkPolyDataMapper()
self.points = vtk.vtkPoints()
self.poly_data = vtk.vtkPolyData()
self.glyph3d = vtk.vtkGlyph3D()
self.actor = vtk.vtkActor()
self.point_s = vtk.vtkPointSource()
self.sphere = vtk.vtkSphereSource()
self.interactor= vtk.vtkRenderWindowInteractor()
self.inter_sty = PdbInteractorStyle()
self.axes_actor= vtk.vtkAxesActor()
#configurations:
self.point_s.SetNumberOfPoints(1)
self.sphere.SetRadius(1.0)
self.interactor.SetInteractorStyle(self.inter_sty)
self.interactor.SetRenderWindow(self.window)
self.axes_actor.SetTotalLength(100,100,100)
if ext_actors:
self.ex_actors = ext_actors
else:
self.ex_actors=[]
示例4: __init__
def __init__(self,data_reader):
self.lut=vtk.vtkLookupTable()
self.lut.SetNumberOfColors(256)
self.lut.SetTableRange(data_reader.get_scalar_range())
self.lut.SetHueRange(0,1)
self.lut.SetRange(data_reader.get_scalar_range())
self.lut.SetRange(data_reader.get_scalar_range())
self.lut.Build()
self.arrow=vtk.vtkArrowSource()
self.arrow.SetTipResolution(6)
self.arrow.SetTipRadius(0.1)
self.arrow.SetTipLength(0.35)
self.arrow.SetShaftResolution(6)
self.arrow.SetShaftRadius(0.03)
self.glyph=vtk.vtkGlyph3D()
self.glyph.SetInput(data_reader.get_data_set())
self.glyph.SetSource(self.arrow.GetOutput())
self.glyph.SetVectorModeToUseVector()
self.glyph.SetColorModeToColorByScalar()
self.glyph.SetScaleModeToScaleByVector()
self.glyph.OrientOn()
self.glyph.SetScaleFactor(0.002)
mapper=vtk.vtkPolyDataMapper()
mapper.SetInput(self.glyph.GetOutput())
mapper.SetLookupTable(self.lut)
mapper.ScalarVisibilityOn()
mapper.SetScalarRange(data_reader.get_scalar_range())
self.actor=vtk.vtkActor()
self.actor.SetMapper(mapper)
示例5: __init__
def __init__(self, module_manager):
SimpleVTKClassModuleBase.__init__(
self, module_manager,
vtk.vtkGlyph3D(), 'Processing.',
('vtkDataSet', 'vtkPolyData'), ('vtkPolyData',),
replaceDoc=True,
inputFunctions=None, outputFunctions=None)
示例6: get_actor
def get_actor(self):
# cone.SetResolution(5)
# cone.SetHeight(2)
self.glyphs = vtk.vtkGlyph3D()
self.glyphs.SetSourceConnection(self.e_glyph_shape.GetOutputPort())
self.glyphs.SetColorModeToColorByScalar()
self.centroidsPD = vtk.vtkPolyData()
self.centroidsPD.SetPoints(self.electrode_points)
self.centroidsPD.GetPointData().SetScalars(self.electrode_colors)
if vtk_major_version == 5:
self.glyphs.SetInput(self.centroidsPD)
else:
self.glyphs.SetInputData(self.centroidsPD)
self.glyphsMapper = vtk.vtkPolyDataMapper()
self.glyphsMapper.SetInputConnection(self.glyphs.GetOutputPort())
self.glyphs.ScalingOff() # IMPORTANT
self.glyphs.Update()
self.electrodes_actor = vtk.vtkActor()
self.electrodes_actor.SetMapper(self.glyphsMapper)
return self.electrodes_actor
示例7: get_electrode_glyphs
def get_electrode_glyphs(e_pts, e_colors):
e_glyph_shape = vtk.vtkSphereSource()
# cone.SetResolution(5)
# cone.SetHeight(2)
e_glyph_shape.SetRadius(3.0)
glyphs = vtk.vtkGlyph3D()
glyphs.SetSourceConnection(e_glyph_shape.GetOutputPort())
glyphs.SetColorModeToColorByScalar()
centroidsPD = vtk.vtkPolyData()
centroidsPD.SetPoints(e_pts)
centroidsPD.GetPointData().SetScalars(e_colors)
if vtk_major_version == 5:
glyphs.SetInput(centroidsPD)
else:
glyphs.SetInputData(centroidsPD)
glyphs.ScalingOff() # IMPORTANT
glyphs.Update()
glyphs.ScalingOff() # IMPORTANT
glyphs.Update()
return glyphs
示例8: VtkDefineActorKPoint
def VtkDefineActorKPoint(recordGrid, renderer, radius):
'''Returns a vtkActor to represent key-points in a rendering scene.
It defines the scale, orientation, rendering properties, textures, ...
:ivar recordGrid: unstructured grid (generic data set) to which incorporate
the actor KPoint
:ivar renderer: name of the renderer (lights, views, ...) to be used in the
display
:ivar radius: radius of the spheres to be employed in the KPoints
representation
'''
sphereSource= vtk.vtkSphereSource()
sphereSource.SetRadius(radius)
sphereSource.SetThetaResolution(5)
sphereSource.SetPhiResolution(5)
markKPts= vtk.vtkGlyph3D()
markKPts.SetInputData(recordGrid.uGrid)
markKPts.SetSourceData(sphereSource.GetOutput())
markKPts.ScalingOff()
markKPts.OrientOff()
mappKPts= vtk.vtkPolyDataMapper()
mappKPts.SetInputData(markKPts.GetOutput())
visKPts= vtk.vtkActor()
visKPts.SetMapper(mappKPts)
visKPts.GetProperty().SetColor(.7, .5, .5)
renderer.AddActor(visKPts)
示例9: __init__
def __init__(self, scale=0.01, **kwargs):
kwargs["scale"] = scale
self.poly_data = vtk.vtkPolyData()
self.arrow_source = vtk.vtkArrowSource()
self.transform = vtk.vtkTransform()
self.transform_poly_data_filter = vtk.vtkTransformPolyDataFilter()
self.transform_poly_data_filter.SetTransform(self.transform)
self.transform_poly_data_filter.SetInputConnection(self.arrow_source.GetOutputPort())
self.glyph = vtk.vtkGlyph3D()
self.glyph.OrientOn()
self.glyph.SetVectorModeToUseNormal()
self.glyph.SetInput(self.poly_data)
self.glyph.SetSourceConnection(self.transform_poly_data_filter.GetOutputPort())
self.mapper = vtk.vtkPolyDataMapper()
self.mapper.SetInputConnection(self.glyph.GetOutputPort())
self.actor = vtk.vtkActor()
self.actor.SetMapper(self.mapper)
self._process_kwargs(**kwargs)
示例10: create_glyph
def create_glyph(self,plane_mapper):
#in here we do the arrows
arrows = vtk.vtkArrowSource()
ptMask = vtk.vtkMaskPoints()
ptMask.SetInputConnection(plane_mapper.GetOutputPort())
ptMask.SetOnRatio(10)
ptMask.RandomModeOn()
#in here we do the glyohs
glyph = vtk.vtkGlyph3D()
glyph.SetSourceConnection(arrows.GetOutputPort())
glyph.SetInputConnection(ptMask.GetOutputPort())
glyph.SetColorModeToColorByVector()
glyph.SetScaleFactor(20)
#Glyph mapper
gly_mapper = vtk.vtkPolyDataMapper()
gly_mapper.SetInputConnection(glyph.GetOutputPort())
gly_mapper.SetLookupTable(self.arrowColor)
#glyph actor
gly_actor = vtk.vtkActor()
gly_actor.SetMapper(gly_mapper)
return gly_actor
示例11: create_glyphs
def create_glyphs (self, poly):
if self.glyph_type == 'sphere':
glyph = vtk.vtkSphereSource()
glyph.SetRadius(1)
glyph.SetPhiResolution(8)
glyph.SetThetaResolution(8)
elif self.glyph_type == 'cylinder':
glyph = vtk.vtkCylinderSource()
glyph.SetHeight(self.height)
glyph.SetRadius(self.radius)
glyph.SetCenter(0,0,0)
glyph.SetResolution(10)
glyph.CappingOn()
tt = vtk.vtkTransform()
tt.RotateZ(90)
tf = vtk.vtkTransformPolyDataFilter()
tf.SetInput(glyph.GetOutput())
tf.SetTransform(tt)
tf.Update()
glypher = vtk.vtkGlyph3D()
glypher.SetInput(poly)
glypher.SetSource(tf.GetOutput())
glypher.SetVectorModeToUseNormal()
glypher.SetScaleModeToScaleByScalar()
glypher.SetScaleFactor(self.glyph_scale_factor)
glypher.Update()
return glypher
示例12: addPoints
def addPoints(self, points, color, thick=False, thickness=_DEFAULT_POINT_THICKNESS):
vtkPoints = vtk.vtkPoints()
for point in points:
vtkPoints.InsertNextPoint(point[0], point[1], point[2])
pointsPolyData = vtk.vtkPolyData()
pointsPolyData.SetPoints(vtkPoints)
if thick:
sphereSource = vtk.vtkSphereSource()
sphereSource.SetRadius(thickness)
glyph3D = vtk.vtkGlyph3D()
glyph3D.SetSourceConnection(sphereSource.GetOutputPort())
glyph3D.SetInputData(pointsPolyData)
glyph3D.Update()
mapper = vtk.vtkPolyDataMapper()
mapper.SetInputConnection(glyph3D.GetOutputPort())
else:
vertexFilter = vtk.vtkVertexGlyphFilter()
vertexFilter.SetInputData(pointsPolyData)
vertexFilter.Update()
mapper = vtk.vtkPolyDataMapper()
mapper.SetInputData(vertexFilter.GetOutput())
actor = vtk.vtkActor()
actor.SetMapper(mapper)
actor.GetProperty().SetColor(color)
self._rendererScene.AddActor(actor)
示例13: make_sphereActor
def make_sphereActor (x, r, rgb, opacity):
points = vtk.vtkPoints()
points.InsertNextPoint(x[0], x[1], x[2])
diameter = vtk.vtkDoubleArray()
diameter.SetNumberOfComponents(1)
diameter.InsertNextTuple1(2.0*r)
pData = vtk.vtkPolyData()
pData.SetPoints(points)
pData.GetPointData().SetScalars(diameter)
pSource = vtk.vtkSphereSource()
pSource.SetPhiResolution(16)
pSource.SetThetaResolution(16)
pGlyph = vtk.vtkGlyph3D()
pGlyph.SetSource(pSource.GetOutput())
pGlyph.SetInput(pData)
pGlyph.ScalingOn()
pGlyph.SetScaleModeToScaleByScalar()
pMapper = vtk.vtkPolyDataMapper()
pMapper.ScalarVisibilityOff()
pMapper.SetInput(pGlyph.GetOutput())
pActor = vtk.vtkActor()
pActor.SetMapper(pMapper)
pActor.GetProperty().SetColor(rgb[0], rgb[1], rgb[2])
pActor.GetProperty().SetOpacity(opacity)
return pActor
示例14: setupGlyph
def setupGlyph(self,fUnitConv= 1.0):
self.polydata= self.getPolydata(fUnitConv)
# Generate the arrow for the glyphs
arrow = vtk.vtkArrowSource()
#arrow.SetRadius(0.1)
#arrow.SetHeight(0.5)
self.glyph = vtk.vtkGlyph3D()
self.glyph.SetInputData(self.polydata)
self.glyph.SetSourceConnection(arrow.GetOutputPort())
self.glyph.ScalingOn()
self.glyph.SetScaleModeToScaleByScalar()
self.glyph.SetVectorModeToUseVector()
self.glyph.OrientOn()
# Tell the filter to "clamp" the scalar range
#self.glyph.ClampingOn()
# Set the overall (multiplicative) scaling factor
self.glyph.SetScaleFactor(self.scaleFactor)
# Set the Range to "clamp" the data to
# -- see equations above for nonintuitive definition of "clamping"
# The fact that I'm setting the minimum value of the range below
# the minimum of my data (real min=0.0) with the equations above
# forces a minimum non-zero glyph size.
#self.glyph.SetRange(-10, 10) # Change these values to see effect on cone sizes
# Tell glyph which attribute arrays to use for what
self.glyph.SetInputArrayToProcess(0,0,0,0,self.lenghtsName) # scalars
self.glyph.SetInputArrayToProcess(1,0,0,0,self.vectorsName) # vectors
# self.glyph.SetInputArrayToProcess(2,0,0,0,'nothing') # normals
#self.glyph.SetInputArrayToProcess(3,0,0,0,self.lenghtsName) # colors
# Calling update because I'm going to use the scalar range to set the color map range
self.glyph.Update()
示例15: __init__
def __init__ (self, mod_m):
debug ("In VelocityVector::__init__ ()")
Common.state.busy ()
Base.Objects.Module.__init__ (self, mod_m)
self.glyph2d_src = vtk.vtkGlyphSource2D ()
self.cone = vtk.vtkConeSource ()
self.arrow = vtk.vtkArrowSource ()
self.glyph_src = self.cone
self.glyph3d = vtk.vtkGlyph3D ()
self.mapper = self.map = vtk.vtkPolyDataMapper ()
self.actor = self.act = vtk.vtkActor ()
# used to orient the cone properly
self.glph_trfm = vtk.vtkTransformFilter ()
self.glph_trfm.SetTransform (vtk.vtkTransform ())
self.data_out = self.mod_m.GetOutput ()
# Point of glyph that is attached -- -1 is tail, 0 is center,
# 1 is head.
self.glyph_pos = -1
self.scale = 1.0
self.color_mode = 2 #2 is vector, 1 is scalar, -1 none
self._initialize ()
self._gui_init ()
self.renwin.Render ()
Common.state.idle ()