All Projects → melowntech → Vts Browser Js

melowntech / Vts Browser Js

Licence: bsd-2-clause
JavaScript WebGL 3D map rendering engine

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Vts Browser Js

Ol3echarts
🌏 📊 ol3Echarts | a openlayers extension to echarts
Stars: ✭ 229 (+54.73%)
Mutual labels:  webgl, gis, map
Openglobus
JavaScript 3d maps and geospatial data visualization engine library.
Stars: ✭ 199 (+34.46%)
Mutual labels:  webgl, gis, map
L7
🌎 Large-scale WebGL-powered Geospatial Data Visualization analysis framework which relies on Mapbox GL or AMap to render basemaps.
Stars: ✭ 2,517 (+1600.68%)
Mutual labels:  webgl, gis, map
vts-browser-cpp
VTS Browser C++ library
Stars: ✭ 45 (-69.59%)
Mutual labels:  map, gis, 3d-engine
Lpfmpoints
Evolution of LPFM Stations
Stars: ✭ 19 (-87.16%)
Mutual labels:  gis, map
Harp.gl
harp.gl - web map rendering engine
Stars: ✭ 828 (+459.46%)
Mutual labels:  webgl, map
Mapbox Gl Js
Interactive, thoroughly customizable maps in the browser, powered by vector tiles and WebGL
Stars: ✭ 8,017 (+5316.89%)
Mutual labels:  webgl, map
Tiledmapview
Tiled map loader for Android , based on the pyramid model, supports a variety of projections, including Web Mercator projection, latitude and longitude projection and custom projection; supports locating, adding layers and overlays. Android瓦片地图加载控件,基于金字塔模型,支持多种投影,包括Web墨卡托投影,经纬度直投及自定义投影等;支持定位,添加图层和覆盖物。
Stars: ✭ 45 (-69.59%)
Mutual labels:  gis, map
Sharpmap
An easy-to-use mapping library for use in web and desktop applications
Stars: ✭ 613 (+314.19%)
Mutual labels:  gis, map
Otmaps
基于ArcGIS API for JavaScript封装的专题图制图类库
Stars: ✭ 44 (-70.27%)
Mutual labels:  gis, map
Shadoweditor
Cross-platform 3D scene editor based on three.js, golang and mongodb for desktop and web. https://tengge1.github.io/ShadowEditor-examples/
Stars: ✭ 1,060 (+616.22%)
Mutual labels:  webgl, gis
Layaair
LayaAir is an open-source 2D/3D engine. LayaAir Engine is designed for high performance games.LayaAir support TypeScript and JavaScript、ActionScript 3.0 programming language.Can develop once, publish for multi platform.
Stars: ✭ 791 (+434.46%)
Mutual labels:  webgl, 3d-engine
React Map Gl
React friendly API wrapper around MapboxGL JS
Stars: ✭ 6,244 (+4118.92%)
Mutual labels:  webgl, map
Cesium
An open-source JavaScript library for world-class 3D globes and maps 🌎
Stars: ✭ 8,095 (+5369.59%)
Mutual labels:  webgl, gis
Webglobe
基于HTML5原生WebGL实现的轻量级Google Earth三维地图引擎
Stars: ✭ 685 (+362.84%)
Mutual labels:  webgl, map
Procedural Gl Js
Mobile-first 3D mapping engine with emphasis on user experience
Stars: ✭ 1,036 (+600%)
Mutual labels:  webgl, map
Rendeer.js
Light-weight 3D Scene graph library with renderer in WebGL
Stars: ✭ 63 (-57.43%)
Mutual labels:  webgl, 3d-engine
React Qmap
💡react腾讯地图开源组件
Stars: ✭ 60 (-59.46%)
Mutual labels:  gis, map
Helixjs
A Javascript 3D game engine.
Stars: ✭ 84 (-43.24%)
Mutual labels:  webgl, 3d-engine
Engine
Oasis Engine is a web-first and mobile-first high-performance real-time development platform.
Stars: ✭ 2,202 (+1387.84%)
Mutual labels:  webgl, 3d-engine
VTS Browser JS

VTS Browser JS is a powerful JavaScript 3D map rendering engine with a very small footprint (about 163 kB of gziped JS code). It provides almost all features for web-based 3D mapping you will ever want.

VTS Browser JS is independently usable part of VTS 3D Geospatial Software Stack: a state-of-the-art, full-stack open source platform for 3D geospatial application development.

With VTS Browser JS you may combine and render diverse geospatial data in a single online map, style and display various types of geodata, render textured polygonal meshes or OBJ models, or even render topographic labels in almost any international writing system.

VTS Browser JS showcase

