Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[c++] Geometry dataframe #3201

Draft
wants to merge 7 commits into
base: main
Choose a base branch
from

Conversation

XanthosXanthopoulos
Copy link
Collaborator

This PR adds a C++ implementation for SOMAGeometryDataFrame. The implementation differs from other SOMAArray derived objects in a few areas:

  • SOMAGeometryDataFrame requires two schemas to create itself, one schema similar to all other objects and a schema for the spatial axes. The second schema is necessary to create some additional internal dimension to allow indexing for geometry data.
  • SOMAGeometryDataFrame can transform geometry data from a list of vertices to the on-disk WKB format automatically. Specifically if the array of data contains a list of vertices in the geometry column (opposed to a binary buffer), the WKB buffer as well as any additional index column are generated automatically. This feature allows both R and Python APIs to behave the same and does not require from them additional dependencies to construct the binary buffers. Moreover in case the indexing for SOMAGeometryDataFrame changes in the future minor changes should be necessary to the R and Python APIs.

Copy link

codecov bot commented Oct 18, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 83.30%. Comparing base (58ca2d0) to head (60e22a3).

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #3201      +/-   ##
==========================================
+ Coverage   83.19%   83.30%   +0.10%     
==========================================
  Files          51       51              
  Lines        5504     5504              
==========================================
+ Hits         4579     4585       +6     
+ Misses        925      919       -6     
Flag Coverage Δ
python 83.30% <ø> (+0.10%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Components Coverage Δ
python_api 83.30% <ø> (+0.10%) ⬆️
libtiledbsoma ∅ <ø> (∅)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant