All Projects → Oslandia → Building Server

Oslandia / Building Server

A server to stream PostGIS 3D objects to the web

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Building Server

Assetkit
🎨 Modern 2D/3D - Importer • Exporter • Util - Library, also called (AssetIO)
Stars: ✭ 97 (+781.82%)
Mutual labels:  3d, gltf
Gltf Transform
glTF 2.0 SDK for JavaScript, TypeScript, and Node.js.
Stars: ✭ 174 (+1481.82%)
Mutual labels:  3d, gltf
Model viewer.dart
A Flutter widget for rendering interactive 3D models in the glTF and GLB formats.
Stars: ✭ 134 (+1118.18%)
Mutual labels:  3d, gltf
Gltfast
glTF runtime loading library for Unity
Stars: ✭ 156 (+1318.18%)
Mutual labels:  3d, gltf
Xeogl
A WebGL-based 3D engine for technical visualization. Not actively maintained.
Stars: ✭ 920 (+8263.64%)
Mutual labels:  3d, gltf
Ueviewer
Viewer and exporter for Unreal Engine 1-4 assets (UE Viewer).
Stars: ✭ 1,083 (+9745.45%)
Mutual labels:  3d, gltf
Sharpgltf
glTF reader and writer for .NET Standard
Stars: ✭ 159 (+1345.45%)
Mutual labels:  3d, gltf
Egjs View3d
Fast & customizable 3D model viewer for everyone
Stars: ✭ 34 (+209.09%)
Mutual labels:  3d, gltf
Model Viewer
Easily display interactive 3D models on the web and in AR!
Stars: ✭ 3,751 (+34000%)
Mutual labels:  3d, gltf
Gltf
A crate for loading glTF 2.0
Stars: ✭ 224 (+1936.36%)
Mutual labels:  3d, gltf
Claygl
A WebGL graphic library for building scalable Web3D applications
Stars: ✭ 2,365 (+21400%)
Mutual labels:  3d, gltf
Cgltf
💠 Single-file glTF 2.0 loader and writer written in C99
Stars: ✭ 628 (+5609.09%)
Mutual labels:  3d, gltf
Clay Viewer
3D model viewer with high quality rendering and glTF2.0/GLB export
Stars: ✭ 558 (+4972.73%)
Mutual labels:  3d, gltf
Cesium
An open-source JavaScript library for world-class 3D globes and maps 🌎
Stars: ✭ 8,095 (+73490.91%)
Mutual labels:  3d, gltf
Depthmesh
Visualizes Google Camera Lens Blur depth map data.
Stars: ✭ 22 (+100%)
Mutual labels:  3d
Unitygltf
Runtime GLTF Loader for Unity3D
Stars: ✭ 935 (+8400%)
Mutual labels:  gltf
Gltfpp
glTF 2.0 loader for C++14
Stars: ✭ 22 (+100%)
Mutual labels:  gltf
Obj2gltf
Convert OBJ assets to glTF
Stars: ✭ 912 (+8190.91%)
Mutual labels:  gltf
Spaceshipgenerator
A Blender script to procedurally generate 3D spaceships
Stars: ✭ 6,992 (+63463.64%)
Mutual labels:  3d
Geography for hackers
Geography for Hackers - Teaching all how to hack geography, use GIS, and think spatially
Stars: ✭ 25 (+127.27%)
Mutual labels:  postgis

Building server

This is a prototype for a simple web server that retrieves polyhedral surfaces from a POSTGIS database and sends them back in a glTF or GeoJSON file.

It relies on a Bounding Volume Hierarchy (BVH) to transmit progressively the geometric data. A script for building the BVH is provided in this repository.

Installation

From sources

To use building-server from sources:

$ apt-get install python3-dev
$ git clone https://github.com/Oslandia/building-server
$ cd building-server
$ virtualenv -p /usr/bin/python3 venv
$ . venv/bin/activate
(venv)$ pip install --upgrade setuptools
(venv)$ pip install -e .

If you want to run unit tests:

(venv)$ pip install nose
(venv)$ nosetests
...

Generating the BVH and the tile association

./building-server-processdb.py conf/building.yml <city>

How to run

building-server has been tested with uWSGI and Nginx.

Once files building.uwsgi.yml and building.yml are well configurated for your environment, you can run the building-server:

(venv)$ pip install uwsgi
(venv)$ uwsgi --yml conf/building.uwsgi.yml
spawned uWSGI worker 1 (pid: 5984, cores: 1)

In case of the next error:

(venv)$ uwsgi --yml conf/building.uwsgi.yml
ImportError: No module named site
(venv)$ deactivate
$ . venv/bin/activate
(venv)$ uwsgi --yml conf/building.uwsgi.yml
spawned uWSGI worker 1 (pid: 5984, cores: 1)

Example

http://localhost:9090/?query=getCities

http://localhost:9090/?query=getGeometry&city=montreal&tile=1/4/2&format=GeoJSON
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].