{"id":27966448,"url":"https://github.com/pdal/rust","last_synced_at":"2025-05-07T20:18:50.789Z","repository":{"id":265789554,"uuid":"785766080","full_name":"PDAL/rust","owner":"PDAL","description":"This is a mirror of `georust/pdal`, where work is being done under the GeoRust organization. Please submit PRs and Issues there. 👍","archived":false,"fork":false,"pushed_at":"2024-04-12T15:39:34.000Z","size":712,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":6,"default_branch":"main","last_synced_at":"2025-05-07T20:18:45.311Z","etag":null,"topics":["geospatial","pdal","point-cloud"],"latest_commit_sha":null,"homepage":"https://github.com/georust/pdal","language":"Rust","has_issues":false,"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/PDAL.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":"CODE_OF_CONDUCT.md","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":"2024-04-12T15:21:30.000Z","updated_at":"2024-11-14T05:45:07.000Z","dependencies_parsed_at":"2024-12-02T00:15:20.081Z","dependency_job_id":null,"html_url":"https://github.com/PDAL/rust","commit_stats":null,"previous_names":["pdal/rust"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PDAL%2Frust","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PDAL%2Frust/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PDAL%2Frust/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PDAL%2Frust/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PDAL","download_url":"https://codeload.github.com/PDAL/rust/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252949223,"owners_count":21830154,"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":["geospatial","pdal","point-cloud"],"created_at":"2025-05-07T20:18:50.176Z","updated_at":"2025-05-07T20:18:50.778Z","avatar_url":"https://github.com/PDAL.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# PDAL Bindings for Rust\n\nThis crate provides Rust bindings for the [PDAL](https://pdal.io) library.\n\nTHIS IS A WORK IN PROGRESS.  The API is not stable (nor complete) and is subject to change.\n\nContributions welcome! Please open an issue or PR if you have any feedback or would like to contribute. \nCome discuss the project with other GeoRust contributors at our [Discord server](https://discord.gg/Fp2aape).\n\n## Minimalist Example\n\n```rust, no_run\nuse pdal::Pipeline;\nuse pdal_sys::core::DimTypeId;\nuse std::error::Error;\n\nfn main() -\u003e Result\u003c(), Box\u003cdyn Error\u003e\u003e {\n    // get filename from args\n    let filename = std::env::args().nth(1).expect(\"missing filename argument\");\n    let pipeline_json = format!(\n        r#\"\n        {{\n            \"pipeline\": [\n                {{\n                    \"type\": \"readers.las\",\n                    \"filename\": \"{filename}\"\n                }},\n                {{\n                    \"type\": \"writers.null\"\n                }}\n            ]\n        }}\n    \"#\n    );\n\n    let pipeline = Pipeline::new(pipeline_json)?;\n    let results = pipeline.execute()?;\n\n    let views = results.point_views()?;\n    let view = views.first().ok_or(\"no point view\")?;\n    for pid in view.point_ids().take(3) {\n        let x = view.point_value_as::\u003cf64\u003e(DimTypeId::X, pid)?;\n        let y = view.point_value_as::\u003cf64\u003e(DimTypeId::Y, pid)?;\n        let z = view.point_value_as::\u003cf64\u003e(DimTypeId::Z, pid)?;\n        println!(\"{}: ({}, {}, {})\", pid, x, y, z);\n    }\n\n    Ok(())\n}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpdal%2Frust","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpdal%2Frust","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpdal%2Frust/lists"}