{"id":21854784,"url":"https://github.com/nandite/pclwalkerviewer","last_synced_at":"2026-05-19T02:37:13.960Z","repository":{"id":217091455,"uuid":"554908708","full_name":"Nandite/PclWalkerViewer","owner":"Nandite","description":"PclWalkerViewer is a C++20 utility executable that walk (recursively on demand) a directory and sequentially display the point clouds its contains into a PCL 3D viewer. It supports PCD and PLY format. The viewer is controlled by keyboard inputs.","archived":false,"fork":false,"pushed_at":"2022-11-01T17:32:35.000Z","size":4152,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-26T13:43:56.742Z","etag":null,"topics":["3d-viewer","3d-visualization","cpp","cpp20","lidar","lidar-point-cloud","pcd","pcl","pcl-library","perception","ply","point-cloud","pointcloud","robotics","stl","vizualisation"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Nandite.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,"roadmap":null,"authors":null}},"created_at":"2022-10-20T15:55:15.000Z","updated_at":"2022-11-03T13:38:48.000Z","dependencies_parsed_at":"2024-01-14T14:45:41.989Z","dependency_job_id":null,"html_url":"https://github.com/Nandite/PclWalkerViewer","commit_stats":null,"previous_names":["nandite/pclwalkerviewer"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nandite%2FPclWalkerViewer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nandite%2FPclWalkerViewer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nandite%2FPclWalkerViewer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nandite%2FPclWalkerViewer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Nandite","download_url":"https://codeload.github.com/Nandite/PclWalkerViewer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244852681,"owners_count":20521159,"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","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-viewer","3d-visualization","cpp","cpp20","lidar","lidar-point-cloud","pcd","pcl","pcl-library","perception","ply","point-cloud","pointcloud","robotics","stl","vizualisation"],"created_at":"2024-11-28T02:11:18.702Z","updated_at":"2026-05-19T02:37:08.927Z","avatar_url":"https://github.com/Nandite.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"PclWalkerViewer\n===============\n\n\u003cp align=\"center\"\u003e\u003cimg src=\"res/logo_pcl.png\" width=\"300\" height=\"100\"/\u003e\u003c/p\u003e\n\n[![][license-image]][license]\n![][platform-image]\n\n[license-image]: https://img.shields.io/badge/license-MIT-green.svg?style=flat-square\n[license]: https://github.com/Nandite/PclWalkerViewer/blob/master/LICENSE\n\n[platform-image]: https://img.shields.io/badge/platorms-linux64%20%7C%20osx-lightgrey?style=flat-square\n\nPclWalkerViewer is a C++20 utility executable that walk (recursively on demand) a directory and sequentially display\nthe point clouds its contains into a PCL 3D viewer. It supports PCD and PLY format.\nThe viewer is controlled by keyboard inputs.\n\n![](res/PclWalkerViewer.gif)\n\n## Build and install\n\n```sh\nmkdir build \u0026\u0026 cd build \u0026\u0026\\\ncmake -DCMAKE_BUILD_TYPE=Release .. \u0026\u0026\\\nmake \u0026\u0026\\\nsudo make install\n```\n## Usage\n\nUpon call, you need to provide the directory to walk into and search clouds:\n\n```sh\npcl_walker_viewer -d /directory/to/walk\n```\n\nBy default, the walker will only search for clouds into the provided directory. However, using the _**-r**_ option, the walker\nwill recursively descend into subdirectories and search for clouds into them:\n\n```sh\npcl_walker_viewer -r -d /directory/to/walk\n```\nor (using long options)\n```sh\npcl_walker_viewer --recursive --directory /directory/to/walk\n```\n\n### Keymap\n\nYou can control the viewer using the following inputs of the keyboard:\n- [\u003c-] [-\u003e] (Left or Right arrow) to display the previous/next cloud\n- [d] to change the color of the cloud\n- [t] to toggle the display of origin coordinate system\n- [Up] to increase the size of the origin coordinate system\n- [Down] to decrease the size of the origin coordinate system\n\n### Load strategy\n\nTwo strategies for the loading the clouds are supported:\n- **Immediate**: Using this strategy, the walker will load into memory all the found clouds. This strategy offer quicker reaction\ntime from the viewer when displaying the next or previous cloud, especially for large clouds. It comes however at \nthe cost of more memory consumption.\n- **Just in time**: This strategy will load the clouds in memory only when the viewer need to display them. It is better when using\nvery large clouds on a system with limited memory. It comes however with more latency when requesting to display the next or previous\ncloud as the system has to first load the cloud into memory.\n\nBy default, the system operates with the **Just in time** strategy. The strategy can be selected using the _**-s**_ option:\n```sh\npcl_walker_viewer -r -d /directory/to/walk -s immediate\n```\nor\n\n```sh\npcl_walker_viewer -r -d /directory/to/walk -s jit\n```\n\n### Auto focus\n\nUsing the option _**--auto-focus**_, the camera will automatically focus on a cloud when\nloaded. This functionality is disabled by default.\n\n```sh\npcl_walker_viewer -r -d /directory/to/walk --auto-focus\n```\n\n## Dependencies\n\n- At least [Point Cloud Libary](https://www.pointclouds.org/) 1.9.\n- At least [Boost](https://www.boost.org/) 1.71.0.\n- A compiler supporting [C++20](https://en.cppreference.com/w/cpp/compiler_support/20) (concepts and range libraries are required).\n\n## Feedback\n\nDon't hesitate if you have any suggestions for improving this project, or if you find any error. I will be glad to\nhear from you. Contributions are welcomed :)\n\n## License\n\nDistributed under the MIT Software License (X11 license).\nSee accompanying file LICENSE.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnandite%2Fpclwalkerviewer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnandite%2Fpclwalkerviewer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnandite%2Fpclwalkerviewer/lists"}