<div dir="ltr"><div class="gmail_extra">Hello</div><div class="gmail_extra"><br></div><div class="gmail_extra">I found a Solution to the problem.</div><div class="gmail_extra" style>After the window.show() to start the qt Gui we need to initialize the vtkWidget.</div>
<div class="gmail_extra" style><br></div><div class="gmail_extra" style>I found out about this by having a button that connected to a function that only did self.widget.Initialize().</div><div class="gmail_extra" style>So Initializing the widget wont work if the QtGui havent started yet (sorta makes sense).</div>
<div class="gmail_extra" style><br></div><div class="gmail_extra" style>The tutorials on this although have to be updated to reflect this.</div><div class="gmail_extra" style><br></div><div class="gmail_extra" style>Hope this helps some other poor souls in the same situation.</div>
<div class="gmail_extra" style><br></div><div class="gmail_extra" style><div class="gmail_extra">from PyQt4.QtCore import *</div><div class="gmail_extra">from PyQt4.QtGui  import *</div><div class="gmail_extra">import vtk</div>
<div class="gmail_extra">from vtk.qt4.QVTKRenderWindowInteractor import QVTKRenderWindowInteractor</div><div class="gmail_extra">import sys</div><div class="gmail_extra">class Ui_MainWindow(QWidget):</div><div class="gmail_extra">
    def setupUi(self, MainWindow):</div><div class="gmail_extra">       MainWindow.setObjectName(&quot;MainWindow&quot;)</div><div class="gmail_extra">       MainWindow.resize(603, 553)</div><div class="gmail_extra">       self.centralWidget = QWidget(MainWindow)</div>
<div class="gmail_extra">       self.gridlayout = QGridLayout(self.centralWidget)</div><div class="gmail_extra">       self.vtkWidget = QVTKRenderWindowInteractor(self.centralWidget)</div><div class="gmail_extra">       self.gridlayout.addWidget(self.vtkWidget, 0, 0, 1, 1)</div>
<div class="gmail_extra">       MainWindow.setCentralWidget(self.centralWidget)</div><div class="gmail_extra"><br></div><div class="gmail_extra">class SimpleView(QMainWindow):</div><div class="gmail_extra">    def __init__(self, parent = None):</div>
<div class="gmail_extra">        QMainWindow.__init__(self, parent)</div><div class="gmail_extra">        self.ui = Ui_MainWindow()</div><div class="gmail_extra">        self.ui.setupUi(self)</div><div class="gmail_extra">
        self.widget = self.ui.vtkWidget</div><div class="gmail_extra">        self.ren = vtk.vtkRenderer()</div><div class="gmail_extra">        renwin = self.widget.GetRenderWindow()</div><div class="gmail_extra">        renwin.AddRenderer(self.ren)</div>
