https://github.com/nlesc/pattyvis
Webgl pointcloud visualization of the Via Appia based on potree
https://github.com/nlesc/pattyvis
Last synced: 9 months ago
JSON representation
Webgl pointcloud visualization of the Via Appia based on potree
- Host: GitHub
- URL: https://github.com/nlesc/pattyvis
- Owner: NLeSC
- License: apache-2.0
- Created: 2014-08-13T08:17:44.000Z (almost 12 years ago)
- Default Branch: master
- Last Pushed: 2022-05-20T18:50:00.000Z (about 4 years ago)
- Last Synced: 2025-08-31T14:44:08.609Z (10 months ago)
- Language: JavaScript
- Homepage:
- Size: 46.8 MB
- Stars: 12
- Watchers: 24
- Forks: 11
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
PattyVis
========
[](https://travis-ci.org/NLeSC/PattyVis)
[](https://codeclimate.com/github/NLeSC/PattyVis)
[](https://codeclimate.com/github/NLeSC/PattyVis)
[](https://saucelabs.com/u/patty-vis)
[](https://david-dm.org/NLeSC/PattyVis#info=devDependencies)
[](https://www.codacy.com/public/sverhoeven/PattyVis)
[](http://dx.doi.org/10.5281/zenodo.45923)
Webgl pointcloud visualization of the Via Appia based on http://potree.org
--------------------------------------------------------------------------

A big step towards a 3D GIS Application.

With 3D footprints of grave monuments based on GPS coordinates.

A 'background' or reference frame was made with Fugro's drive-map technology http://www.drive-map.eu/

Several monuments have been photographed extensively and made into seperate pointclouds. This is an ongoing process.


Measurements can be made in the 3D environment.

Historical maps can give extra information on the site's history.

Searching options like the material used in the site can give extra insight.

Getting started (windows, from scratch)
---------------------------------------
1. Install Git : http://git-scm.com/downloads
2. Install Node.js : http://nodejs.org/ (Make sure add node to PATH option is checked)
1. Create '$HOME/npm' folder (Where $HOME is c:\Users\\AppData\Roaming).
2. Open node command prompt and run `npm install -g bower grunt-cli`
3. Install Ruby: http://rubyinstaller.org/ (Make sure add ruby to PATH option is checked)
1. Open ruby command prompt and run `gem install compass`
4. Start Git bash
5. Type: "git clone https://github.com/NLeSC/PattyVis"
6. Type: "cd PattyVis"
7. Type: "npm install -g grunt grunt-cli"
8. Type: "npm install"
8. Type: "bower install"
8. Type: "bower update"
9. Type: "grunt serve"
10. Open browser, go to "http://localhost:9000"
Getting started (Linux, Debian and Ubuntu based)
-------------------------------------------------
Prerequisites
------------
1. nodejs, http://nodejs.org/
2. bower, http://bower.io
3. compass, http://compass-style.org
4. Java Development Kit, https://www.java.com/
5. PhantomJS v1 https://bitbucket.org/ariya/phantomjs/downloads/
Installation
------------
### Install nodejs
Follow instructions at joyents github website:
https://github.com/joyent/node/wiki/Installing-Node.js-via-package-manager#debian-and-ubuntu-based-linux-distributions
### Install nodejs modules
Install bower, karma-cli and grunt-cli globally
```
sudo npm install -g bower grunt-cli karma-cli
```
### Install compass
Compass is used to convert the sass 2 css.
1. Install Ruby using https://www.ruby-lang.org/en/documentation/installation/#apt
2. Install Ruby dev and other dependecy packages
```
sudo apt-get install ruby-dev libffi-dev
```
3. Install compass (for sass compilation)
```
gem install compass
```
### Fetch git repository
```
git clone https://github.com/NLeSC/PattyVis
```
### setup with bower
```
cd PattyVis
npm install
bower install
```
If you already have a installed the bower packages before, but need to update them for a new version of the code, run
```
bower update
```
### start development server & open browser
```
grunt serve
```
Changes made to code will automatically reload web page.
### Run unit tests
```
grunt test
```
Generates test report and coverage inside `test/reports` folder.
### Run end-to-end tests with local browser (chrome)
Tests in Chrome can be run with
```
grunt e2e-local
```
The pointcloud and minimap use a canvas and can't be tested automatically so they must be verified manually using the screenshots in the report.
Open `e2e/reports/report.html` in a web-browser.
### Run end-to-end tests on [sauce labs](https://saucelabs.com/)
To connnect to Sauce Labs use sauce connect program. [Here](https://docs.saucelabs.com/reference/sauce-connect/) you can find the details on how to install and run it.
Before tests can be run the sauce labs credentials must be setup
```
export SAUCE_USERNAME=
export SAUCE_ACCESS_KEY=
```
Tests in Chrome, Firefox on Windows, Linux and OSX can be run with
```
grunt e2e-sauce
```
The pointcloud and minimap use a canvas and can't be tested automatically so they must be verified manually using the screencast in the report at `https://saucelabs.com/u/`.
Travis-ci also runs end-to-end tests on sauce labs.
Note! Running `grunt e2e-sauce` will undo all changes in `app/` folder.
### Build a distro
```
grunt build
```
The `dist` folder has production ready distribution.
### Generate API documentation
```
grunt jsdoc
```
API documentation is generated in `doc/` directory.
Mockup
------
For mockup see https://wiki.esciencecenter.nl/index.php/Patty_Visualization
Oculus Rift
-----------
Get the host application and run it: https://github.com/Instrument/oculus-bridge
Creation of sites.json
----------------------
In db run:
SELECT site_id, ST_ASGEOJSON(geom, 15,5) FROM sites_geoms WHERE site_id IN (162,13);
To get geometry, bbox and crs.
Height and properties need to be filled manually.
Frame rate report
----------------
Use Chrome FPS plotting to get the frame rate.
1. Open developer tools
2. On Console tab goto Rendering tab (bottom screen)
3. Check the Show FPS meter checkbox