
\begin{DoxyRefList}
\item[\label{todo__todo000044}%
\Hypertarget{todo__todo000044}%
Member \hyperlink{classACG_1_1BSplineCurveT_a29b1ce7b72cbf137522222ab27b961ca}{A\+CG\+:\+:B\+Spline\+CurveT$<$ PointT $>$\+:\+:projected} ()]This is a hack actually. review  
\item[\label{todo__todo000045}%
\Hypertarget{todo__todo000045}%
Member \hyperlink{classACG_1_1BSplineSurfaceT_ad94d3b14fb32aa378859a249d1746afe}{A\+CG\+:\+:B\+Spline\+SurfaceT$<$ PointT $>$\+:\+:delete\+\_\+vector\+\_\+m} (unsigned int \+\_\+m)]Improve deletion routine for control points and knots!  
\item[\label{todo__todo000046}%
\Hypertarget{todo__todo000046}%
Member \hyperlink{classACG_1_1BSplineSurfaceT_a6368fb720d36fbdaf2e534baa8de7da5}{A\+CG\+:\+:B\+Spline\+SurfaceT$<$ PointT $>$\+:\+:delete\+\_\+vector\+\_\+n} (unsigned int \+\_\+n)]\+: Improve deletion routine for control points and knots!  
\item[\label{todo__todo000006}%
\Hypertarget{todo__todo000006}%
Member \hyperlink{classACG_1_1QtWidgets_1_1QtBaseViewer_abdb1b2a35491088620f1ffb39d0f45c5}{A\+CG\+:\+:Qt\+Widgets\+:\+:Qt\+Base\+Viewer\+:\+:fly\+To} (const Q\+Point \&\+\_\+pos, bool \+\_\+move\+\_\+back)]\+: Translate view such that hitpoint is in center of viewport  
\item[\label{todo__todo000007}%
\Hypertarget{todo__todo000007}%
Member \hyperlink{classACG_1_1QtWidgets_1_1QtBaseViewer_a5c3a1ec31c5240a5f349cd13323ceec5}{A\+CG\+:\+:Qt\+Widgets\+:\+:Qt\+Base\+Viewer\+:\+:gl\+Context\+Menu\+Event} (Q\+Context\+Menu\+Event $\ast$\+\_\+event)]\+: if (func\+Menu\+\_\+ \&\& func\+Menu\+\_\+-\/$>$count()$>$0) 

\+: if (pick\+Menu\+\_\+ \&\& pick\+Menu\+\_\+-\/$>$count()$>$0) 

\+: \&\& draw\+Menu\+\_\+-\/$>$count()$>$0) 

\+: \&\& func\+Menu\+\_\+-\/$>$count()$>$0) 

\+: \&\& pick\+Menu\+\_\+-\/$>$count()$>$0)  
\item[\label{todo__todo000012}%
\Hypertarget{todo__todo000012}%
Member \hyperlink{classACG_1_1QtWidgets_1_1QtWheel_a2740c1672fdfa5889689d3e2b77ee643}{A\+CG\+:\+:Qt\+Widgets\+:\+:Qt\+Wheel\+:\+:paint\+Event} (Q\+Paint\+Event $\ast$)]\+: bit\+Blt(this,r.\+left(),r.\+top(),pixmap\+\_\+);  
\item[\label{todo__todo000017}%
\Hypertarget{todo__todo000017}%
Member \hyperlink{classACG_1_1SceneGraph_1_1ACG_1_1SceneGraph_1_1MeshNodeT_a641b7b875570abf0b33fe31c8bc3b02a}{A\+CG\+:\+:Scene\+Graph\+:\+:A\+CG\+:\+:Scene\+Graph\+:\+:Mesh\+NodeT$<$ Mesh $>$\+:\+:draw} (\hyperlink{classACG_1_1SceneGraph_1_1ACG_1_1GLState}{G\+L\+State} \&\+\_\+state, const \hyperlink{classACG_1_1SceneGraph_1_1DrawModes_1_1DrawMode}{Draw\+Modes\+::\+Draw\+Mode} \&\+\_\+draw\+Mode) override]We can render also wireframe shaded and with vertex colors 

