├── doc ├── html │ ├── bc_s.png │ ├── bdwn.png │ ├── doc.png │ ├── nav_f.png │ ├── nav_g.png │ ├── nav_h.png │ ├── open.png │ ├── tab_a.png │ ├── tab_b.png │ ├── tab_h.png │ ├── tab_s.png │ ├── closed.png │ ├── doxygen.png │ ├── index.html │ ├── sync_on.png │ ├── annotated.html │ ├── folderopen.png │ ├── hierarchy.html │ ├── splitbar.png │ ├── sync_off.png │ ├── folderclosed.png │ ├── search │ │ ├── close.png │ │ ├── mag_sel.png │ │ ├── search_l.png │ │ ├── search_m.png │ │ ├── search_r.png │ │ ├── all_11.js │ │ ├── classes_9.js │ │ ├── variables_6.js │ │ ├── all_1.js │ │ ├── functions_1.js │ │ ├── all_a.js │ │ ├── variables_1.js │ │ ├── variables_3.js │ │ ├── variables_5.js │ │ ├── variables_7.js │ │ ├── enums_0.js │ │ ├── enumvalues_0.js │ │ ├── enumvalues_1.js │ │ ├── enumvalues_2.js │ │ ├── variables_2.js │ │ ├── variables_8.js │ │ ├── functions_3.js │ │ ├── variables_0.js │ │ ├── functions_4.js │ │ ├── classes_0.js │ │ ├── functions_b.js │ │ ├── nomatches.html │ │ ├── searchdata.js │ │ ├── functions_9.js │ │ ├── all_4.js │ │ ├── classes_a.js │ │ ├── classes_4.js │ │ ├── classes_5.js │ │ ├── classes_8.js │ │ ├── classes_7.js │ │ ├── classes_6.js │ │ ├── functions_7.js │ │ ├── all_f.js │ │ ├── classes_2.js │ │ ├── functions_5.js │ │ ├── all_3.js │ │ ├── all_10.js │ │ ├── classes_1.js │ │ ├── all_0.html │ │ ├── all_1.html │ │ ├── all_2.html │ │ ├── all_3.html │ │ ├── all_4.html │ │ ├── all_5.html │ │ ├── all_6.html │ │ ├── all_7.html │ │ ├── all_8.html │ │ ├── all_9.html │ │ ├── all_a.html │ │ ├── all_b.html │ │ ├── all_c.html │ │ ├── all_d.html │ │ ├── all_e.html │ │ ├── all_f.html │ │ ├── all_10.html │ │ ├── all_11.html │ │ ├── enums_0.html │ │ ├── classes_0.html │ │ ├── classes_1.html │ │ ├── classes_2.html │ │ ├── classes_3.html │ │ ├── classes_4.html │ │ ├── classes_5.html │ │ ├── classes_6.html │ │ ├── classes_7.html │ │ ├── classes_8.html │ │ ├── classes_9.html │ │ ├── classes_a.html │ │ ├── enumvalues_0.html │ │ ├── enumvalues_1.html │ │ ├── enumvalues_2.html │ │ ├── functions_0.html │ │ ├── functions_1.html │ │ ├── functions_2.html │ │ ├── functions_3.html │ │ ├── functions_4.html │ │ ├── functions_5.html │ │ ├── functions_6.html │ │ ├── functions_7.html │ │ ├── functions_8.html │ │ ├── functions_9.html │ │ ├── functions_a.html │ │ ├── functions_b.html │ │ ├── functions_c.html │ │ ├── functions_d.html │ │ ├── variables_0.html │ │ ├── variables_1.html │ │ ├── variables_2.html │ │ ├── variables_3.html │ │ ├── variables_4.html │ │ ├── variables_5.html │ │ ├── variables_6.html │ │ ├── variables_7.html │ │ ├── variables_8.html │ │ ├── classes_3.js │ │ ├── all_c.js │ │ ├── functions_d.js │ │ ├── functions_a.js │ │ ├── all_5.js │ │ ├── functions_c.js │ │ ├── all_b.js │ │ ├── all_d.js │ │ ├── all_7.js │ │ ├── all_e.js │ │ ├── functions_8.js │ │ ├── all_2.js │ │ ├── functions_2.js │ │ ├── all_8.js │ │ ├── all_0.js │ │ └── functions_0.js │ ├── debug.log │ ├── visibility__solver_8h_source.html │ ├── classvisilib_1_1_visibility_solver.html │ ├── classvisilib_1_1_visibility_solver.png │ ├── visibility__exact__query_8h_source.html │ ├── classvisilib_1_1_silhouette_container.png │ ├── classvisilib_1_1_visibility_exact_query.png │ ├── visibility__aperture__finder_8h_source.html │ ├── classvisilib_1_1_i_visibility_exact_query.png │ ├── classvisilib_1_1_visibility_exact_query__.png │ ├── classvisilib_1_1_silhouette_container_embree.png │ ├── classvisilib_1_1_visibility_aperture_finder.html │ ├── classvisilib_1_1_visibility_aperture_finder.png │ ├── structvisilib_1_1_triangle_mesh_description.png │ ├── structvisilib_1_1_discrete_geometry_description.png │ ├── structvisilib_1_1_geometry_discrete_mesh_description.png │ ├── structvisilib_1_1_geometry_triangle_mesh_description.png │ ├── menu.js │ ├── functions_enum.html │ ├── dir_b6c2a257bfab6380ca9b3cb94b12cb25.html │ └── dir_a031cde05aa4de998632f6e6ef4c5e1a.html └── latex │ ├── structvisilib_1_1_intersect_context_multi_hit.tex │ ├── structvisilib_1_1_geometry_intersect_context_multi_hit.tex │ ├── structvisilib_1_1_silhouette_1_1_hash.tex │ ├── structvisilib_1_1_ray_multi_hit.tex │ ├── structvisilib_1_1_geometry_ray_multi_hit.tex │ ├── structvisilib_1_1_triangle_mesh_description.tex │ ├── structvisilib_1_1_geometry_triangle_mesh_description.tex │ ├── structvisilib_1_1_silhouette_edge.tex │ └── structvisilib_1_1_discrete_geometry_description.tex ├── paper └── paper_egsr_2005.pdf ├── visilib ├── visibility_solver.h ├── external │ └── convexHull │ │ └── convexHull.h ├── geometry_position_type.h ├── visilib_core.h ├── visibility_ray.h ├── geometry_aabbox.h ├── plucker_polytope_complex.h ├── geometry_mesh_description.h └── CMakeLists.txt ├── configure.sh ├── demo ├── external │ └── freeglut │ │ ├── x64 │ │ ├── freeglut.dll │ │ └── freeglut.lib │ │ ├── Win32 │ │ ├── freeglut.dll │ │ └── freeglut.lib │ │ ├── include │ │ └── GL │ │ │ ├── glut.h │ │ │ └── freeglut.h │ │ └── LICENSE.txt ├── CMakeLists.txt ├── demo_debug_visualisation_gl.h └── demo_helper.h ├── generateProject.sh ├── .github └── workflows │ └── c-cpp.yml ├── test ├── src │ ├── test_definition.h │ └── test_full.cpp └── CMakeLists.txt ├── cmake └── modules │ ├── FindGLUT.cmake │ ├── FindLEDA.cmake │ ├── FindEmbree.cmake │ └── FindCGAL.cmake └── generateProject.bat /doc/html/bc_s.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/bc_s.png -------------------------------------------------------------------------------- /doc/html/bdwn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/bdwn.png -------------------------------------------------------------------------------- /doc/html/doc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/doc.png -------------------------------------------------------------------------------- /doc/html/nav_f.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/nav_f.png -------------------------------------------------------------------------------- /doc/html/nav_g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/nav_g.png -------------------------------------------------------------------------------- /doc/html/nav_h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/nav_h.png -------------------------------------------------------------------------------- /doc/html/open.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/open.png -------------------------------------------------------------------------------- /doc/html/tab_a.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/tab_a.png -------------------------------------------------------------------------------- /doc/html/tab_b.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/tab_b.png -------------------------------------------------------------------------------- /doc/html/tab_h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/tab_h.png -------------------------------------------------------------------------------- /doc/html/tab_s.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/tab_s.png -------------------------------------------------------------------------------- /doc/html/closed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/closed.png -------------------------------------------------------------------------------- /doc/html/doxygen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/doxygen.png -------------------------------------------------------------------------------- /doc/html/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/index.html -------------------------------------------------------------------------------- /doc/html/sync_on.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/sync_on.png -------------------------------------------------------------------------------- /doc/html/annotated.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/annotated.html -------------------------------------------------------------------------------- /doc/html/folderopen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/folderopen.png -------------------------------------------------------------------------------- /doc/html/hierarchy.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/hierarchy.html -------------------------------------------------------------------------------- /doc/html/splitbar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/splitbar.png -------------------------------------------------------------------------------- /doc/html/sync_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/sync_off.png -------------------------------------------------------------------------------- /doc/html/folderclosed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/folderclosed.png -------------------------------------------------------------------------------- /doc/html/search/close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/search/close.png -------------------------------------------------------------------------------- /paper/paper_egsr_2005.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/paper/paper_egsr_2005.pdf -------------------------------------------------------------------------------- /doc/html/search/mag_sel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/search/mag_sel.png -------------------------------------------------------------------------------- /doc/html/search/search_l.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/search/search_l.png -------------------------------------------------------------------------------- /doc/html/search/search_m.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/search/search_m.png -------------------------------------------------------------------------------- /doc/html/search/search_r.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/search/search_r.png -------------------------------------------------------------------------------- /visilib/visibility_solver.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/visilib/visibility_solver.h -------------------------------------------------------------------------------- /configure.sh: -------------------------------------------------------------------------------- 1 | #! /bin/bash 2 | 3 | mkdir build 4 | cd build 5 | cmake cmake -DCMAKE_BUILD_TYPE=Debug .. 6 | cd .. 7 | -------------------------------------------------------------------------------- /demo/external/freeglut/x64/freeglut.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/demo/external/freeglut/x64/freeglut.dll -------------------------------------------------------------------------------- /demo/external/freeglut/x64/freeglut.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/demo/external/freeglut/x64/freeglut.lib -------------------------------------------------------------------------------- /visilib/external/convexHull/convexHull.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/visilib/external/convexHull/convexHull.h -------------------------------------------------------------------------------- /demo/external/freeglut/Win32/freeglut.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/demo/external/freeglut/Win32/freeglut.dll -------------------------------------------------------------------------------- /demo/external/freeglut/Win32/freeglut.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/demo/external/freeglut/Win32/freeglut.lib -------------------------------------------------------------------------------- /doc/html/debug.log: -------------------------------------------------------------------------------- 1 | [1226/181638.063:ERROR:directory_reader_win.cc(43)] FindFirstFile: The system cannot find the path specified. (0x3) 2 | -------------------------------------------------------------------------------- /doc/html/visibility__solver_8h_source.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/visibility__solver_8h_source.html -------------------------------------------------------------------------------- /doc/html/classvisilib_1_1_visibility_solver.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/classvisilib_1_1_visibility_solver.html -------------------------------------------------------------------------------- /doc/html/classvisilib_1_1_visibility_solver.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/classvisilib_1_1_visibility_solver.png -------------------------------------------------------------------------------- /doc/html/visibility__exact__query_8h_source.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/visibility__exact__query_8h_source.html -------------------------------------------------------------------------------- /doc/html/classvisilib_1_1_silhouette_container.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/classvisilib_1_1_silhouette_container.png -------------------------------------------------------------------------------- /doc/html/classvisilib_1_1_visibility_exact_query.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/classvisilib_1_1_visibility_exact_query.png -------------------------------------------------------------------------------- /doc/html/visibility__aperture__finder_8h_source.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/visibility__aperture__finder_8h_source.html -------------------------------------------------------------------------------- /doc/html/classvisilib_1_1_i_visibility_exact_query.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/classvisilib_1_1_i_visibility_exact_query.png -------------------------------------------------------------------------------- /doc/html/classvisilib_1_1_visibility_exact_query__.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/classvisilib_1_1_visibility_exact_query__.png -------------------------------------------------------------------------------- /doc/html/classvisilib_1_1_silhouette_container_embree.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/classvisilib_1_1_silhouette_container_embree.png -------------------------------------------------------------------------------- /doc/html/classvisilib_1_1_visibility_aperture_finder.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/classvisilib_1_1_visibility_aperture_finder.html -------------------------------------------------------------------------------- /doc/html/classvisilib_1_1_visibility_aperture_finder.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/classvisilib_1_1_visibility_aperture_finder.png -------------------------------------------------------------------------------- /doc/html/structvisilib_1_1_triangle_mesh_description.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/structvisilib_1_1_triangle_mesh_description.png -------------------------------------------------------------------------------- /doc/html/structvisilib_1_1_discrete_geometry_description.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/structvisilib_1_1_discrete_geometry_description.png -------------------------------------------------------------------------------- /doc/html/structvisilib_1_1_geometry_discrete_mesh_description.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/structvisilib_1_1_geometry_discrete_mesh_description.png -------------------------------------------------------------------------------- /doc/html/structvisilib_1_1_geometry_triangle_mesh_description.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dhaumont/visilib/HEAD/doc/html/structvisilib_1_1_geometry_triangle_mesh_description.png -------------------------------------------------------------------------------- /doc/html/search/all_11.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['zero',['Zero',['../classvisilib_1_1_math_plucker6.html#a5e37c518bdd1d8f00fe5e25fd52ea52a',1,'visilib::MathPlucker6']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /doc/html/search/classes_9.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['trianglemeshdescription',['TriangleMeshDescription',['../structvisilib_1_1_triangle_mesh_description.html',1,'visilib']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /doc/html/search/variables_6.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['org',['org',['../structvisilib_1_1_visibility_ray.html#a8c78b0461d9f6e5425c5e14fcd24a9d1',1,'visilib::VisibilityRay']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /doc/html/search/all_1.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['build',['build',['../classvisilib_1_1_plucker_polytope_builder.html#a408e2ce76e25ae9545abeb7babc51713',1,'visilib::PluckerPolytopeBuilder']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /doc/html/search/functions_1.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['build',['build',['../classvisilib_1_1_plucker_polytope_builder.html#a408e2ce76e25ae9545abeb7babc51713',1,'visilib::PluckerPolytopeBuilder']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /doc/html/search/all_a.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['normalarray',['normalArray',['../structvisilib_1_1_geometry_discrete_mesh_description.html#aaa05beffdab2fd2f4cf4ac28a86eaf3e',1,'visilib::GeometryDiscreteMeshDescription']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /doc/html/search/variables_1.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['facecount',['faceCount',['../structvisilib_1_1_geometry_discrete_mesh_description.html#a62095a1d44914be5e4876494c3301f1e',1,'visilib::GeometryDiscreteMeshDescription']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /doc/html/search/variables_3.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['indexarray',['indexArray',['../structvisilib_1_1_geometry_triangle_mesh_description.html#a161f5e6343b08d34bac9eb58b6ee6aa5',1,'visilib::GeometryTriangleMeshDescription']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /doc/html/search/variables_5.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['normalarray',['normalArray',['../structvisilib_1_1_geometry_discrete_mesh_description.html#aaa05beffdab2fd2f4cf4ac28a86eaf3e',1,'visilib::GeometryDiscreteMeshDescription']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /doc/html/search/variables_7.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['precision',['precision',['../structvisilib_1_1_visibility_exact_query_configuration.html#a85a72847cd60b3d5d41d0a893e439a71',1,'visilib::VisibilityExactQueryConfiguration']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /doc/html/search/enums_0.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['precisiontype',['PrecisionType',['../structvisilib_1_1_visibility_exact_query_configuration.html#a1cd44b0dffc3d51eb0bd5af35eeb9a8b',1,'visilib::VisibilityExactQueryConfiguration']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /generateProject.sh: -------------------------------------------------------------------------------- 1 | #! /bin/bash 2 | 3 | mkdir debug 4 | cd debug 5 | cmake cmake -DCMAKE_BUILD_TYPE=Debug .. 6 | make 7 | cd .. 8 | 9 | mkdir release 10 | cd release 11 | cmake cmake -DCMAKE_BUILD_TYPE=Release .. 12 | make 13 | cd .. 14 | 15 | -------------------------------------------------------------------------------- /doc/html/search/enumvalues_0.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['double',['DOUBLE',['../structvisilib_1_1_visibility_exact_query_configuration.html#a1cd44b0dffc3d51eb0bd5af35eeb9a8bae6d683564c0978e72ac4b6be27998aa5',1,'visilib::VisibilityExactQueryConfiguration']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /doc/html/search/enumvalues_1.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['exact',['EXACT',['../structvisilib_1_1_visibility_exact_query_configuration.html#a1cd44b0dffc3d51eb0bd5af35eeb9a8bad3b9971ac7b554145ebb1ee55bdd97c7',1,'visilib::VisibilityExactQueryConfiguration']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /doc/html/search/enumvalues_2.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['float',['FLOAT',['../structvisilib_1_1_visibility_exact_query_configuration.html#a1cd44b0dffc3d51eb0bd5af35eeb9a8ba804621a91ffab216263ead381509cbb9',1,'visilib::VisibilityExactQueryConfiguration']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /doc/html/search/variables_2.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['hyperspherenormalization',['hyperSphereNormalization',['../structvisilib_1_1_visibility_exact_query_configuration.html#ae3f308c718e6e7051c9d8a1d08065def',1,'visilib::VisibilityExactQueryConfiguration']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /doc/html/search/variables_8.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['representativelinesampling',['representativeLineSampling',['../structvisilib_1_1_visibility_exact_query_configuration.html#adadc6d7391bfcfdd0b8f20efe79c81cf',1,'visilib::VisibilityExactQueryConfiguration']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /doc/html/search/functions_3.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['displaystatistic',['displayStatistic',['../classvisilib_1_1_visibility_exact_query__.html#a7134e18dd518e8accb0f08e523149e6b',1,'visilib::VisibilityExactQuery_']]], 4 | ['dot',['dot',['../classvisilib_1_1_math_plucker6.html#af687399a207b6f747277436df1e11e52',1,'visilib::MathPlucker6']]] 5 | ]; 6 | -------------------------------------------------------------------------------- /doc/html/search/variables_0.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['detectapertureonly',['detectApertureOnly',['../structvisilib_1_1_visibility_exact_query_configuration.html#aea2fdde8a10663bb824ac5308a42b991',1,'visilib::VisibilityExactQueryConfiguration']]], 4 | ['dir',['dir',['../structvisilib_1_1_visibility_ray.html#ad3c5fe1430162ea249feb953f6a5a347',1,'visilib::VisibilityRay']]] 5 | ]; 6 | -------------------------------------------------------------------------------- /doc/html/search/functions_4.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['extractconnectedmeshfaces',['extractConnectedMeshFaces',['../classvisilib_1_1_geometry_occluder_set.html#af27ea9d9989db7c759054b8024317d58',1,'visilib::GeometryOccluderSet']]], 4 | ['extractsilhouette',['extractSilhouette',['../classvisilib_1_1_silhouette_processor.html#adf8cb49855ad70e3994ff65bc4740fb2',1,'visilib::SilhouetteProcessor']]] 5 | ]; 6 | -------------------------------------------------------------------------------- /doc/html/search/classes_0.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['democonfiguration',['DemoConfiguration',['../structvisilib_demo_1_1_demo_configuration.html',1,'visilibDemo']]], 4 | ['demodebugvisualisationgl',['DemoDebugVisualisationGl',['../classvisilib_demo_1_1_demo_debug_visualisation_gl.html',1,'visilibDemo']]], 5 | ['demohelper',['DemoHelper',['../classvisilib_demo_1_1_demo_helper.html',1,'visilibDemo']]] 6 | ]; 7 | -------------------------------------------------------------------------------- /.github/workflows/c-cpp.yml: -------------------------------------------------------------------------------- 1 | name: C/C++ CI 2 | 3 | on: 4 | push: 5 | branches: [ main ] 6 | pull_request: 7 | branches: [ main ] 8 | 9 | jobs: 10 | build: 11 | 12 | runs-on: ubuntu-latest 13 | 14 | steps: 15 | - uses: actions/checkout@v2 16 | - name: configure 17 | run: cmake . 18 | - name: make 19 | run: make 20 | - name: test 21 | run: ./test/visilibTest 22 | 23 | -------------------------------------------------------------------------------- /doc/html/search/functions_b.js: -------------------------------------------------------------------------------- 1 | var searchData= 2 | [ 3 | ['prepare',['prepare',['../classvisilib_1_1_geometry_occluder_set.html#a9ad0f12014c07ed08cdd6be981faf704',1,'visilib::GeometryOccluderSet::prepare()'],['../classvisilib_1_1_helper_triangle_mesh.html#a075a6a388607a78ec69f21562b43e4c2',1,'visilib::HelperTriangleMesh::prepare()'],['../classvisilib_1_1_silhouette_container_embree.html#ad3d6193f5484b3fb56096efd8a1230a8',1,'visilib::SilhouetteContainerEmbree::prepare()']]] 4 | ]; 5 | -------------------------------------------------------------------------------- /doc/html/search/nomatches.html: -------------------------------------------------------------------------------- 1 | 2 |
* polytope) 57 | { 58 | V_ASSERT(!hasPolytope()); 59 | mRoot = polytope; 60 | } 61 | 62 | PluckerPolyhedron
* getPolyhedron() { return mPolyhedron; } 63 | PluckerPolytope
* getRoot() { return mRoot; } 64 | private: 65 | 66 | PluckerPolyhedron
* mPolyhedron; 67 | PluckerPolytope
* mRoot;
68 | };
69 |
70 | template ::PluckerPolytopeComplex()
72 | {
73 | mRoot = nullptr;
74 | mPolyhedron = new PluckerPolyhedron ();
75 | }
76 |
77 | template ::~PluckerPolytopeComplex()
79 | {
80 | delete mRoot;
81 | delete mPolyhedron;
82 | }
83 | }
84 |
--------------------------------------------------------------------------------
/demo/demo_helper.h:
--------------------------------------------------------------------------------
1 | /*
2 | Visilib, an open source library for exact visibility computation.
3 | Copyright(C) 2021 by Denis Haumont
4 |
5 | This file is part of Visilib.
6 |
7 | Visilib is free software : you can redistribute it and/or modify
8 | it under the terms of the GNU General Public License as published by
9 | the Free Software Foundation, either version 3 of the License, or
10 | (at your option) any later version.
11 |
12 | Visilib is distributed in the hope that it will be useful,
13 | but WITHOUT ANY WARRANTY; without even the implied warranty of
14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.See the
15 | GNU General Public License for more details.
16 |
17 | You should have received a copy of the GNU General Public License
18 | along with Visilib. If not, see ';
29 | for (var i in data.children) {
30 | result+='
';
35 | }
36 | return result;
37 | }
38 |
39 | $('#main-nav').append(makeTree(menudata,relPath));
40 | $('#main-nav').children(':first').addClass('sm sm-dox').attr('id','main-menu');
41 | if (searchEnabled) {
42 | if (serverSide) {
43 | $('#main-menu').append('
21 |
22 |
30 |
23 |
28 |
29 |
24 |
27 |
65 |
69 |
72 | Generated by
73 |
74 | 1.8.15
75 |
76 |
77 |
78 |
--------------------------------------------------------------------------------
/visilib/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | # Visilib, an open source library for exact visibility computation.
2 | # Copyright(C) 2021 by Denis Haumont
3 | #
4 | # This file is part of Visilib.
5 | #
6 | # Visilib is free software : you can redistribute it and/or modify
7 | # it under the terms of the GNU General Public License as published by
8 | # the Free Software Foundation, either version 3 of the License, or
9 | # (at your option) any later version.
10 | #
11 | # Visilib is distributed in the hope that it will be useful,
12 | # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.See the
14 | # GNU General Public License for more details.
15 | #
16 | # You should have received a copy of the GNU General Public License
17 | # along with Visilib. If not, see
21 |
22 |
30 |
23 |
28 |
29 |
24 |
27 |
75 | Generated by
76 |
77 | 1.8.15
78 |
79 |
80 |
81 |
--------------------------------------------------------------------------------
/doc/html/dir_a031cde05aa4de998632f6e6ef4c5e1a.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
21 |
22 |
30 |
23 |
28 |
29 |
24 |
27 |
75 | Generated by
76 |
77 | 1.8.15
78 |
79 |
80 |
81 |
--------------------------------------------------------------------------------
/doc/latex/structvisilib_1_1_discrete_geometry_description.tex:
--------------------------------------------------------------------------------
1 | \hypertarget{structvisilib_1_1_discrete_geometry_description}{}\section{visilib\+::Discrete\+Geometry\+Description Struct Reference}
2 | \label{structvisilib_1_1_discrete_geometry_description}\index{visilib::DiscreteGeometryDescription@{visilib::DiscreteGeometryDescription}}
3 |
4 |
5 | Description of a discrete geometry (ie a mesh).
6 |
7 |
8 |
9 |
10 | {\ttfamily \#include $<$visilib.\+h$>$}
11 |
12 | Inheritance diagram for visilib\+::Discrete\+Geometry\+Description\+:\begin{figure}[H]
13 | \begin{center}
14 | \leavevmode
15 | \includegraphics[height=2.000000cm]{structvisilib_1_1_discrete_geometry_description}
16 | \end{center}
17 | \end{figure}
18 | \subsection*{Public Member Functions}
19 | \begin{DoxyCompactItemize}
20 | \item
21 | \mbox{\Hypertarget{structvisilib_1_1_discrete_geometry_description_a69b9b700b3f03b54f919c4b90da51cdf}\label{structvisilib_1_1_discrete_geometry_description_a69b9b700b3f03b54f919c4b90da51cdf}}
22 | virtual std\+::vector$<$ int $>$ {\bfseries get\+Indices} (size\+\_\+t a\+Face) const =0
23 | \item
24 | \mbox{\Hypertarget{structvisilib_1_1_discrete_geometry_description_a3a41016600ed8cd641fbbee519c17584}\label{structvisilib_1_1_discrete_geometry_description_a3a41016600ed8cd641fbbee519c17584}}
25 | virtual size\+\_\+t {\bfseries get\+Index\+Count} () const =0
26 | \end{DoxyCompactItemize}
27 | \subsection*{Public Attributes}
28 | \begin{DoxyCompactItemize}
29 | \item
30 | \mbox{\Hypertarget{structvisilib_1_1_discrete_geometry_description_af027f5588becd10f57feacdd969c36e8}\label{structvisilib_1_1_discrete_geometry_description_af027f5588becd10f57feacdd969c36e8}}
31 | size\+\_\+t \mbox{\hyperlink{structvisilib_1_1_discrete_geometry_description_af027f5588becd10f57feacdd969c36e8}{vertex\+Count}}
32 | \begin{DoxyCompactList}\small\item\em Number of vertices. \end{DoxyCompactList}\item
33 | \mbox{\Hypertarget{structvisilib_1_1_discrete_geometry_description_ad3e0036614577235871af289b06e9153}\label{structvisilib_1_1_discrete_geometry_description_ad3e0036614577235871af289b06e9153}}
34 | size\+\_\+t \mbox{\hyperlink{structvisilib_1_1_discrete_geometry_description_ad3e0036614577235871af289b06e9153}{face\+Count}}
35 | \begin{DoxyCompactList}\small\item\em Number of faces. \end{DoxyCompactList}\item
36 | \mbox{\Hypertarget{structvisilib_1_1_discrete_geometry_description_ae4c6fc2ef794048d08127ffec2963ff9}\label{structvisilib_1_1_discrete_geometry_description_ae4c6fc2ef794048d08127ffec2963ff9}}
37 | const float $\ast$ \mbox{\hyperlink{structvisilib_1_1_discrete_geometry_description_ae4c6fc2ef794048d08127ffec2963ff9}{vertex\+Array}}
38 | \begin{DoxyCompactList}\small\item\em Pointer to the vertex table. \end{DoxyCompactList}\item
39 | \mbox{\Hypertarget{structvisilib_1_1_discrete_geometry_description_acfd5e09da7d73d29b54380455db56e37}\label{structvisilib_1_1_discrete_geometry_description_acfd5e09da7d73d29b54380455db56e37}}
40 | const float $\ast$ \mbox{\hyperlink{structvisilib_1_1_discrete_geometry_description_acfd5e09da7d73d29b54380455db56e37}{normal\+Array}}
41 | \begin{DoxyCompactList}\small\item\em Pointer to the normal table (optional) \end{DoxyCompactList}\end{DoxyCompactItemize}
42 |
43 |
44 | \subsection{Detailed Description}
45 | Description of a discrete geometry (ie a mesh).
46 |
47 | The documentation for this struct was generated from the following files\+:\begin{DoxyCompactItemize}
48 | \item
49 | C\+:/code/github/visilib/visilib/visilib.\+h\item
50 | C\+:/code/github/visilib/visilib/visilib.\+hpp\end{DoxyCompactItemize}
51 |
--------------------------------------------------------------------------------
/doc/html/search/all_0.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['add',['add',['../classvisilib_1_1_helper_triangle_mesh_container.html#ab29cb0e681a4cc58ad6a31c08ba371e5',1,'visilib::HelperTriangleMeshContainer::add()'],['../classvisilib_1_1_plucker_polyhedron.html#a6c9fa6964a332bd0bf42b69835088223',1,'visilib::PluckerPolyhedron::add()']]],
4 | ['addedge',['addEdge',['../classvisilib_1_1_plucker_polytope.html#af3cfb4c40c20fe5eff92efaf2f1820a0',1,'visilib::PluckerPolytope::addEdge()'],['../classvisilib_1_1_silhouette.html#a64735427a7ab9ae48d9d2b4f16230868',1,'visilib::Silhouette::addEdge()']]],
5 | ['addedges',['addEdges',['../classvisilib_1_1_plucker_polytope_builder.html#a7af3c78c82093b0b1cebff631edc1387',1,'visilib::PluckerPolytopeBuilder']]],
6 | ['addextremalstabbingline',['addExtremalStabbingLine',['../classvisilib_1_1_helper_visual_debugger.html#accd7a72ba6f9efc0078f22ec9eb53312',1,'visilib::HelperVisualDebugger::addExtremalStabbingLine()'],['../classvisilib_1_1_plucker_polytope.html#a1fa9e55e2b8058ab39d94c3b5ff87c53',1,'visilib::PluckerPolytope::addExtremalStabbingLine()']]],
7 | ['addextremalstabbinglines',['addExtremalStabbingLines',['../classvisilib_1_1_plucker_polytope_builder.html#adc471ddde614669033182397d6be20d7',1,'visilib::PluckerPolytopeBuilder']]],
8 | ['addrandomness',['addRandomness',['../classvisilib_1_1_helper_synthetic_mesh_builder.html#a180737b641ccd8da503b6416559d3153',1,'visilib::HelperSyntheticMeshBuilder::addRandomness(HelperTriangleMesh *mesh, float randomness)'],['../classvisilib_1_1_helper_synthetic_mesh_builder.html#aa9390281029ec6f6c72c07eec8a6e59b',1,'visilib::HelperSyntheticMeshBuilder::addRandomness(std::vector< MathVector3f > &vertices, float randomness)']]],
9 | ['addremovededge',['addRemovedEdge',['../classvisilib_1_1_helper_visual_debugger.html#aff3c8cf06f92da983c9de380e58817c4',1,'visilib::HelperVisualDebugger']]],
10 | ['addremovedtriangle',['addRemovedTriangle',['../classvisilib_1_1_helper_visual_debugger.html#a69bc1d302d408341e1443acd0655f939',1,'visilib::HelperVisualDebugger']]],
11 | ['addsamplingline',['addSamplingLine',['../classvisilib_1_1_helper_visual_debugger.html#a829462582410bd53ecebfa0ee7bc609a',1,'visilib::HelperVisualDebugger']]],
12 | ['addsilhouette',['addSilhouette',['../classvisilib_1_1_plucker_polytope.html#a1d9cb1f11e21d670134becc102cff168',1,'visilib::PluckerPolytope::addSilhouette()'],['../classvisilib_1_1_silhouette_processor.html#aaf5d17542177191ea02b748f88c957be',1,'visilib::SilhouetteProcessor::addSilhouette()']]],
13 | ['addsourcepolygonedgesashyperplanes',['addSourcePolygonEdgesAsHyperplanes',['../classvisilib_1_1_plucker_polytope_builder.html#a5074ddd2e6fd2a48cb5770cd6af067f9',1,'visilib::PluckerPolytopeBuilder']]],
14 | ['addstabbingline',['addStabbingLine',['../classvisilib_1_1_helper_visual_debugger.html#a60c0d6368a506b0a352b0ca5bc2e1255',1,'visilib::HelperVisualDebugger']]],
15 | ['addtofacetsdescription',['addToFacetsDescription',['../classvisilib_1_1_plucker_polyhedron.html#a027bd5891e7b3a091549bfc8865ae9aa',1,'visilib::PluckerPolyhedron']]],
16 | ['arepolygonsvisible',['arePolygonsVisible',['../classvisilib_1_1_visibility_exact_query__.html#a615c47cec68794e091d30852e959dbb9',1,'visilib::VisibilityExactQuery_']]],
17 | ['attachvisualisationdebugger',['attachVisualisationDebugger',['../classvisilib_1_1_silhouette_processor.html#aac871de2acba542af88585a6ae66fe0d',1,'visilib::SilhouetteProcessor::attachVisualisationDebugger()'],['../classvisilib_1_1_visibility_exact_query__.html#aaf24602cc5844a5ef5f7ae6fe3df0f56',1,'visilib::VisibilityExactQuery_::attachVisualisationDebugger()']]]
18 | ];
19 |
--------------------------------------------------------------------------------
/doc/html/search/functions_0.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['add',['add',['../classvisilib_1_1_helper_triangle_mesh_container.html#ab29cb0e681a4cc58ad6a31c08ba371e5',1,'visilib::HelperTriangleMeshContainer::add()'],['../classvisilib_1_1_plucker_polyhedron.html#a6c9fa6964a332bd0bf42b69835088223',1,'visilib::PluckerPolyhedron::add()']]],
4 | ['addedge',['addEdge',['../classvisilib_1_1_plucker_polytope.html#af3cfb4c40c20fe5eff92efaf2f1820a0',1,'visilib::PluckerPolytope::addEdge()'],['../classvisilib_1_1_silhouette.html#a64735427a7ab9ae48d9d2b4f16230868',1,'visilib::Silhouette::addEdge()']]],
5 | ['addedges',['addEdges',['../classvisilib_1_1_plucker_polytope_builder.html#a7af3c78c82093b0b1cebff631edc1387',1,'visilib::PluckerPolytopeBuilder']]],
6 | ['addextremalstabbingline',['addExtremalStabbingLine',['../classvisilib_1_1_helper_visual_debugger.html#accd7a72ba6f9efc0078f22ec9eb53312',1,'visilib::HelperVisualDebugger::addExtremalStabbingLine()'],['../classvisilib_1_1_plucker_polytope.html#a1fa9e55e2b8058ab39d94c3b5ff87c53',1,'visilib::PluckerPolytope::addExtremalStabbingLine()']]],
7 | ['addextremalstabbinglines',['addExtremalStabbingLines',['../classvisilib_1_1_plucker_polytope_builder.html#adc471ddde614669033182397d6be20d7',1,'visilib::PluckerPolytopeBuilder']]],
8 | ['addrandomness',['addRandomness',['../classvisilib_1_1_helper_synthetic_mesh_builder.html#a180737b641ccd8da503b6416559d3153',1,'visilib::HelperSyntheticMeshBuilder::addRandomness(HelperTriangleMesh *mesh, float randomness)'],['../classvisilib_1_1_helper_synthetic_mesh_builder.html#aa9390281029ec6f6c72c07eec8a6e59b',1,'visilib::HelperSyntheticMeshBuilder::addRandomness(std::vector< MathVector3f > &vertices, float randomness)']]],
9 | ['addremovededge',['addRemovedEdge',['../classvisilib_1_1_helper_visual_debugger.html#aff3c8cf06f92da983c9de380e58817c4',1,'visilib::HelperVisualDebugger']]],
10 | ['addremovedtriangle',['addRemovedTriangle',['../classvisilib_1_1_helper_visual_debugger.html#a69bc1d302d408341e1443acd0655f939',1,'visilib::HelperVisualDebugger']]],
11 | ['addsamplingline',['addSamplingLine',['../classvisilib_1_1_helper_visual_debugger.html#a829462582410bd53ecebfa0ee7bc609a',1,'visilib::HelperVisualDebugger']]],
12 | ['addsilhouette',['addSilhouette',['../classvisilib_1_1_plucker_polytope.html#a1d9cb1f11e21d670134becc102cff168',1,'visilib::PluckerPolytope::addSilhouette()'],['../classvisilib_1_1_silhouette_processor.html#aaf5d17542177191ea02b748f88c957be',1,'visilib::SilhouetteProcessor::addSilhouette()']]],
13 | ['addsourcepolygonedgesashyperplanes',['addSourcePolygonEdgesAsHyperplanes',['../classvisilib_1_1_plucker_polytope_builder.html#a5074ddd2e6fd2a48cb5770cd6af067f9',1,'visilib::PluckerPolytopeBuilder']]],
14 | ['addstabbingline',['addStabbingLine',['../classvisilib_1_1_helper_visual_debugger.html#a60c0d6368a506b0a352b0ca5bc2e1255',1,'visilib::HelperVisualDebugger']]],
15 | ['addtofacetsdescription',['addToFacetsDescription',['../classvisilib_1_1_plucker_polyhedron.html#a027bd5891e7b3a091549bfc8865ae9aa',1,'visilib::PluckerPolyhedron']]],
16 | ['arepolygonsvisible',['arePolygonsVisible',['../classvisilib_1_1_visibility_exact_query__.html#a615c47cec68794e091d30852e959dbb9',1,'visilib::VisibilityExactQuery_']]],
17 | ['attachvisualisationdebugger',['attachVisualisationDebugger',['../classvisilib_1_1_silhouette_processor.html#aac871de2acba542af88585a6ae66fe0d',1,'visilib::SilhouetteProcessor::attachVisualisationDebugger()'],['../classvisilib_1_1_visibility_exact_query__.html#aaf24602cc5844a5ef5f7ae6fe3df0f56',1,'visilib::VisibilityExactQuery_::attachVisualisationDebugger()']]]
18 | ];
19 |
--------------------------------------------------------------------------------