User Tools

Site Tools


Navigation Menu

Flight-Control

  • StatusClosed
  • OP-ModePre-Launch
  • LocationN48 - E11
  • Localtime13:36
  • CountdownT-00D 00:00

Hot Projects

SEEDStack

SEEDStack - Open 3D printable seed/sprouting systemDIY Food Hacking

UCSSPM

UCSSPM - Unified Clear-Sky Solar Prediction ModelOpen Solar Power

picoReflow

picoReflow - DIY PID Reflow Oven Controller based on RaspberryPiDIY Reflow Soldering

PiGI

PiGI - DIY Geiger Counter based on RaspberryPiRasPi Geiger Counter

DIY ARA-2000

Active Wideband Receiver Antenna for SDR - ARA-2000Wideband Antenna

DSpace

DSPace - Map everythingMap everything!

Mission-Tags

DSpace-Client

Develop-Demo

DSpace API Documentation

Components

Ender

├── qwery@3.4.0 - blazing fast CSS3 query selector engine
├── domready@0.2.11 - bullet proof DOM ready method
├── bean@1.0.2 - A small, fast, framework-agnostic event manager
├── bonzo@1.3.2-1 - Library agnostic, extensible DOM utility
├── morpheus@0.6.6 - Animations
├─┬ backbone@0.9.9 - Give your JS App some Backbone with Models, Views, Collections, and Events.
| └── underscore@1.4.3 - JavaScript's functional programming helper library.
└─┬ handlebars@1.0.7 - Extension of the Mustache logicless template language
  ├── uglify-js@1.2.6 - JavaScript parser and compressor/beautifier toolkit
  └─┬ optimist@0.3.4 - Light-weight option parsing with an argv hash. No optstrings attached.
    └── wordwrap@0.0.2 - Wrap those words. Show them at what columns to start and stop.

Overlays

Dynamic Overlays that are not embedded into the map tiles but created by JS on the client

  1. POIs
  2. Area of Effect/Action
  3. Position of group members (geolocation of people) (Privacy Settings?)
  4. Position of drones (geolocation of devices)

Possibility to access static POI's even when not connected to the net?

Features

  1. Select different baselayer maps for different use-cases
  2. Find POIs in Area of Action (radius around current geolocation)
  3. Ruler (set two points and calculate distance)
  4. Scale
  5. Bandwidth Detection to deliver lower resolution/compressed tiles

UI

  1. Mouse
    1. Left click → Single click
    2. Right click → Popup area specific context menu
  1. Touch
  2. Short Touch → Single click
  3. Long touch → Popup area specific context menu
  1. Gesture
  2. One finger swipe → pan map
  3. Two finger swipe left/right → Switch to next overlay
  4. Two finger zoom → Zoom

FeatureBox

User adds Overlays to featurebox
 - appears as new tab (like browser), each tab has a represenattive icon (the marker image)
 - add (plus) button as last tab
 - visible checkbox
 - remove overlay from featurebox option

Bare Client Flow (new client without any Overlays)

  1. Add Overlay (Have a button in top right corner)
  2. Modal Directory Interface, splittet in
    1. geobar: for semantic search or url pasting
    2. Gallery: showing overlays with matching proximity (neat: Having autocompletion in the geobar and show overlays in gallery matching the current keyword)
  3. User selects Overlay from Directory to add to his FeatureBox
    1. Overlay Appears with FeatureItems as a Tab in the FeaturBox
- Keyboard (panning with arrow keys / zooming with page Up(in)/Down(out)

Storage

Federated storage possibilities:

http://remotestorage.io (unstable!) https://github.ctom/jcoglan/restore (unstable!)

DSNP

Transports

“Data-Proxies” :

- MVV live stats

XMPP

Flow

→ init new World

[world]                                 [map]                                                            [overlay]                              

{attributes: options} {model/world: world} {collection: featurecollection}

  1. > create Map( world )
  2. > render Map
    1. > initbasemap
      1. > create frame (MM)
  1. —- create overlays ———

world.get( geofeeds ).each

  1. > create featurecollection( feed )
  2. > create overlay( featurecollection )
                                                                                                                      #on geofeed.reset
                                                                                                                      <- map.addMapLayer( featurecollection )
                                               mm.addlayer markerlayer <-
                                            [markerlayer] {collection: featurecollection }
                                             -> setIndex
                                             -> set marker factory to marker
                                             
                                            [marker]  {model:feature}
                                            -> bind to
     
                                                ----- remove feeds ---------
  1. > reset overlays

#send trigger

  1. > remove from dom