def __init__(self, style): super().__init__() self.background_color = (0,0,0) self._renderer = vtk.vtkRenderer() self._renderer.SetBackground(self.background_color) self._style = style self._style.SetDefaultRenderer(self._renderer) self._textActor = vtk.vtkTextActor() self.textActorStress = vtk.vtkTextActor() self.actors = {} self._inUse = False self._usePicker = True self.textProperty = vtk.vtkTextProperty() self.textProperty.SetFontSize(17) self.textProperty.SetColor((1,1,1)) self.textProperty.BoldOn() # self.textProperty.SetItalic(1) self._logo_pulse = vtk.vtkLogoRepresentation() self._logo_mopt = vtk.vtkLogoRepresentation() self._imageReader_pulse = vtk.vtkPNGReader() self._imageReader_mopt = vtk.vtkPNGReader() self.changeLogosToGetBetterContrast() self._createConfigLogos()
def make_logo(ren): spl_fname=resource_filename("OpenRS","meta/Logo.png") img_reader = vtk.vtkPNGReader() img_reader.SetFileName(spl_fname) img_reader.Update() logo = vtk.vtkLogoRepresentation() logo.SetImage(img_reader.GetOutput()) logo.ProportionalResizeOn() logo.SetPosition( 0.1, 0.1 ) #lower left logo.SetPosition2( 0.8, 0.8 ) #upper right logo.GetImageProperty().SetDisplayLocationToBackground() ren.AddViewProp(logo) logo.SetRenderer(ren) return logo
def add_visualpic_logo(self): self.vtk_image_data = vtk.vtkImageData() self.logo_path = resource_filename('VisualPIC.Icons', 'logo_horiz_transp.png') self.vtk_png_reader = vtk.vtkPNGReader() self.vtk_png_reader.SetFileName(self.logo_path) self.vtk_png_reader.Update() self.vtk_image_data = self.vtk_png_reader.GetOutput() self.vtk_logo_representation = vtk.vtkLogoRepresentation() self.vtk_logo_representation.SetImage(self.vtk_image_data) self.vtk_logo_representation.SetPosition(0.79, 0.01) self.vtk_logo_representation.SetPosition2(.2, .1) self.vtk_logo_representation.GetImageProperty().SetOpacity(1) self.vtk_logo_widget = vtk.vtkLogoWidget() self.vtk_logo_widget.SetInteractor(self.interactor) self.vtk_logo_widget.SetRepresentation(self.vtk_logo_representation) self.vtk_logo_widget.GetBorderRepresentation().SetShowBorderToOff() self.set_logo_widget_visibility(self.display_logo)
def createLogo(self): if self.canvas.drawLogo: if self.logoRepresentation == None: defaultLogoFile = os.path.join(sys.prefix,"share","vcs","uvcdat.png") reader = vtk.vtkPNGReader() reader.SetFileName( defaultLogoFile ) reader.Update() logo_input = reader.GetOutput() self.logoRepresentation = vtk.vtkLogoRepresentation() self.logoRepresentation.SetImage(logo_input) self.logoRepresentation.ProportionalResizeOn () self.logoRepresentation.SetPosition( 0.882, 0.0 ) self.logoRepresentation.SetPosition2( 0.10, 0.05 ) self.logoRepresentation.GetImageProperty().SetOpacity( .8 ) self.logoRepresentation.GetImageProperty().SetDisplayLocationToBackground() if (self.logoRenderer == None): self.logoRenderer = vtk.vtkRenderer() self.logoRenderer.AddViewProp(self.logoRepresentation) self.logoRepresentation.SetRenderer(self.logoRenderer)
def addLogo(self): if self.logoRepresentation == None: defaultLogoFile = os.path.join(sys.prefix,"share","vcs","uvcdat.png") reader = vtk.vtkJPEGReader() reader.SetFileName( defaultLogoFile ) reader.Update() logo_input = reader.GetOutput() self.logoRepresentation = vtk.vtkLogoRepresentation() self.logoRepresentation.SetImage(logo_input) self.logoRepresentation.ProportionalResizeOn () # self.logoRepresentation.SetPosition( 0.82, 0.0 ) # self.logoRepresentation.SetPosition2( 0.18, 0.08 ) self.logoRepresentation.SetPosition( 0.82, 1.0 ) self.logoRepresentation.SetPosition2( 0.08, 0.18 ) self.logoRepresentation.GetImageProperty().SetOpacity( 0.9 ) self.logoRepresentation.GetImageProperty().SetDisplayLocationToBackground() self.logoWidget = vtk.vtkLogoWidget() self.logoWidget.SetInteractor( self.renderWindowInteractor ) self.logoWidget.SetRepresentation(self.logoRepresentation) self.logoWidget.On() self.render()
def main(): colors = vtk.vtkNamedColors() # colors.SetColor("Bkg", 0.2, 0.3, 0.4) # A sphere sphereSource = vtk.vtkSphereSource() sphereSource.SetCenter(0.0, 0.0, 0.0) sphereSource.SetRadius(4.0) sphereSource.SetPhiResolution(4) sphereSource.SetThetaResolution(8) sphereSource.Update() mapper = vtk.vtkPolyDataMapper() mapper.SetInputConnection(sphereSource.GetOutputPort()) actor = vtk.vtkActor() actor.SetMapper(mapper) actor.GetProperty().SetColor(colors.GetColor3d("MistyRose")) # A renderer and render window renderer = vtk.vtkRenderer() renderWindow = vtk.vtkRenderWindow() renderWindow.AddRenderer(renderer) renderWindow.SetWindowName("LogoWidget") renderer.AddActor(actor) # An interactor renderWindowInteractor = vtk.vtkRenderWindowInteractor() renderWindowInteractor.SetRenderWindow(renderWindow) # Create an image drawing = vtk.vtkImageCanvasSource2D() drawing.SetScalarTypeToUnsignedChar() drawing.SetNumberOfScalarComponents(3) drawing.SetExtent(0, 200, 0, 200, 0, 0) drawColor1 = [0, 0, 0] color1 = colors.GetColor3ub("Coral") drawColor2 = [0, 0, 0] color2 = colors.GetColor3ub("Black") for i in range(3): drawColor1[i] = color1[i] drawColor2[i] = color2[i] # Clear the image # Note: SetDrawColour() uses double values of the rgb colors in the # range [0 ... 255] # So SetDrawColour(255, 255, 255) is white. drawing.SetDrawColor(*drawColor1) drawing.FillBox(0, 200, 0, 200) drawing.SetDrawColor(*drawColor2) drawing.DrawCircle(100, 100, 50) drawing.Update() logoRepresentation = vtk.vtkLogoRepresentation() logoRepresentation.SetImage(drawing.GetOutput()) logoRepresentation.SetPosition(0, 0) logoRepresentation.SetPosition2(0.4, 0.4) logoRepresentation.GetImageProperty().SetOpacity(.7) logoWidget = vtk.vtkLogoWidget() logoWidget.SetInteractor(renderWindowInteractor) logoWidget.SetRepresentation(logoRepresentation) renderWindow.Render() logoWidget.On() renderer.SetBackground(colors.GetColor3d("MidnightBLue")) renderWindow.Render() renderWindowInteractor.Start()