{"id":13423787,"url":"https://github.com/mdsumner/gibble","last_synced_at":"2025-04-12T14:53:14.924Z","repository":{"id":56936352,"uuid":"99008474","full_name":"mdsumner/gibble","owner":"mdsumner","description":"Geometry map of component paths","archived":false,"fork":false,"pushed_at":"2020-05-18T13:09:51.000Z","size":36907,"stargazers_count":6,"open_issues_count":4,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-26T09:21:58.624Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://mdsumner.github.io/gibble/","language":"C++","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/mdsumner.png","metadata":{"files":{"readme":"README.Rmd","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-08-01T14:11:00.000Z","updated_at":"2023-10-26T15:05:12.000Z","dependencies_parsed_at":"2022-08-21T07:20:46.072Z","dependency_job_id":null,"html_url":"https://github.com/mdsumner/gibble","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mdsumner%2Fgibble","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mdsumner%2Fgibble/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mdsumner%2Fgibble/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mdsumner%2Fgibble/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mdsumner","download_url":"https://codeload.github.com/mdsumner/gibble/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248586227,"owners_count":21128995,"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":[],"created_at":"2024-07-31T00:00:42.421Z","updated_at":"2025-04-12T14:53:09.915Z","avatar_url":"https://github.com/mdsumner.png","language":"C++","funding_links":[],"categories":["C++"],"sub_categories":[],"readme":"---\noutput: github_document\n---\n\n\u003c!-- README.md is generated from README.Rmd. Please edit that file --\u003e\n\n```{r, echo = FALSE}\nknitr::opts_chunk$set(\n  collapse = TRUE,\n  comment = \"#\u003e\",\n  fig.path = \"README-\"\n)\n```\n\n[![Build Status](http://badges.herokuapp.com/travis/mdsumner/gibble?branch=master\u0026env=BUILD_NAME=trusty_release\u0026label=ubuntu)](https://travis-ci.org/mdsumner/gibble)\n[![Build Status](http://badges.herokuapp.com/travis/mdsumner/gibble?branch=master\u0026env=BUILD_NAME=osx_release\u0026label=osx)](https://travis-ci.org/mdsumner/gibble) \n[![AppVeyor Build Status](https://ci.appveyor.com/api/projects/status/github/mdsumner/gibble?branch=master\u0026svg=true)](https://ci.appveyor.com/project/mdsumner/gibble)\n[![Coverage Status](https://img.shields.io/codecov/c/github/mdsumner/gibble/master.svg)](https://codecov.io/github/mdsumner/gibble?branch=master)\n [![CRAN status](https://www.r-pkg.org/badges/version/gibble)](https://cran.r-project.org/package=gibble)\n [![cran checks](https://cranchecks.info/badges/worst/gibble)](https://cran.r-project.org/web/checks/check_results_gibble.html)\n [![Downloads](http://cranlogs.r-pkg.org/badges/gibble?color=brightgreen)](http://www.r-pkg.org/pkg/gibble)\n\n# gibble\n\nThe goal of gibble is to provide a straightforward map of path-based data\nstructures. Paths are connected linear sequences of coordinates, otherwise known as *lines*. Structured spatial data includes *objects* composed of *paths*, which are islands, holes within island, lines, and points. Polygons require an extra grouping level *subobject* to ensure holes are nested within their island, but this is ignored for other types. \n\nThe map is simply a record of the path, its size (number of vertices and geometric dimension), its groupings (which object and subobject), and its type (something like \"polygon\", \"line\", \"point\").  Internally a bare functionality works with matrices and all numeric values, but gibble then turns this set of values into a data frame where entities can be labelled arbitrarily. \n\nSequential linear structures are not optimal for many operations when\nworking with spatial data, and in particular they cannot describe surfaces\nin 3D geometry because they are inherently, *topologically*, one-dimensional. Gibble provides a simple bridge between\npath and primitive types, which do generalize to any topological dimension. Gibble considers a point to \nbe a degenerate path, so that the path concept is consistent for any *simple features*-analogue. \n\nThe original impetus for gibble was to illustrate how basic topological editing might be provided via the [mapedit package]( https://CRAN.R-project.org/package=mapedit), and is used to consolidate the geometry decomposition tools in [silicate](https://github.com/hypertidy/silicate). \n\n\n---\nPlease note that this project is released with a [Contributor Code of Conduct](https://github.com/mdsumner/gibble/blob/master/CODE_OF_CONDUCT.md). By participating in this project you agree to abide by its terms.\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmdsumner%2Fgibble","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmdsumner%2Fgibble","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmdsumner%2Fgibble/lists"}