{"id":19867488,"url":"https://github.com/erkaman/hole_fixer","last_synced_at":"2026-03-11T06:32:28.512Z","repository":{"id":141382891,"uuid":"123027610","full_name":"Erkaman/hole_fixer","owner":"Erkaman","description":" Demo implementation of smoothly filling holes in 3D meshes using surface fairing","archived":false,"fork":false,"pushed_at":"2018-02-26T21:24:29.000Z","size":3155,"stargazers_count":309,"open_issues_count":10,"forks_count":54,"subscribers_count":10,"default_branch":"master","last_synced_at":"2025-05-08T04:37:11.152Z","etag":null,"topics":["3d","c-plus-plus","demo","eigen","geometry","libigl","math","mesh","processing"],"latest_commit_sha":null,"homepage":"https://erkaman.github.io/posts/hole_filling.html","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Erkaman.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2018-02-26T20:39:34.000Z","updated_at":"2025-04-01T09:04:06.000Z","dependencies_parsed_at":null,"dependency_job_id":"1a31a35d-6943-4bf6-8696-65ad90a17fce","html_url":"https://github.com/Erkaman/hole_fixer","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Erkaman/hole_fixer","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Erkaman%2Fhole_fixer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Erkaman%2Fhole_fixer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Erkaman%2Fhole_fixer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Erkaman%2Fhole_fixer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Erkaman","download_url":"https://codeload.github.com/Erkaman/hole_fixer/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Erkaman%2Fhole_fixer/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30373471,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-11T06:09:32.197Z","status":"ssl_error","status_checked_at":"2026-03-11T06:09:17.086Z","response_time":84,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["3d","c-plus-plus","demo","eigen","geometry","libigl","math","mesh","processing"],"created_at":"2024-11-12T15:29:28.581Z","updated_at":"2026-03-11T06:32:28.476Z","avatar_url":"https://github.com/Erkaman.png","language":"C++","readme":"# hole_fixer - Demo implementation of smoothly filling holes in 3D meshes using surface fairing\n\n![](img/bunnymontage.png)\n\n![](img/spheremontage.png)\n\nAn implementation of Surface Fairing, that demonstrates the concepts explained in \n[my article](https://erkaman.github.io/posts/hole_filling.html).\n\nThis demo program allows you to specify a broken mesh with a hole, that the program will fix.\nBy running the command line\n\n```\nhole_fixer -in bunnyhole.off -out out.off -outfaces 8000 -upsample 2\n```\n\nThe above pictured bunny mesh will be fixed, and the fixed mesh is written to `out.off`.\n\nNOTE: the implementation is not by any means optimized, in order to keep it \nsimple and readable.\n\n## Building\n\nThe only dependencies are [libigl](https://github.com/libigl/libigl) and [Eigen](http://eigen.tuxfamily.org/index.php?title=Main_Page).\nBoth of which are included within this repository.\n\nWe use CMake for building. If on Linux or OS X, you can build it in the terminal by doing something like:\n\n```\nmkdir build \u0026\u0026 cd build \u0026\u0026 cmake .. \u0026\u0026 make\n```\n\nIf on Windows, create a `build/` folder, and run `cmake ..` from\ninside that folder. This will create a visual studio solution(if you\nhave visual studio). Launch that solution, and then simply compile the\nproject named `hole_fixer`.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ferkaman%2Fhole_fixer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ferkaman%2Fhole_fixer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ferkaman%2Fhole_fixer/lists"}