[vtkusers] Mac OS X x86_64 with Qt-4.5.x,vtk-5.3.x
Chris Kees
christopher.e.kees at usace.army.mil
Tue Nov 18 10:58:13 EST 2008
Hi,
Yesterday I compiled the cvs head of vtk with the development snapshot
of Qt-4.5 following some of the recent posts on running in 64-bit with
Cocoa. If I set useMainWindow=False then the code below runs fine,
otherwise I get an EXC_BAD_ACCESS signal when I call mainWindow.show()
(output from gdb is below). Has anybody been able to add the vtk
widget to a QFrame yet? I'm new to GUI programming, and I'm not sure I
follow everything covered in the previous posts. There is a comment
in the QVTKRenderWindow documentation about need to call
SetDisplayId() and SetWindowId() in certain situations, but I don't
know how to call those. Thanks for any suggestions.
Chris
if useMainWindow:
#Qt widgets
self.frameWidget = QtGui.QFrame(g.mainWindow)
self.hbox = QtGui.QHBoxLayout()
self.iren = QVTKRenderWindowInteractor(self.frameWidget)
self.iren.SetInteractorStyle(vtkInteractorStyleTrackballCamera())
self.iren.Initialize()
self.renWin = self.iren.GetRenderWindow()
self.renWin.SetWindowName(name)
self.hbox.addWidget(self.iren)
self.frameWidget.setLayout(self.hbox)
g.tabWidget.addTab(self.frameWidget,title)
screen = QtGui.QDesktopWidget().screenGeometry()
size = g.mainWindow.geometry()
(x,y) = (screen.width()-comm.size()*size.width())/2,
(screen.height()-size.height())/2
g.mainWindow.move(x+comm.rank()*size.width(),y)
g.mainWindow.show()
else:
self.iren = QVTKRenderWindowInteractor()
self.iren.SetInteractorStyle(vtkInteractorStyleTrackballCamera())
self.iren.Initialize()
self.renWin = self.iren.GetRenderWindow()
self.renWin.SetWindowName(name)
Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_INVALID_ADDRESS at address: 0x0000000000000018
0x0000000109de35c8 in QPaintEngine::setSystemClip ()
(gdb) back
#0 0x0000000109de35c8 in QPaintEngine::setSystemClip ()
#1 0x0000000109ccb60d in -[QCocoaView drawRect:] ()
#2 0x00007fff83e1c7ab in -[NSView _drawRect:clip:] ()
#3 0x00007fff83e1b291 in -[NSView
_recursiveDisplayAllDirtyWithLockFocus:visRec
t:] ()
#4 0x00007fff83e1b65e in -[NSView
_recursiveDisplayAllDirtyWithLockFocus:visRec
t:] ()
#5 0x00007fff83e1b65e in -[NSView
_recursiveDisplayAllDirtyWithLockFocus:visRec
t:] ()
#6 0x00007fff83e1b65e in -[NSView
_recursiveDisplayAllDirtyWithLockFocus:visRec
t:] ()
#7 0x00007fff83e1b65e in -[NSView
_recursiveDisplayAllDirtyWithLockFocus:visRec
t:] ()
#8 0x00007fff83e1b65e in -[NSView
_recursiveDisplayAllDirtyWithLockFocus:visRec
t:] ()
#9 0x00007fff83e1b65e in -[NSView
_recursiveDisplayAllDirtyWithLockFocus:visRec
t:] ()
#10 0x00007fff83e199be in -[NSView
_recursiveDisplayRectIfNeededIgnoringOpacity:
isVisibleRect:rectIsVisibleRectForView:topView:] ()
#11 0x00007fff83e19220 in -[NSThemeFrame
_recursiveDisplayRectIfNeededIgnoringOp
acity:isVisibleRect:rectIsVisibleRectForView:topView:] ()
#12 0x00007fff83e15a86 in -[NSView
_displayRectIgnoringOpacity:isVisibleRect:rec
tIsVisibleRectForView:] ()
#13 0x00007fff83d533cb in -[NSView displayIfNeeded] ()
#14 0x00007fff83d52ec0 in -[NSWindow displayIfNeeded] ()
#15 0x00007fff83e11be8 in -[NSWindow
_reallyDoOrderWindow:relativeTo:findKey:for
Counter:force:isModal:] ()
#16 0x00007fff83e115e8 in -[NSWindow orderWindow:relativeTo:] ()
#17 0x00007fff83dd8e94 in -[NSWindow makeKeyAndOrderFront:] ()
#18 0x0000000109cc2b3b in QWidgetPrivate::show_sys ()
#19 0x0000000109d5bbee in QWidgetPrivate::show_helper ()
#20 0x0000000109d5c24c in QWidget::setVisible ()
#21 0x0000000109594e0e in sipQMainWindow::setVisible ()
#22 0x0000000109746409 in meth_QWidget_show ()
More information about the vtkusers
mailing list