USC, CartoDB में नक्शे पर 3 डी परिप्रेक्ष्य?


12

क्या कोई जेएस लाइब्रेरी है जो वेब पर इस तरह के एक सामान्य नक्शे में सामान्य, फ्लैट मैप्स (जैसे कि जर्सी) को प्रस्तुत करेगा:

यहाँ छवि विवरण दर्ज करें

इसके अलावा, किसी ने कुछ भी देखा जो कार्टोएडबी डेटा को 3 डी प्रतिनिधित्व में बदल सकता है, इस तरह से?


1
मुझे कार्टोडब के साथ एकीकरण के बारे में निश्चित नहीं है, लेकिन मैंने हाल ही में इस पोस्ट को तीन.जेएस लाइब्रेरी का उपयोग करके क्यूजीआईएस से 3 डी मैप बनाने के बारे में देखा । आप उस पर एक नज़र रखना चाहते हो सकता है।
रयानकैल्टन



1
हो सकता है कि आपको यह दृश्य उपयोगी लगे: pluto.cartodb.com/viz/bf4dacd4-003c-11e3-aaf8-a9294e572fad/…
javisantana

जवाबों:


7

शायद आप Osmbuildings का उपयोग कर सकते हैं । OpenStreetMaps (या कस्टम GeoJSON) को 3 डी परिप्रेक्ष्य में ज्यामिति के निर्माण के लिए एक जावास्क्रिप्ट पुस्तकालय।

OSMbuildingJS

यह सीधे OpenStreetMaps डेटा का उपयोग करता है। बस लोड जोड़ें () विधि:

var map = new L.Map('map').setView([52.50440, 13.33522], 17);
var osmb = new OSMBuildings(map).loadData();
L.control.layers({}, { Buildings:osmb }).addTo(map); // add to layer switcher (optional)

या, आप अपने खुद के जियोसन लोड कर सकते हैं। बस लोड करें () विधि को सेटडेटा (जियोजोन) में बदलें:

var osmb = new OSMBuildings(map).setData(geoJSON);

आपके डेटा के लिए एक ऊंचाई की संपत्ति होनी चाहिए, और आप दीवार और छत के रंग को गतिशील रूप से बदल सकते हैं:

osmb.setStyle({ 
     wallColor:'rgba(100, 100, 250, 0.701961)', 
     roofColor:'rgb(220, 220, 50)', 
     shadows:true 
});

और यहां तक ​​कि दिन के समय की परछाई को बदलकर:

osmb.setDate(new Date(2014, 3, 24, 13, 0));

OSM बिल्डिंग (0.2.2b) का वर्तमान संस्करण setDataविधि का समर्थन नहीं करता है, लेकिन setकाम करता है! यह tjus बन जाता है:var osmb = new OSMBuildings(map).setData(geoJSON);
bradypus

4

यह विजाइसीटीज़ (ओपनकार्टपावर द्वारा संचालित ब्राउज़र में 3 डी शहरों) के लिए प्राथमिक उपयोग के मामलों में से एक है, हालांकि डेटा परतें अभी काम नहीं कर रही हैं। शायद भविष्य के लिए कुछ विचार करें : https://github.com/robhawkes/vizicities

डिस्क्लेमर: मैं विजिसीटीज का डेवलपर हूं


1
कूल प्रोजेक्ट! इसके अलावा, जबकि यह काफी स्पष्ट है कि यह एक ऐसी परियोजना है जिसके साथ आप संबद्ध हैं, आप बस इतना अधिक स्पष्ट करना चाहते हैं (भले ही यह खुला स्रोत हो)।
ब्लाह 238

धन्यवाद, लेकिन मैं एक गैर- WebGL समाधान की तलाश में हूं।
1917

1
कोई चिंता नहीं, बस आपको सिर चढ़कर बोलना चाहता था।
रोबिन हॉक्स

क्या इस संस्करण में भूखंड या कोई उन्नत संस्करण है?
जोकर 21

2

आप OpenStreetMap (map.osm) से 3D ऑब्जेक्ट्स (map.obj) पर 2D डेटा पास करने के लिए OSM2world का उपयोग कर सकते हैं, फिर इसे तीनjs JSON मॉडल (map.js) में परिवर्तित करने के लिए किसी अन्य कनवर्टर ( Convert_obj_three.py ) का उपयोग करें, और फिर उपयोग करें। यह एक तीनjs दृश्य में है।

आप यहाँ देख सकते हैं:

https://www.youtube.com/watch?v=S6LbKH6NnZU


बहुत बहुत धन्यवाद। लेकिन इसके लिए WebGL की आवश्यकता है, है ना?
नॉटआउट

1
तीनj यह एक जावास्क्रिप्ट पुस्तकालय / एपीआई है जो WebGL का लाभ उठाता है। लेकिन कोड में आपको केवल दो लिबास शामिल करने होंगे: तीन.js और OrbitControls.js (यह कैमरा कक्षा का प्रबंधन करने के लिए है)।
सिगनॉन

1
और हाँ, तीनj केवल WebGL द्वारा समर्थित ब्राउज़रों में काम करता है।
सिगॉन

1

मैंने जो सबसे नज़दीकी देखा वह माइक बोस्कॉक का काम है ।

उसके पास वास्तव में अच्छा नक्शा है जिसमें एक प्रकार का तिरछा प्रक्षेपण है

लेकिन ऐसा कुछ नहीं है जो इसे आसान बनाता है। डी 3 मेरा सिर अनुमान लगाने के संबंध में करता है। यद्यपि आप इस पर काम करते हैं तो आप आश्चर्यजनक चीजें बना सकते हैं।


ठीक है, माइक कैसे करता है ?? टिप के लिए धन्यवाद
knutole


1

http://osm2world.org/ बिना WebGL के काम करता है, लेकिन js के बजाय जावा का उपयोग करता है।

ओपनस्ट्रीटमैप बिल्डिंग डेटा के आउटपुट के लिए डिज़ाइन किया गया है, इसे अन्य 3D डेटा के लिए भी अपनाने योग्य होना चाहिए।

आउटपुट पर्चे के समान एक फिसलन भरा नक्शा है: http://maps.osm2world.org/


हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.