2016-03-01 20:34:53 +00:00
|
|
|
var world = VIZI.world('world', {
|
2016-03-07 19:25:11 +00:00
|
|
|
// skybox: true
|
2016-02-24 20:42:32 +00:00
|
|
|
}).setView([51.505, -0.09]);
|
2016-02-12 08:47:08 +00:00
|
|
|
|
2016-02-15 13:21:48 +00:00
|
|
|
// Add controls
|
2016-03-01 20:34:53 +00:00
|
|
|
VIZI.Controls.orbit().addTo(world);
|
2016-02-15 13:21:48 +00:00
|
|
|
|
2016-02-19 21:25:16 +00:00
|
|
|
// // http://{s}.tile.osm.org/{z}/{x}/{y}.png
|
|
|
|
// // http://{s}.tiles.wmflabs.org/osm-no-labels/{z}/{x}/{y}.png
|
2016-03-07 19:25:11 +00:00
|
|
|
// var imageTileLayer = VIZI.imageTileLayer('http://{s}.basemaps.cartocdn.com/light_nolabels/{z}/{x}/{y}.png', {
|
|
|
|
// attribution: '© <a href="http://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors, © <a href="http://cartodb.com/attributions">CartoDB</a>'
|
|
|
|
// }).addTo(world);
|
2016-02-25 12:27:42 +00:00
|
|
|
|
2016-03-09 10:07:31 +00:00
|
|
|
// var layer = VIZI.geoJSONLayer('http://vector.mapzen.com/osm/buildings,roads/13/4088/2722.json', {
|
|
|
|
// output: true,
|
|
|
|
// interactive: true,
|
|
|
|
// style: {
|
|
|
|
// color: '#ff0000'
|
|
|
|
// },
|
|
|
|
// onEachFeature: function(feature, layer) {
|
|
|
|
// layer.on('click', function(layer, point2d, point3d, intersects) {
|
|
|
|
// console.log(layer, point2d, point3d, intersects);
|
|
|
|
// });
|
|
|
|
// }
|
|
|
|
// }).addTo(world);
|
|
|
|
|
|
|
|
var layer = VIZI.pointLayer([-0.09, 51.505], {
|
|
|
|
interactive: true
|
2016-02-19 21:25:16 +00:00
|
|
|
}).addTo(world);
|
2016-02-27 19:31:41 +00:00
|
|
|
|
2016-03-09 10:07:31 +00:00
|
|
|
layer.on('click', function(layer, point2d, point3d, intersects) {
|
|
|
|
console.log(layer, point2d, point3d, intersects);
|
|
|
|
});
|
|
|
|
|
2016-03-07 19:25:11 +00:00
|
|
|
// // Building and roads from Mapzen (polygons and linestrings)
|
|
|
|
// var topoJSONTileLayer = VIZI.topoJSONTileLayer('https://vector.mapzen.com/osm/buildings,roads/{z}/{x}/{y}.topojson?api_key=vector-tiles-NT5Emiw', {
|
|
|
|
// style: function(feature) {
|
|
|
|
// var height;
|
|
|
|
//
|
|
|
|
// if (feature.properties.height) {
|
|
|
|
// height = feature.properties.height;
|
|
|
|
// } else {
|
|
|
|
// height = 10 + Math.random() * 10;
|
|
|
|
// }
|
|
|
|
//
|
|
|
|
// return {
|
|
|
|
// height: height,
|
|
|
|
// lineColor: '#f7c616',
|
|
|
|
// lineWidth: 1,
|
|
|
|
// lineTransparent: true,
|
|
|
|
// lineOpacity: 0.2,
|
|
|
|
// lineBlending: THREE.AdditiveBlending,
|
|
|
|
// lineRenderOrder: 2
|
|
|
|
// };
|
|
|
|
// },
|
|
|
|
// attribution: '© <a href="http://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors, <a href="http://whosonfirst.mapzen.com#License">Who\'s On First</a>.'
|
|
|
|
// }).addTo(world);
|
|
|
|
|
2016-02-29 23:04:07 +00:00
|
|
|
// Just buildings from Mapzen (polygons)
|
2016-03-01 20:34:53 +00:00
|
|
|
// var topoJSONTileLayer = VIZI.topoJSONTileLayer('https://vector.mapzen.com/osm/buildings/{z}/{x}/{y}.topojson?api_key=vector-tiles-NT5Emiw', {
|
2016-02-27 19:31:41 +00:00
|
|
|
// style: function(feature) {
|
|
|
|
// var height;
|
|
|
|
//
|
|
|
|
// if (feature.properties.height) {
|
|
|
|
// height = feature.properties.height;
|
|
|
|
// } else {
|
|
|
|
// height = 10 + Math.random() * 10;
|
|
|
|
// }
|
|
|
|
//
|
|
|
|
// return {
|
|
|
|
// // color: (feature.properties.area > 10000) ? '#ff0000' : '#0000ff'
|
|
|
|
// color: '#ffffff',
|
|
|
|
// height: height
|
|
|
|
// };
|
|
|
|
// },
|
|
|
|
// // filter: function(feature) {
|
|
|
|
// // // Only show features with an area larger than 5000 (metres squared in
|
|
|
|
// // // projected units)
|
|
|
|
// // return feature.properties.area > 5000;
|
|
|
|
// // },
|
|
|
|
// attribution: '© <a href="http://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors, <a href="http://whosonfirst.mapzen.com#License">Who\'s On First</a>.'
|
|
|
|
// }).addTo(world);
|
2016-02-28 20:29:52 +00:00
|
|
|
|
2016-03-01 18:06:09 +00:00
|
|
|
// London Underground lines
|
2016-03-01 20:51:38 +00:00
|
|
|
// var geoJSONLayer = VIZI.geoJSONLayer('https://rawgit.com/robhawkes/4acb9d6a6a5f00a377e2/raw/30ae704a44e10f2e13fb7e956e80c3b22e8e7e81/tfl_lines.json', {
|
2016-03-08 15:38:11 +00:00
|
|
|
// interactive: true,
|
2016-03-01 20:51:38 +00:00
|
|
|
// style: function(feature) {
|
|
|
|
// var colour = feature.properties.lines[0].colour || '#ffffff';
|
|
|
|
//
|
|
|
|
// return {
|
|
|
|
// lineColor: colour,
|
|
|
|
// // lineHeight: 20,
|
|
|
|
// lineWidth: 3,
|
|
|
|
// // lineTransparent: true,
|
|
|
|
// // lineOpacity: 0.5,
|
|
|
|
// // lineBlending: THREE.AdditiveBlending,
|
|
|
|
// lineRenderOrder: 2
|
|
|
|
// };
|
|
|
|
// },
|
2016-03-08 15:38:11 +00:00
|
|
|
// onEachFeature: function(feature, layer) {
|
|
|
|
// layer.on('click', function(layer, point2d, point3d, intersects) {
|
|
|
|
// console.log(layer, point2d, point3d, intersects);
|
|
|
|
// });
|
2016-03-01 20:51:38 +00:00
|
|
|
// },
|
|
|
|
// attribution: '© Transport for London.'
|
|
|
|
// }).addTo(world);
|
2016-03-03 21:24:53 +00:00
|
|
|
|
|
|
|
// Set up render debug stats
|
|
|
|
var rendererStats = new THREEx.RendererStats();
|
|
|
|
rendererStats.domElement.style.position = 'absolute';
|
|
|
|
rendererStats.domElement.style.left = '0px';
|
|
|
|
rendererStats.domElement.style.bottom = '0px';
|
|
|
|
document.body.appendChild(rendererStats.domElement);
|
|
|
|
|
|
|
|
world.on('postUpdate', function() {
|
|
|
|
rendererStats.update(world._engine._renderer);
|
|
|
|
});
|