Integrate shader here! 

Integrate shader here!  
\item[\label{todo__todo000016}%
\Hypertarget{todo__todo000016}%
Member \hyperlink{classACG_1_1SceneGraph_1_1ACG_1_1SceneGraph_1_1MeshNodeT_abf049e12e655e227bee277cb1f0009b2}{A\+CG\+:\+:Scene\+Graph\+:\+:A\+CG\+:\+:Scene\+Graph\+:\+:Mesh\+NodeT$<$ Mesh $>$\+:\+:Mesh\+NodeT} (Mesh \&\+\_\+mesh, \hyperlink{classACG_1_1SceneGraph_1_1ACG_1_1SceneGraph_1_1BaseNode}{Base\+Node} $\ast$\+\_\+parent=0, const std\+::string \&\+\_\+name=\char`\"{}$<$\+Mesh\+Node$>$\char`\"{})]\+: Handle vbo not supported  
\item[\label{todo__todo000021}%
\Hypertarget{todo__todo000021}%
Member \hyperlink{classACG_1_1SceneGraph_1_1ACG_1_1SceneGraph_1_1MeshNodeT_ac742c0e6c20d27a7fb53f70a2cf377da}{A\+CG\+:\+:Scene\+Graph\+:\+:A\+CG\+:\+:Scene\+Graph\+:\+:Mesh\+NodeT$<$ Mesh $>$\+:\+:set\+\_\+property\+\_\+map} (std\+::map$<$ int, std\+::string $>$ $\ast$\+\_\+map)]Remove all these functions afterwards!  
\item[\label{todo__todo000020}%
\Hypertarget{todo__todo000020}%
Member \hyperlink{classACG_1_1SceneGraph_1_1ACG_1_1SceneGraph_1_1MeshNodeT_a97c6bb6d95d0c2abfcbe8e1aadaf7ba7}{A\+CG\+:\+:Scene\+Graph\+:\+:A\+CG\+:\+:Scene\+Graph\+:\+:Mesh\+NodeT$<$ Mesh $>$\+:\+:set\+Index\+Property\+Name} (std\+::string \+\_\+index\+Property\+Name)]Remove the external texture loading and do it here. 
\item[\label{todo__todo000019}%
\Hypertarget{todo__todo000019}%
Member \hyperlink{classACG_1_1SceneGraph_1_1ACG_1_1SceneGraph_1_1MeshNodeT_a7e2432cee077795caf39353a20895af4}{A\+CG\+:\+:Scene\+Graph\+:\+:A\+CG\+:\+:Scene\+Graph\+:\+:Mesh\+NodeT$<$ Mesh $>$\+:\+:update\+\_\+geometry} ()]check the following statements. If only geometry changed, the normals,vertices have to be updated nothing else!  
\item[\label{todo__todo000047}%
\Hypertarget{todo__todo000047}%
Member \hyperlink{classACG_1_1SceneGraph_1_1LightSource_af99a7087c761f248291adde32d7579fc}{A\+CG\+:\+:Scene\+Graph\+:\+:Light\+Source\+:\+:spot\+Direction} (Vec3d \+\_\+pos)]Improve documentation  
\item[\label{todo__todo000048}%
\Hypertarget{todo__todo000048}%
Member \hyperlink{classACG_1_1SceneGraph_1_1LightSource_aafe9c8cda7874a3965f058b803e31c11}{A\+CG\+:\+:Scene\+Graph\+:\+:Light\+Source\+:\+:spot\+Direction} () const]Improve documentation  
\item[\label{todo__todo000014}%
\Hypertarget{todo__todo000014}%
Member \hyperlink{classACG_1_1SceneGraph_1_1MeshNodeT_a51b14d749bf1721329fabaef88fab07f}{A\+CG\+:\+:Scene\+Graph\+:\+:Mesh\+NodeT$<$ Mesh $>$\+:\+:set\+\_\+property\+\_\+map} (std\+::map$<$ int, std\+::string $>$ $\ast$\+\_\+map)]Remove all these functions afterwards!  
\item[\label{todo__todo000013}%
\Hypertarget{todo__todo000013}%
Member \hyperlink{classACG_1_1SceneGraph_1_1MeshNodeT_a97c6bb6d95d0c2abfcbe8e1aadaf7ba7}{A\+CG\+:\+:Scene\+Graph\+:\+:Mesh\+NodeT$<$ Mesh $>$\+:\+:set\+Index\+Property\+Name} (std\+::string \+\_\+index\+Property\+Name)]Remove the external texture loading and do it here. 
\item[\label{todo__todo000022}%
\Hypertarget{todo__todo000022}%
Member \hyperlink{classACG_1_1SceneGraph_1_1StripProcessorT_a78cd5748dffaeacc6d4e33aceaf8acdc}{A\+CG\+:\+:Scene\+Graph\+:\+:Strip\+ProcessorT$<$ Mesh $>$\+:\+:build\+Strip\+Poly\+Mesh} (typename Mesh\+::\+Halfedge\+Handle \+\_\+start\+\_\+hh, \hyperlink{classACG_1_1SceneGraph_1_1Strip}{Strip} \&\+\_\+strip, Face\+Handles \&\+\_\+faces)]Implement texture processing here  
\item[\label{todo__todo000023}%
\Hypertarget{todo__todo000023}%
Member \hyperlink{classACG_1_1SceneGraph_1_1StripProcessorT_a8365de9bf62e5060fe712b7d3faefeaf}{A\+CG\+:\+:Scene\+Graph\+:\+:Strip\+ProcessorT$<$ Mesh $>$\+:\+:build\+Strip\+Tri\+Mesh} (typename Mesh\+::\+Halfedge\+Handle \+\_\+start\+\_\+hh, \hyperlink{classACG_1_1SceneGraph_1_1Strip}{Strip} \&\+\_\+strip, Face\+Handles \&\+\_\+faces)]Implement texture processing here  
\item[\label{todo__todo000015}%
\Hypertarget{todo__todo000015}%
File \hyperlink{config_8h}{config.h} ]Move content to \hyperlink{config_8hh_source}{config.\+hh} and include it to be compatible with old source. 

Move content to \hyperlink{config_8hh_source}{config.\+hh} and include it to be compatible with old source.  
\item[\label{todo__todo000003}%
\Hypertarget{todo__todo000003}%
Member \hyperlink{classCore_a83b5472d8d30510c6eb8dc04341956f3}{Core\+:\+:load\+Object} (\hyperlink{classDataType}{Data\+Type} \+\_\+type, Q\+String \+\_\+filename)]this function has to be checked. test for the plugin which can handle the given file and then use it.  
\item[\label{todo__todo000002}%
\Hypertarget{todo__todo000002}%
Member \hyperlink{classCore_a8fc55f139463d796c4f9e1d235f11c6f}{Core\+:\+:load\+Object} (Q\+String \+\_\+filename)]Check if this function is ok. It should check all plugins for the given files and do not depend on Triangle meshes only! Rewrite function to get the plugin only and then open the file. So iterate over all plugins and find the matching ones. open it with this plugin.  
\item[\label{todo__todo000004}%
\Hypertarget{todo__todo000004}%
Member \hyperlink{classCore_a66958f0632efb7402cc85c4bf91efb93}{Core\+:\+:slot\+Empty\+Object\+Added} (int \+\_\+id)]\+: set a default path for new objects  
\item[\label{todo__todo000001}%
\Hypertarget{todo__todo000001}%
Member \hyperlink{classCore_a069d0d8edd3f9f3ed9f45449e529ee4b}{Core\+:\+:slot\+Get\+All\+Filters} (Q\+String\+List \&\+\_\+list)]check why the supported Type is used here!  
\item[\label{todo__todo000005}%
\Hypertarget{todo__todo000005}%
Member \hyperlink{classCore_aed712a53dcb1537c9941104da3d112a6}{Core\+:\+:write\+Obj\+File} (Q\+String \+\_\+filename, bool \+\_\+relative\+Paths, bool \+\_\+target\+Only, std\+::map$<$ int, Q\+String $>$ \&\+\_\+file\+Mapping)]After obj writing to one file is implemented in obj plugin, remove this Function and the whole File!  
\item[\label{todo__todo000033}%
\Hypertarget{todo__todo000033}%
Member \hyperlink{classCoreWidget_a68e46bab2c8ff6a00ddb5fbf7fba5244}{Core\+Widget\+:\+:add\+Context\+Menus} (Q\+Menu $\ast$\+\_\+menu, Context\+Menu\+Type \+\_\+type, int \+\_\+id=-\/1)]Sort the menu entries by the order given in visible\+Context\+Menus  
\item[\label{todo__todo000034}%
\Hypertarget{todo__todo000034}%
Member \hyperlink{classCoreWidget_a3d5b707f4e28ae077aec9b11089f3065}{Core\+Widget\+:\+:drop\+Event} (Q\+Drop\+Event $\ast$\+\_\+event)]This is deprecated as its now handled by the url code above which should be used. Normally this code is not reached at all now. Remove it soon!  
\item[\label{todo__todo000035}%
\Hypertarget{todo__todo000035}%
Member \hyperlink{classCursorPainter_a0190e2f711b8a18c9f077dd0d7e6e4d0}{Cursor\+Painter\+:\+:cursor\+To\+Texture} ()]Possibly switch all cursors to bitmap cursors and check there Hotspots!!  
\item[\label{todo__todo000039}%
\Hypertarget{todo__todo000039}%
Member \hyperlink{classFileOFFPlugin_a11ed556fd6c26569c6d61aab61df9133}{File\+O\+F\+F\+Plugin\+:\+:read\+File\+Options} (Q\+String \+\_\+filename, \hyperlink{classOFFImporter}{O\+F\+F\+Importer} \&\+\_\+importer)]Implement extended coordinates 

Implement any space dimension  
\item[\label{todo__todo000042}%
\Hypertarget{todo__todo000042}%
Member \hyperlink{classFileOMPlugin_a245c6e7039336349c9a63d9fda25a5e2}{File\+O\+M\+Plugin\+:\+:load\+Poly\+Mesh\+Object} (Q\+String \+\_\+filename)]only request if needed  
\item[\label{todo__todo000041}%
\Hypertarget{todo__todo000041}%
Member \hyperlink{classFileOMPlugin_a7f19419e0e102118fbb475053935715f}{File\+O\+M\+Plugin\+:\+:load\+Tri\+Mesh\+Object} (Q\+String \+\_\+filename)]only request if needed  
\item[\label{todo__todo000050}%
\Hypertarget{todo__todo000050}%
Page \hyperlink{iterators_and_circulators}{Iterators and Circulators} ]Make figures for all iterators. 
\item[\label{todo__todo000049}%
\Hypertarget{todo__todo000049}%
Member \hyperlink{classMeshObject_a272cfc1464bf47cf8540c3a1ff798f74}{Mesh\+Object$<$ MeshT $>$\+:\+:invalidate\+Triangle\+Bsp} ()]\+: Update the tree when the update function of this object is called. 

\+: dont recreate but update the old one.  
\item[\label{todo__todo000043}%
\Hypertarget{todo__todo000043}%
Member \hyperlink{classMeshObjectSelectionPlugin_ac13d0b20a9ccc7ec0834020b7e46f68c}{Mesh\+Object\+Selection\+Plugin\+:\+:select\+Vertices\+By\+Value} (int \+\_\+object\+Id, Q\+String \+\_\+component, bool \+\_\+greater, double \+\_\+value)]emit scriptinfo  
\item[\label{todo__todo000024}%
\Hypertarget{todo__todo000024}%
Class \hyperlink{classOpenMesh_1_1Concepts_1_1KernelT}{Open\+Mesh\+:\+:Concepts\+:\+:KernelT$<$ Final\+Mesh\+Items $>$} ]Check, if the member list is complete.  
\item[\label{todo__todo000028}%
\Hypertarget{todo__todo000028}%
Class \hyperlink{classOpenMesh_1_1Decimater_1_1ModBaseT}{Open\+Mesh\+:\+:Decimater\+:\+:Mod\+BaseT$<$ MeshT $>$} ]\char`\"{}\+Tutorial on building a custom decimation module.\char`\"{} 
\item[\label{todo__todo000026}%
\Hypertarget{todo__todo000026}%
Class \hyperlink{structOpenMesh_1_1IO_1_1binary}{Open\+Mesh\+:\+:IO\+:\+:binary$<$ T $>$} ]Complete documentation of members  
\item[\label{todo__todo000029}%
\Hypertarget{todo__todo000029}%
Class \hyperlink{classOpenMesh_1_1VDPM_1_1VFront}{Open\+Mesh\+:\+:V\+D\+PM\+:\+:V\+Front} ]\hyperlink{classOpenMesh_1_1VDPM_1_1VFront}{V\+Front} documentation  
\item[\label{todo__todo000030}%
\Hypertarget{todo__todo000030}%
Class \hyperlink{classOpenMesh_1_1VDPM_1_1VHierarchyNode}{Open\+Mesh\+:\+:V\+D\+PM\+:\+:V\+Hierarchy\+Node} ]Complete documentation  
\item[\label{todo__todo000031}%
\Hypertarget{todo__todo000031}%
Class \hyperlink{classOpenMesh_1_1VDPM_1_1VHierarchyWindow}{Open\+Mesh\+:\+:V\+D\+PM\+:\+:V\+Hierarchy\+Window} ]\hyperlink{classOpenMesh_1_1VDPM_1_1VHierarchyWindow}{V\+Hierarchy\+Window} documentation  
\item[\label{todo__todo000032}%
\Hypertarget{todo__todo000032}%
Class \hyperlink{classOpenMesh_1_1VDPM_1_1ViewingParameters}{Open\+Mesh\+:\+:V\+D\+PM\+:\+:Viewing\+Parameters} ]Viewer\+Parameters documentation  
\item[\label{todo__todo000051}%
\Hypertarget{todo__todo000051}%
Class \hyperlink{classOpenVolumeMesh_1_1IO_1_1FileManager}{Open\+Volume\+Mesh\+:\+:IO\+:\+:File\+Manager} ]Implement binary file support  
\item[\label{todo__todo000036}%
\Hypertarget{todo__todo000036}%
Member \hyperlink{classScriptingPlugin_ae7d414d45dff60dd2cbd95bb6cc5147c}{Scripting\+Plugin\+:\+:plugins\+Initialized} ()]register objectid variable  
\item[\label{todo__todo000037}%
\Hypertarget{todo__todo000037}%
Member \hyperlink{classTopologyPlugin_ae808684d6fb48506b6cf40eed360f77d}{Topology\+Plugin\+:\+:add\+\_\+face} (Q\+Mouse\+Event $\ast$\+\_\+event)]\+: Support adding faces between objects ( and merging them into one ) 

\+: Support adding faces between objects ( and merging them into one )  
\item[\label{todo__todo000025}%
\Hypertarget{todo__todo000025}%
Page \hyperlink{vdpm_docu}{View Dependent Progressive Meshes} ]Complete V\+D\+PM documentation. 
\end{DoxyRefList}