WIP Interactive globe from Nico's sources
- The globe is a bit small? Ability to control the max-min size potentially
- Is there a reason why `globe.update()` runs every second? Sounds like a lot of resources?
- Have the ability to control the `addEventListener` of the markers to do whatever (in this case, going to a route by clicking on a link with a sapper-noscroll attribute + changing the href attribute on click - the method `goto` from Sapper scrolls back to top / maybe something to fix with the current transition issues?)
- Edited in `./index.js`:
1. Using the class as `export default WebglGlobe` instead of Window (as Svelte or Sapper doesn't likayt)
- Edited in `Camera.js`:
1. Commented line 218: `e.preventDefault();` would cause this error: `[Intervention] Unable to preventDefault inside passive event listener due to target being treated as passive. See <URL>`
This commit is contained in:
33
src/globe/beam/Loader.js
Executable file
33
src/globe/beam/Loader.js
Executable file
@@ -0,0 +1,33 @@
|
||||
export default {
|
||||
|
||||
cache: {
|
||||
|
||||
},
|
||||
|
||||
loadImage (url, callback) {
|
||||
|
||||
if (this.cache[url] !== void 0) {
|
||||
callback( this.cache[url] );
|
||||
return;
|
||||
}
|
||||
|
||||
var image = new Image();
|
||||
|
||||
image.onload = ()=>{
|
||||
image.onload = null;
|
||||
image.onerror = null;
|
||||
this.cache[url] = image;
|
||||
callback(image);
|
||||
}
|
||||
|
||||
image.onerror = ()=>{
|
||||
image.onload = null;
|
||||
image.onerror = null;
|
||||
console.warn('Cannot load image :' + url);
|
||||
}
|
||||
|
||||
image.src = url;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user