Skip to main content

A standard library to manage geomatic data

Project description

geomapiLogo

GeomAPI

A joint API to standardize geomatic data storage and processing.

[[TOC]]

Installation

Use the package manager pip to install geomapi.

pip install geomapi

Documentation

You can read the full API reference here: Documentation

Usage

The main use of this API is importing standardized RDF data into easy to use python classes. These python classes have a number of fuctions to analyse, edit and combine the most common types of data including:

  • Images (pinhole or panoramic)
  • Meshes
  • Point clouds
  • BIM models

Variable Standards

This library relies on a RDF based standardisation of data storage, Below are some of the more important variables:

  • cartesianTransform: A 4x4 transformation matrix
  • Paths
    • path: The absolute path of the Asset.
    • graphPath: the absolute path of the graph folder

Development

Testing the package is done in the tests folder with:

from context import geomapi

Work method

  • nieuwe code comitten, aanpassingen brachen of aan MB vragen
  • nieuwe dependencies worden gestemd

input protection/ error handling

  • try catch blokken
  • zoveel mogelijk protection binnen functie
  • type hinting input + output

documentatie (uitleg, eenheid , datatype)

  • uitleg bij functie
  • uitleg bij parameters
  • type hinting input + output

standardisatie

  • beperk custom classes waar mogelijk
  • beperk aantal argumenten
  • gebruik zoveel mogelijk standaardconcepten
  • name is zonder speciale tekens of spaties (door windows en RDFlIB)

PYTHON

  • module/files: allemaal kleine letters
  • classes: Capital elk woord
  • functie: allemaal kleine letters met underscores
  • variables: kleine letters, allemaal aan elkaar, 2de woord capital
  • niet teveel afkortingen

FUNCTIONS

  • histogram in a certain direction
  • split horizontal from vertical points
  • create virtual image
  • triplestore
  • documentation
  • fix graphPath constructor
  • crop point clouds
  • collision point clouds
  • make imagenodes from vlx metadata

KWALITEITSANALYSE

  • rendering van KWALITEITSANALYSE

CROP MESHES

  • check mesh collision functions

  • crop_geometry first run a check if the Bboxes intersect => saves alot of intersection calculations

  • crop_geometry add non_overlapping bool parameter that culls mesh with each selection => should speed up process

  • crop geometry functions have a lot of deepcopies which hurt performance

  • intersection based on convex hull

  • crop geometry 1m30 on 600 nodes with 40k mesh => for 2M mesh and 6000 boxes this would take 1h30

  • trimesh mesh intersection 2m17 for 600 nodes on 40k mesh =>for 2M mesh and 6000 boxes 1000min

CROP PCDS

  • Python has to memory allocation protection :'(

  • create CC script thats loads pcd's and outputs pcd

  • segment large pcd's into regions

  • BBoxes pcd are to large

  • crop BB 4m30s for 6x10M pcd 600 boxes => for 45 clouds and 6000 boxes (normal project) this would take 5h30

  • segmentation based on Eucl. distance 5ms for 6x10M pcd 600 meshes => for 45 clouds and 6000 boxes (normal project) this would take 6h

GEOMETRY

  • protect oriented bounding box en bounding box tegen puntenwolken met te weinig punten (coplanair of 1pnt)
  • e57 scanheader also contains oriented bounding box?

LINKED DATA

  • functie node.get_oriented_bounding_box()

IMAGENODE

  • implementeer xml import

ENVIRONMENT

  • python-fcl is causing crashes!

Licensing

The code in this project is licensed under GNU license.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

geomapi-0.0.13.tar.gz (107.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

geomapi-0.0.13-py3-none-any.whl (132.0 kB view details)

Uploaded Python 3

File details

Details for the file geomapi-0.0.13.tar.gz.

File metadata

  • Download URL: geomapi-0.0.13.tar.gz
  • Upload date:
  • Size: 107.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for geomapi-0.0.13.tar.gz
Algorithm Hash digest
SHA256 0c0ae52dbe70b3d4d60a86d1eff27568d8ffbab39e0de166e492581801c2c84e
MD5 6e776bc82f75d90210132efc8c86e8f5
BLAKE2b-256 7e3936b703423ee49ef4ca4d2f5ee6be8df200c62d286c2cbcc546fd213f0215

See more details on using hashes here.

File details

Details for the file geomapi-0.0.13-py3-none-any.whl.

File metadata

  • Download URL: geomapi-0.0.13-py3-none-any.whl
  • Upload date:
  • Size: 132.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for geomapi-0.0.13-py3-none-any.whl
Algorithm Hash digest
SHA256 a80cf1a45cb1a6e3694658cb3bcf54dc2b8082be29065d6c0047df8cd4b7700f
MD5 899f98d04bf27838a6336263129c59cc
BLAKE2b-256 da505761ec6881eb7bd9e1e17760e091a5af4014d08424add4d496eb48e8b214

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page