<div dir="ltr">Hi,<div>I have a set of painter classes using VBO (adapted from VTKEdge) and VertexArrays that i'm willing to share via gerrit, but there is an issue i would like to resolve before, in order to add the test class.</div>


<div><br></div><div>Currently i use them with vtk 5.10.1, and i have a rendering factory to instantiate them instead of vtkPolygonsPainter, vtkLinesPainter and vtkTStripsPainter.</div><div><br></div><div>but with vtk 6.1, the factory mechanism has changed and i can not manage to make it work properly. So i first try to localy test my classes with the new version by incorporating them directly in vtkRenderingOpenGLObjectFactory, adding these lines in Rendering\OpenGL\CMakeLists.txt :</div>
<div><br></div><div>list(APPEND vtk_module_overrides "vtkPolygonsPainter")</div><div>set(vtk_module_vtkPolygonsPainter_override "vtkOpenGLVertexArrayPolygonsPainter")</div><div><br></div><div>Runing my test in debug, i can see that the class is added in the factory, but when the vtkChooserPainter creates the vtkPolygonsPainter, my own class is not instantiated, nor it is if i directly call vtkPolygonsPainter::New() in the test.</div>
<div><br></div><div>Is there something else i am missing to use my class in a factory with vtk 6.1?</div><div><br></div><div>Thanks</div><div><br></div><div><br></div><div>extract from my own factory code:</div><div><br></div>
<div><div>class vtkRenderingVertexArrayFactory</div><div>   : public vtkObjectFactory</div><div>{</div><div>public:</div><div>   static vtkRenderingVertexArrayFactory* New();</div><div>   vtkTypeMacro(vtkRenderingVertexArrayFactory, vtkObjectFactory);</div>
<div>   static void RegisterFactory();</div><div>protected:</div><div>   vtkRenderingVertexArrayFactory();</div><div>private:</div><div>   vtkRenderingVertexArrayFactory(const vtkRenderingVertexArrayFactory&); // Not implemented.</div>
<div>   void operator=(const vtkRenderingVertexArrayFactory&); // Not implemented.</div><div>};</div><div><br></div><div>vtkStandardNewMacro(vtkRenderingVertexArrayFactory);</div><div><br></div><div>VTK_FACTORY_INTERFACE_IMPLEMENT(vtkRenderingVertexArrayFactory);</div>
<div><br></div><div>VTK_CREATE_CREATE_FUNCTION(vtkOpenGLVertexArrayPolygonsPainter);</div><div><br></div><div>vtkRenderingVertexArrayFactory::vtkRenderingVertexArrayFactory()</div><div>{</div><div>   this->RegisterOverride("vtkPolygonsPainter",</div>
<div>                          "vtkOpenGLVertexArrayPolygonsPainter",</div><div>                          "Override for vtkRenderingOpenGL module",</div><div>                          1,</div><div>                          vtkObjectFactoryCreatevtkOpenGLVertexArrayPolygonsPainter);</div>
<div>}</div></div><div><br></div>

</div>