Features

  • [x] part of a comprehensive open-source 3D geospatial software Stack
  • [x] supports all modern web browsers
  • [x] photorealistic rendering
  • [x] geocoding API support
  • [x] tiled, hierarchical data model
  • [x] optimized for web-based rendering
  • [x] supports any coordinate system
  • [x] multiple surfaces
  • [x] multiple bound layers on each surface
  • [x] vector layers (geodata)
  • [x] geodata styling and geodata interaction
  • [x] dynamic surfaces and layer switching
  • [x] international writing systems (e.g. Arabic, Devangaric, Chinese, Japanese, ...)
  • [x] extensive, yet simple API (including UI extensions)
  • [x] custom meshes, lines, polygons, icons, OBJ models, etc
  • [x] rendering and styling of GeoJSON files
  • [x] very small footprint (163KB minified and gzipped)
  • [x] large set of ready-to-use data
  • [x] open-source under BSD-2 license

Comparison to CesiumJS library

The open-source CesiumJS is an excellent JavaScript 3D mapping library which is widely used and frequently compared to VTS Browser JS. The following table might help you to identify the application scenarios where VTS Browser JS may be an alternative, or simply a straightforward software platform of choice for your project.

Feature VTS Browser JS CesiumJS
Different coordinate systems support yes limited
Dynamic tiled surfaces mixing (including glues) yes no
Multiple surfaces and multiple bound layers support (including transparent layers) yes no
Bound layers with optimized masks yes no
Out-of-the-box OSM data support with custom styling yes limited
Open-source backend components yes no
Backend data-fusion capabilities yes no
Support for international writing systems yes limited
Compact-size library (gzipped and minified) 221 KB 577 KB + Workers

Live Demos

These are some of the applications built with VTS browser JS:

Examples

First steps

  1. Include The VTS browser JS library
<link rel="stylesheet"
  type="text/css" href="https://cdn.melown.com/libs/vtsjs/browser/v2/vts-browser.min.css" />
<script type="text/javascript"
  src="https://cdn.melown.com/libs/vtsjs/browser/v2/vts-browser.min.js"></script>
  1. Declare map containing element (with id map-div)
<div id="map-div" style="width:100%; height:100%;"></div>
  1. Initiate vts browser (with example map configuration)
<script>
  var browser = vts.browser('map-div', {
    map: 'https://cdn.melown.com/mario/store/melown2015/map-config/melown/VTS-Tutorial-map/mapConfig.json'
  });
</script>

Wonder where to find mapConfig.json file? See Map Configuration section.

Next steps

You can run many examples in JSFiddle.

Get the library

There is several ways how to bundle The VTS Browser JS Library into your project.

Our CDN

The easiest way to link The VTS Browser JS Library is to use the latest build (or specific version) from Melown Technologies CDN.

<link rel="stylesheet"
  href="https://cdn.melown.com/libs/vtsjs/browser/v2/vts-browser.min.css" />
<script type="text/javascript"
  src="https://cdn.melown.com/libs/vtsjs/browser/v2/vts-browser.min.js"></script>

Prebuilt

In case you do not want to build libray yourself or use our CDN, there is a link where you can find latest compiled libraries with demo examples.

NPM repository

Vts-browser-js library is in npm js repository. To add it as dependecy to your project just add it as any npm package

npm install -S vts-browser-js

Build from code

If you prefer, you may build The VTS Browser JS Library from source code.

Build system

The build system uses webpack module bundler. Typical development cycle starts with npm install for installation of dependenices. Then you usually run webpack-dev-server and build with webpack.

Install

Download and install all dependencies to local node_modules directory.

NOTE: For some dependencies, you need git available in your system.

npm install

or more advanced (if you are using new versions of NodeJS and Yarn)

yarn install

Run dev server

The development server is serving local files at http://localhost:8080.

node_modules/.bin/webpack-dev-server

And go to http://localhost:8080/demos/

Build

node_modules/.bin/webpack

The unzipped file (along with source map and CSS) is stored in build/ directory. You may now start the dev server (see lower) and open browser at http://localhost:8080 to see some demos in the demos/ directory.

Build compressed version

The compressed version - it's intended to be used in in production env. You can include in the <script ...></script> tags (along with CSS) there.

Compressed version is build in the dist/ directory.

NODE_ENV=production node_modules/.bin/webpack

Makefile

There is also Makefile available in the project directory. Referer make help to specific make targets. The Makefile is just wrapper around npm run commands (which are wrappers around webpack configuration).

Map Configuration

Map configuration contains a all information The VTS Browser JS library needs to display given map/model. Library is usually initialize with URL to mapConfig.json file which is JSON representation of Map configuration data.

The question is, where you can get your own Map Configuration. Basically you have two options:

Melown Cloud

Melown Cloud is point-and-click interface to a subset of VTS technology, operated by Melown Tecchnologies. Conveniently, Melown Cloud may be also used as a source of custom map configurations for VTS browser JS application development.

VTS 3D Geospatial Software stack

VTS Browser JS forms part of the VTS 3D Geospatial Software Stack. Running the full stack gives you complete control over your map resources, provides you with powerful data fusion capabilities and allows for closed networks or other types of off-grid deployment.

Documentation

VTS Browser JavaScript API documentation is available in our wiki:

License

See the LICENSE file for VTS Browser JS license, run webpack and check the build/3rdpartylicenses.txt file for 3rd party licenses.

How to contribute

Check out the CONTRIBUTING.md file.

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].