<div class="gmail_extra">        iren = self.ui.vtkWidget.GetRenderWindow().GetInteractor()</div><div class="gmail_extra">        cube = vtk.vtkCubeSource()</div><div class="gmail_extra">        cube.SetXLength(200)</div>
<div class="gmail_extra">        cube.SetYLength(200)</div><div class="gmail_extra">        cube.SetZLength(200)</div><div class="gmail_extra">        cube.Update()</div><div class="gmail_extra">        cm = vtk.vtkPolyDataMapper()</div>
<div class="gmail_extra">        cm.SetInputConnection(cube.GetOutputPort())</div><div class="gmail_extra">        ca = vtk.vtkActor()</div><div class="gmail_extra">        ca.SetMapper(cm)</div><div class="gmail_extra">        self.ren.AddActor(ca)</div>
<div class="gmail_extra">        self.axesActor = vtk.vtkAnnotatedCubeActor();</div><div class="gmail_extra">        self.axesActor.SetXPlusFaceText(&#39;R&#39;)</div><div class="gmail_extra">        self.axesActor.SetXMinusFaceText(&#39;L&#39;)</div>
<div class="gmail_extra">        self.axesActor.SetYMinusFaceText(&#39;H&#39;)</div><div class="gmail_extra">        self.axesActor.SetYPlusFaceText(&#39;F&#39;)</div><div class="gmail_extra">        self.axesActor.SetZMinusFaceText(&#39;P&#39;)</div>
<div class="gmail_extra">        self.axesActor.SetZPlusFaceText(&#39;A&#39;)</div><div class="gmail_extra">        self.axesActor.GetTextEdgesProperty().SetColor(1,1,0)</div><div class="gmail_extra">        self.axesActor.GetTextEdgesProperty().SetLineWidth(2)</div>
<div class="gmail_extra">        self.axesActor.GetCubeProperty().SetColor(0,0,1)</div><div class="gmail_extra">        self.axes = vtk.vtkOrientationMarkerWidget()</div><div class="gmail_extra">        self.axes.SetOrientationMarker(self.axesActor)</div>
<div class="gmail_extra">        self.axes.SetInteractor(iren)</div><div class="gmail_extra">        self.axes.EnabledOn()</div><div class="gmail_extra">        self.axes.InteractiveOn()</div><div class="gmail_extra">        self.ren.ResetCamera()</div>
<div class="gmail_extra"><br></div><div class="gmail_extra">if __name__ == &quot;__main__&quot;:</div><div class="gmail_extra">    app = QApplication(sys.argv)</div><div class="gmail_extra">    window = SimpleView()</div>
<div class="gmail_extra">    window.show()</div><div class="gmail_extra">    window.widget.Initialize() #This is the line we need</div><div class="gmail_extra">    app.exec_()</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">
On Sat, Jan 5, 2013 at 8:43 PM,  <span dir="ltr">&lt;<a href="mailto:lindeval@dmat.ufrr.br" target="_blank">lindeval@dmat.ufrr.br</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div id=":1y">from PyQt4.QtCore import *<br>
from PyQt4.QtGui  import *<br>
import vtk<br>
#from vtk.qt4.QVTKRenderWindowInteractor import QVTKRenderWindowInteractor<br>
import sys<br>
class Ui_MainWindow(QWidget):<br>
<div class="im">    def setupUi(self, MainWindow):<br>
       MainWindow.setObjectName(&quot;MainWindow&quot;)<br>
       MainWindow.resize(603, 553)<br>
</div>       self.centralWidget = QWidget(MainWindow)<br>
       self.vtkWidget = vtk.QVTKWidget(self.centralWidget)<br>
       self.gridlayout = QGridLayout(self.centralWidget)<br>
       #self.vtkWidget = QVTKRenderWindowInteractor(self.centralWidget)<br>
<div class="im">       self.gridlayout.addWidget(self.vtkWidget, 0, 0, 1, 1)<br>
       MainWindow.setCentralWidget(self.centralWidget)<br>
<br>
</div>class SimpleView(QMainWindow):<br>
<div class="im">    def __init__(self, parent = None):<br>
</div><div class="im">        QMainWindow.__init__(self, parent)<br>
        self.ui = Ui_MainWindow()<br>
        self.ui.setupUi(self)<br>
</div>        widget = self.ui.vtkWidget<br>
        self.ren = vtk.vtkRenderer()<br>
        renwin = widget.GetRenderWindow()<br>
        renwin.AddRenderer(self.ren)<br>
<div><div class="im">        iren = self.ui.vtkWidget.GetRenderWindow().GetInteractor()<br>
        cube = vtk.vtkCubeSource()<br>
        cube.SetXLength(200)<br>
        cube.SetYLength(200)<br>
        cube.SetZLength(200)<br>
        cube.Update()<br>
        cm = vtk.vtkPolyDataMapper()<br>
        cm.SetInputConnection(cube.GetOutputPort())<br>
        ca = vtk.vtkActor()<br>
        ca.SetMapper(cm)<br>
        self.ren.AddActor(ca)<br>
        self.axesActor = vtk.vtkAnnotatedCubeActor();<br>
        self.axesActor.SetXPlusFaceText(&#39;R&#39;)<br>
        self.axesActor.SetXMinusFaceText(&#39;L&#39;)<br>
        self.axesActor.SetYMinusFaceText(&#39;H&#39;)<br>
        self.axesActor.SetYPlusFaceText(&#39;F&#39;)<br>
        self.axesActor.SetZMinusFaceText(&#39;P&#39;)<br>
        self.axesActor.SetZPlusFaceText(&#39;A&#39;)<br>
        self.axesActor.GetTextEdgesProperty().SetColor(1,1,0)<br>
        self.axesActor.GetTextEdgesProperty().SetLineWidth(2)<br>
        self.axesActor.GetCubeProperty().SetColor(0,0,1)<br>
        self.axes = vtk.vtkOrientationMarkerWidget()<br>
        self.axes.SetOrientationMarker(self.axesActor)<br>
        self.axes.SetInteractor(iren)<br>
        self.axes.EnabledOn()<br>
        self.axes.InteractiveOn()<br>
        self.ren.ResetCamera()<br>
<br>
</div></div><div class="im">if __name__ == &quot;__main__&quot;:<br>
    app = QApplication(sys.argv)<br>
    window = SimpleView()<br>
    window.show()<br>
</div>    app.exec_()</div></blockquote></div><br></div></div>