{"id":34967839,"url":"https://github.com/bgmeulem/reconstruct_carto","last_synced_at":"2026-05-25T14:33:09.304Z","repository":{"id":247306103,"uuid":"401741744","full_name":"bgmeulem/Reconstruct_CARTO","owner":"bgmeulem","description":"Reconstructs a simulatable 3D mesh from in-vivo CARTO mapping data","archived":false,"fork":false,"pushed_at":"2021-12-03T14:47:53.000Z","size":4149,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-09-09T15:31:12.014Z","etag":null,"topics":["biophysics","meshing","python","simulations","simulations-physics"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bgmeulem.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-08-31T14:52:56.000Z","updated_at":"2025-07-07T05:31:56.000Z","dependencies_parsed_at":"2024-07-08T01:44:42.651Z","dependency_job_id":null,"html_url":"https://github.com/bgmeulem/Reconstruct_CARTO","commit_stats":null,"previous_names":["bgmeulem/reconstruct_carto"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/bgmeulem/Reconstruct_CARTO","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bgmeulem%2FReconstruct_CARTO","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bgmeulem%2FReconstruct_CARTO/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bgmeulem%2FReconstruct_CARTO/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bgmeulem%2FReconstruct_CARTO/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bgmeulem","download_url":"https://codeload.github.com/bgmeulem/Reconstruct_CARTO/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bgmeulem%2FReconstruct_CARTO/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28064486,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-12-26T02:00:06.189Z","response_time":55,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["biophysics","meshing","python","simulations","simulations-physics"],"created_at":"2025-12-26T23:21:16.562Z","updated_at":"2025-12-26T23:21:17.118Z","avatar_url":"https://github.com/bgmeulem.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Reconstruct_CARTO\nThis repository provides code capable of reconstructing a simulatable 3D mesh from clinical CARTO mapping data, providing control over mesh resolution, \nconduction velocity distributions and non-conductive regions. The mesh thickness is currently fixed at 5 mm\n\n\u003cp align=\"center\"\u003e\n\u003cimg src=https://media0.giphy.com/media/bZM2OaOQb4HCVymzna/giphy.gif?cid=790b76112533f1a2f99b476d6833aa55d4b4c8ef9e3227b2\u0026rid=giphy.gif\u0026ct=g /\u003e\n\u003c/p\u003e\n\n# Requirements:\nSome requirements are not automatically installable. These requirements are:\n- [tetgen 1.6.0](http://www.wias-berlin.de/software/index.jsp?id=TetGen\u0026lang=1#Download) ([Download here](http://www.wias-berlin.de/software/tetgen/download2.jsp))\n  - The ```tetgen``` command should be aliased to the tetgen executable, located at\n```\u003ctetgen_installation_folder\u003e/tetgen1.6.0/build/tetgen```\n- [PyMesh 0.3](https://pymesh.readthedocs.io/en/latest/index.html)  ([Download here](https://pymesh.readthedocs.io/en/latest/installation.html))\n  - Do **NOT** install PyMesh with pip. This is another module with the same name. Download, build and install according to the setup as provided by the PyMesh docs.\n  - Installing the third-party dependencies can be done as specified in the docs, but also by running ```./build.py all``` in the directory ```third_party```.\n\n\nTo install the remaining requirements, run\n```shell\npip install -r requirements.txt\n```\nThis will install the following modules, or update them if they are not already installed:\n- [PyVista](https://docs.pyvista.org/getting-started/index.html)\n- tqdm\n- matplotlib\n- numpy\n- sklearn\n- pandas\n\n\n# Usage\n**Reconstructing** involves taking an input `.mesh` file and making it into a tetrahedron mesh with user-defined \nresolution. Conduction velocities can already be interpolated on this mesh if a .csv file containing point coordinates \nand speed values is passed as an optional argument.\n```shell\npython reconstruct.py \u003ccarto name\u003e --\u003cspeed_file\u003e\n```\n**Interpolating conduction velocities** can also be done after reconstruction, e.g. in case you want to select\nnon-conductive regions on the mesh *after* the reconstruction. To this end, a .csv file with point coordinates and\nconduction velocity values need to be passed as an argument to the runfile `apply_cv.py`.\n```shell\npython apply_cv.py \u003creconstructed .vtk mesh name\u003e --\u003cspeed_file\u003e --\u003cwrite_adjust\u003e --\u003cregion_dir\u003e  --\u003cncv\u003e --\u003cspeed_col\u003e --\u003cwriteVTK\u003e\n```\n\nKeep in mind that using command-line arguments will override any setting defined in the `settings.ini` file.\n\nAlternatively, if you want full control over the mesh reconstruction and its intermediate steps, you can also import the\nCartoMesh class and its dependencies. This provides more control over the reconstruction process than just the two \nrunfiles `reconstruct.py` and `apply_cv.py` along with the settings file `settings.ini`.\n```python\n\u003e\u003e\u003e from carto_mesh import *\n\u003e\u003e\u003e m = CartoMesh('filename.mesh')\n\u003e\u003e\u003e m.reconstruct()\n```\n\n# Documentation\nDocumentation can be found [here](https://bgmeulem.github.io/Reconstruct_CARTO/html/index.html)\n\n# Contact\nFeel free to report any bugs, issues or propose features either directly via github, or per [mail](mailto:bjorge1997@hotmail.com?subject=[GitHub]%20Reconstruct_CARTO:%20bug%20report%20/%20feature%20suggestion)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbgmeulem%2Freconstruct_carto","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbgmeulem%2Freconstruct_carto","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbgmeulem%2Freconstruct_carto/lists"}