[vtkusers] Null pointer with Visual Studio 2010
David E DeMarle
dave.demarle at kitware.com
Fri Jan 8 13:57:52 EST 2016
Try throwing in a VTK_MODULE_INIT(vtkRenderingFreeType) in there.
David E DeMarle
Kitware, Inc.
R&D Engineer
21 Corporate Drive
Clifton Park, NY 12065-8662
Phone: 518-881-4909
On Fri, Jan 8, 2016 at 1:39 PM, cfd new via vtkusers <vtkusers at vtk.org>
wrote:
> I compiled vtk 6.3 with VS 2010.
> I had a few crashes when my GUI Is launched.
> I added the following code in my application program
> #include <vtkAutoInit.h>
> VTK_MODULE_INIT(vtkRenderingOpenGL);
> VTK_MODULE_INIT(vtkRenderingContextOpenGL);
> VTK_MODULE_INIT(vtkInteractionStyle);
>
> to avoid these crashes.
>
> Then when my code starts from
> QApplication app(argc, argv);
> MyQTGUI mygui;
> mygui.show();
> app.exec(); <==crashes from here.
>
> call stack shows this->Implementation->TextRenderer is NULL
> in the following code.
> what is the reason?
>
> vtkVector2i vtkTextRendererStringToImage::GetBounds(
> vtkTextProperty *property, const vtkUnicodeString& string, int dpi)
> {
> int tmp[4] = { 0, 0, 0, 0 };
> vtkVector2i recti(tmp);
> if (!property)
> {
> return recti;
> }
>
> this->Implementation->TextRenderer->GetBoundingBox(property, string,
> tmp,
> dpi);
>
> recti.Set(tmp[1] - tmp[0],
> tmp[3] - tmp[2]);
>
> return recti;
> }
>
> ======================call statck
> output=======================================
> vtkRenderingCore-6.3.dll!vtkTextRenderer::GetBoundingBox(vtkTextProperty
> * tprop, const vtkUnicodeString & str, int * bbox, int dpi, int backend)
> Line 158 + 0x5 bytes C++
>
> vtkRenderingFreeType-6.3.dll!vtkTextRendererStringToImage::GetBounds(vtkTextProperty
> * property, const vtkUnicodeString & string, int dpi) Line 66 C++
>
> vtkRenderingContextOpenGL-6.3.dll!vtkOpenGLContextDevice2D::ComputeStringBounds(const
> vtkUnicodeString & string, float * bounds) Line 947 C++
>
> vtkRenderingContextOpenGL-6.3.dll!vtkOpenGLContextDevice2D::ComputeStringBounds(const
> vtkStdString & string, float * bounds) Line 849 + 0x48 bytes C++
> vtkRenderingContext2D-6.3.dll!vtkContext2D::ComputeStringBounds(const
> vtkStdString & string, float * bounds) Line 646 C++
> vtkChartsCore-6.3.dll!vtkAxis::GetBoundingRect(vtkContext2D * painter)
> Line 845 C++
> vtkChartsCore-6.3.dll!vtkChartXY::UpdateLayout(vtkContext2D * painter)
> Line 851 C++
> vtkChartsCore-6.3.dll!vtkChartXY::Paint(vtkContext2D * painter) Line
> 395 C++
>
> vtkRenderingContext2D-6.3.dll!vtkContextScenePrivate::PaintItems(vtkContext2D
> * context) Line 81 C++
> vtkRenderingContext2D-6.3.dll!vtkContextScene::Paint(vtkContext2D *
> painter) Line 120 C++
> vtkRenderingContext2D-6.3.dll!vtkContextActor::RenderOverlay(vtkViewport
> * viewport) Line 221 C++
> vtkRenderingCore-6.3.dll!vtkRenderer::UpdateGeometry() Line 585 + 0x41
> bytes C++
> vtkRenderingOpenGL-6.3.dll!vtkOpenGLRenderer::DeviceRender() Line 273
> C++
> vtkRenderingCore-6.3.dll!vtkRenderer::Render() Line 298 C++
> vtkRenderingCore-6.3.dll!vtkRendererCollection::Render() Line 53 C++
> vtkRenderingCore-6.3.dll!vtkRenderWindow::DoStereoRender() Line 771 C++
> vtkRenderingCore-6.3.dll!vtkRenderWindow::DoFDRender() Line 739 C++
> vtkRenderingCore-6.3.dll!vtkRenderWindow::DoAARender() Line 618 C++
> vtkRenderingCore-6.3.dll!vtkRenderWindow::Render() Line 434 C++
> vtkRenderingCore-6.3.dll!vtkRenderWindowInteractor::Render() Line 175
> C++
> vtkViewsContext2D-6.3.dll!vtkContextInteractorStyle::RenderNow() Line
> 147 C++
>
> vtkViewsContext2D-6.3.dll!vtkContextInteractorStyle::ProcessInteractorEvents(vtkObject
> * __formal, unsigned long eventId, void * clientdata, vtkObject * __formal)
> Line 132 C++
> vtkCommonCore-6.3.dll!vtkCallbackCommand::Execute(vtkObject * caller,
> unsigned long event, void * callData) Line 43 C++
> vtkCommonCore-6.3.dll!vtkSubjectHelper::InvokeEvent(unsigned long event,
> void * callData, vtkObject * self) Line 619 C++
> vtkCommonCore-6.3.dll!vtkObject::InvokeEvent(unsigned long event, void *
> callData) Line 785 + 0x1c bytes C++
> vtkGUISupportQt-6.3.dll!QVTKInteractor::TimerEvent(int timerId) Line
> 217 C++
> vtkGUISupportQt-6.3.dll!QVTKInteractorInternal::TimerEvent(int id) Line
> 73 C++
>
> vtkGUISupportQt-6.3.dll!QVTKInteractorInternal::qt_static_metacall(QObject
> * _o, QMetaObject::Call _c, int _id, void * * _a) Line 52 C++
>
> _______________________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
>
> Please keep messages on-topic and check the VTK FAQ at:
> http://www.vtk.org/Wiki/VTK_FAQ
>
> Search the list archives at: http://markmail.org/search/?q=vtkusers
>
> Follow this link to subscribe/unsubscribe:
> http://public.kitware.com/mailman/listinfo/vtkusers
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/vtkusers/attachments/20160108/66b3fcbf/attachment.html>
More information about the vtkusers
mailing list