Removed overdoscaling from SubmapScatter.
This commit is contained in:
parent
4d6d2f1df0
commit
88048f14ec
52
dist/iwmlib.js
vendored
52
dist/iwmlib.js
vendored
@ -608,6 +608,19 @@
|
|||||||
|
|
||||||
static toLine(event) {
|
static toLine(event) {
|
||||||
return `${event.type} #${event.target.id} ${event.clientX} ${event.clientY}`
|
return `${event.type} #${event.target.id} ${event.clientX} ${event.clientY}`
|
||||||
|
let result = event.type;
|
||||||
|
let selector = this.selector(event.target);
|
||||||
|
result += ' selector: ' + selector;
|
||||||
|
if (event.target != document.querySelector(selector)) console.log('Cannot resolve', selector);
|
||||||
|
let keys = ['layerX', 'layerY', 'pageX', 'pageY', 'clientX', 'clientY'];
|
||||||
|
for (let key of keys) {
|
||||||
|
try {
|
||||||
|
result += ' ' + key + ':' + event[key];
|
||||||
|
} catch (e) {
|
||||||
|
console.log('Invalid key: ' + key);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return result
|
||||||
}
|
}
|
||||||
|
|
||||||
static compareExtractedWithSimulated() {
|
static compareExtractedWithSimulated() {
|
||||||
@ -2627,6 +2640,25 @@
|
|||||||
result[id] = this.getPosition(event);
|
result[id] = this.getPosition(event);
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
|
// case 'TouchEvent':
|
||||||
|
// // Needs to be observed: Perhaps changedTouches are all we need. If so
|
||||||
|
// // we can remove the touchEventKey default parameter
|
||||||
|
// if (touchEventKey == 'all') {
|
||||||
|
// for(let t of event.targetTouches) {
|
||||||
|
// result[t.identifier.toString()] = this.getPosition(t)
|
||||||
|
// }
|
||||||
|
// for(let t of event.changedTouches) {
|
||||||
|
// result[t.identifier.toString()] = this.getPosition(t)
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// else {
|
||||||
|
// for(let t of event.changedTouches) {
|
||||||
|
// result[t.identifier.toString()] = this.getPosition(t)
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// break
|
||||||
|
default:
|
||||||
|
break
|
||||||
}
|
}
|
||||||
return result
|
return result
|
||||||
}
|
}
|
||||||
@ -5722,6 +5754,8 @@
|
|||||||
let bottom = parseFloat(this.element.style.bottom);
|
let bottom = parseFloat(this.element.style.bottom);
|
||||||
this.element.style.bottom = bottom - delta.y + 'px';
|
this.element.style.bottom = bottom - delta.y + 'px';
|
||||||
break
|
break
|
||||||
|
default:
|
||||||
|
break
|
||||||
}
|
}
|
||||||
//console.log("onResize", this.onResize)
|
//console.log("onResize", this.onResize)
|
||||||
if (this.onResize) {
|
if (this.onResize) {
|
||||||
@ -6144,6 +6178,8 @@
|
|||||||
x = bbRight;
|
x = bbRight;
|
||||||
if (!this.useEventPosWithBoundingBox) y = (bbTop + bbBottom) / 2;
|
if (!this.useEventPosWithBoundingBox) y = (bbTop + bbBottom) / 2;
|
||||||
break
|
break
|
||||||
|
default:
|
||||||
|
break
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -6199,6 +6235,8 @@
|
|||||||
x += this.notchSize * 2;
|
x += this.notchSize * 2;
|
||||||
x += this.posOffset;
|
x += this.posOffset;
|
||||||
break
|
break
|
||||||
|
default:
|
||||||
|
break
|
||||||
}
|
}
|
||||||
this.placeOrigin(x, y);
|
this.placeOrigin(x, y);
|
||||||
}
|
}
|
||||||
@ -11063,6 +11101,20 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
speak() {
|
speak() {
|
||||||
|
/**
|
||||||
|
* This is a little bit ugly, but imho the most elegant of all dirty solutions.
|
||||||
|
*
|
||||||
|
5ht * Within the plugins we have no knowledge of other cards and such. But must differentiate the
|
||||||
|
* clicks by their corresponding owner. The SpeechUtterance just takes a text and has no knowledge
|
||||||
|
* about the node that is currently read to the user.
|
||||||
|
*
|
||||||
|
* This means, that we can identify same text, but not differentiate same text on different nodes.
|
||||||
|
* To account for that, we add the node to the speechSynthesis object (#benefitsOfJavaScript) and
|
||||||
|
* have access to the node, by - let's say - expanding the functionality of the SpeechSynthesis object.
|
||||||
|
*
|
||||||
|
* SO -17.07.19
|
||||||
|
*/
|
||||||
|
|
||||||
this._updateText();
|
this._updateText();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
111
dist/iwmlib.pixi.js
vendored
111
dist/iwmlib.pixi.js
vendored
@ -1335,6 +1335,19 @@
|
|||||||
|
|
||||||
static toLine(event) {
|
static toLine(event) {
|
||||||
return `${event.type} #${event.target.id} ${event.clientX} ${event.clientY}`
|
return `${event.type} #${event.target.id} ${event.clientX} ${event.clientY}`
|
||||||
|
let result = event.type;
|
||||||
|
let selector = this.selector(event.target);
|
||||||
|
result += ' selector: ' + selector;
|
||||||
|
if (event.target != document.querySelector(selector)) console.log('Cannot resolve', selector);
|
||||||
|
let keys = ['layerX', 'layerY', 'pageX', 'pageY', 'clientX', 'clientY'];
|
||||||
|
for (let key of keys) {
|
||||||
|
try {
|
||||||
|
result += ' ' + key + ':' + event[key];
|
||||||
|
} catch (e) {
|
||||||
|
console.log('Invalid key: ' + key);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return result
|
||||||
}
|
}
|
||||||
|
|
||||||
static compareExtractedWithSimulated() {
|
static compareExtractedWithSimulated() {
|
||||||
@ -6172,6 +6185,25 @@
|
|||||||
result[id] = this.getPosition(event);
|
result[id] = this.getPosition(event);
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
|
// case 'TouchEvent':
|
||||||
|
// // Needs to be observed: Perhaps changedTouches are all we need. If so
|
||||||
|
// // we can remove the touchEventKey default parameter
|
||||||
|
// if (touchEventKey == 'all') {
|
||||||
|
// for(let t of event.targetTouches) {
|
||||||
|
// result[t.identifier.toString()] = this.getPosition(t)
|
||||||
|
// }
|
||||||
|
// for(let t of event.changedTouches) {
|
||||||
|
// result[t.identifier.toString()] = this.getPosition(t)
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// else {
|
||||||
|
// for(let t of event.changedTouches) {
|
||||||
|
// result[t.identifier.toString()] = this.getPosition(t)
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// break
|
||||||
|
default:
|
||||||
|
break
|
||||||
}
|
}
|
||||||
return result
|
return result
|
||||||
}
|
}
|
||||||
@ -9944,8 +9976,6 @@
|
|||||||
* @param {Tiles} tiles - the tile layer object
|
* @param {Tiles} tiles - the tile layer object
|
||||||
**/
|
**/
|
||||||
addTiles(key, tiles) {
|
addTiles(key, tiles) {
|
||||||
|
|
||||||
console.error("ADD TILES", this.tileContainer);
|
|
||||||
if (key in this.tileLayers) {
|
if (key in this.tileLayers) {
|
||||||
console.warn('Tiles already availabl', key);
|
console.warn('Tiles already availabl', key);
|
||||||
}
|
}
|
||||||
@ -9954,7 +9984,6 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
destroyTiles(key) {
|
destroyTiles(key) {
|
||||||
console.error("DESTROY TILES");
|
|
||||||
let tiles = this.tileLayers[key];
|
let tiles = this.tileLayers[key];
|
||||||
this.tileContainer.removeChild(tiles);
|
this.tileContainer.removeChild(tiles);
|
||||||
tiles.destroy();
|
tiles.destroy();
|
||||||
@ -10484,7 +10513,6 @@
|
|||||||
* @memberof DeepZoomImage
|
* @memberof DeepZoomImage
|
||||||
*/
|
*/
|
||||||
activate() {
|
activate() {
|
||||||
console.log(this.parent);
|
|
||||||
this.active = true;
|
this.active = true;
|
||||||
this.destroyTilesAboveLevel(this.currentLevel);
|
this.destroyTilesAboveLevel(this.currentLevel);
|
||||||
this.ensureTiles(this.currentLevel, null);
|
this.ensureTiles(this.currentLevel, null);
|
||||||
@ -16965,16 +16993,15 @@
|
|||||||
let interactionManager = this.renderer.plugins.interaction;
|
let interactionManager = this.renderer.plugins.interaction;
|
||||||
|
|
||||||
let displayObject = interactionManager.hitTest(local, this);
|
let displayObject = interactionManager.hitTest(local, this);
|
||||||
|
if (displayObject != null) {
|
||||||
if (displayObject.dontBlockScatter && displayObject.parent != null) {
|
if (displayObject.dontBlockScatter && displayObject.parent != null) {
|
||||||
displayObject = interactionManager.hitTest(local, displayObject.parent);
|
displayObject = interactionManager.hitTest(local, displayObject.parent);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (displayObject.scatter != null) this.hitScatter = displayObject.scatter;
|
if (displayObject.scatter != null) this.hitScatter = displayObject.scatter;
|
||||||
if (this.claimEvents) event.claimedByScatter = this.hitScatter;
|
if (this.claimEvents) event.claimedByScatter = this.hitScatter;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
return this.hitScatter
|
return this.hitScatter
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -18268,7 +18295,7 @@
|
|||||||
|
|
||||||
let containerCenter;
|
let containerCenter;
|
||||||
if (this.frame) {
|
if (this.frame) {
|
||||||
containerCenter = this.getFrame().center;
|
containerCenter = this.getFrame().localCenter;
|
||||||
} else {
|
} else {
|
||||||
containerCenter = {
|
containerCenter = {
|
||||||
x: this.image.parent.width / 2,
|
x: this.image.parent.width / 2,
|
||||||
@ -19073,7 +19100,6 @@
|
|||||||
this.drawEndHandler = new EventHandler('onDrawEnd', { listeners: onDrawEnd });
|
this.drawEndHandler = new EventHandler('onDrawEnd', { listeners: onDrawEnd });
|
||||||
this._points = null;
|
this._points = null;
|
||||||
this._position = null;
|
this._position = null;
|
||||||
this.map = null;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
clone() {
|
clone() {
|
||||||
@ -19139,7 +19165,6 @@
|
|||||||
* Called by the containing geo layer, when the map changes.
|
* Called by the containing geo layer, when the map changes.
|
||||||
*/
|
*/
|
||||||
adaptTo(map) {
|
adaptTo(map) {
|
||||||
this.map = map;
|
|
||||||
this._points = this._adaptCoordinates(map);
|
this._points = this._adaptCoordinates(map);
|
||||||
this._updatePosition();
|
this._updatePosition();
|
||||||
this.draw();
|
this.draw();
|
||||||
@ -19182,19 +19207,6 @@
|
|||||||
this._layer = layer;
|
this._layer = layer;
|
||||||
}
|
}
|
||||||
|
|
||||||
// get map() {
|
|
||||||
// if (
|
|
||||||
// this.graphics.layer &&
|
|
||||||
// (this.graphics.layer instanceof GeoLayer || this.graphics.layer instanceof MapLayer)
|
|
||||||
// ) {
|
|
||||||
// return this.graphics.layer.map
|
|
||||||
// } else return null
|
|
||||||
// }
|
|
||||||
|
|
||||||
setLayer(layer) {
|
|
||||||
this._layer = layer;
|
|
||||||
}
|
|
||||||
|
|
||||||
get map() {
|
get map() {
|
||||||
let map = null;
|
let map = null;
|
||||||
if (this.mapLayer) {
|
if (this.mapLayer) {
|
||||||
@ -19599,7 +19611,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
class MapList {
|
class MapList {
|
||||||
constructor(active, maps) {
|
constructor(active = null, maps = {}) {
|
||||||
this.maps = maps;
|
this.maps = maps;
|
||||||
this.active = active;
|
this.active = active;
|
||||||
|
|
||||||
@ -19640,6 +19652,16 @@
|
|||||||
return map
|
return map
|
||||||
}
|
}
|
||||||
|
|
||||||
|
clone() {
|
||||||
|
let maps = {};
|
||||||
|
|
||||||
|
for (let name of Object.keys(this.maps)) {
|
||||||
|
maps[name] = this.maps[name].clone();
|
||||||
|
}
|
||||||
|
|
||||||
|
return new MapList(this.active, maps)
|
||||||
|
}
|
||||||
|
|
||||||
add(key, map) {
|
add(key, map) {
|
||||||
if (this.maps[key] != null) consol.warn('Key already in mapList. The existing key was overwritten.');
|
if (this.maps[key] != null) consol.warn('Key already in mapList. The existing key was overwritten.');
|
||||||
map.name = key;
|
map.name = key;
|
||||||
@ -19647,15 +19669,14 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
get map() {
|
get map() {
|
||||||
console.log(this.maps, this.active);
|
return this.maps && this.maps[this.active] ? this.maps[this.active] : null
|
||||||
return this.maps[this.active]
|
|
||||||
}
|
}
|
||||||
|
|
||||||
next() {
|
next() {
|
||||||
let keys = Object.keys(this.maps);
|
let keys = Object.keys(this.maps);
|
||||||
let idx = keys.indexOf(this.active);
|
let idx = keys.indexOf(this.active);
|
||||||
|
|
||||||
let next = idx + 1 < key.length ? keys[idx + 1] : keys[0];
|
let next = idx + 1 < keys.length ? keys[idx + 1] : keys[0];
|
||||||
console.log(keys, idx, next);
|
console.log(keys, idx, next);
|
||||||
return next
|
return next
|
||||||
}
|
}
|
||||||
@ -19803,6 +19824,19 @@
|
|||||||
} else console.warn('Tried to remove layer that was not set.', this, layer);
|
} else console.warn('Tried to remove layer that was not set.', this, layer);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
remove(graphics) {
|
||||||
|
if (graphics instanceof GeoGraphics) {
|
||||||
|
let index = this.geographics.indexOf(geographics);
|
||||||
|
if (index != -1) {
|
||||||
|
this.displayObject.removeChild(geographics);
|
||||||
|
} else {
|
||||||
|
console.error('Could not remove geographics from geolayer.', this, geographics);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
this.displayObject.removeChild(graphics);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
set parent(parent) {
|
set parent(parent) {
|
||||||
this._parent = parent;
|
this._parent = parent;
|
||||||
}
|
}
|
||||||
@ -19869,7 +19903,7 @@
|
|||||||
mapList,
|
mapList,
|
||||||
scatterContainer,
|
scatterContainer,
|
||||||
displayObject,
|
displayObject,
|
||||||
{ onTransform = null, onChange = null, focus = null, zoom = null, viewport = null, mapList = null } = {}
|
{ onTransform = null, onChange = null, focus = null, zoom = null, viewport = null } = {}
|
||||||
) {
|
) {
|
||||||
super(displayObject);
|
super(displayObject);
|
||||||
|
|
||||||
@ -19890,12 +19924,16 @@
|
|||||||
});
|
});
|
||||||
|
|
||||||
this.mapList = mapList;
|
this.mapList = mapList;
|
||||||
this._map = null;
|
|
||||||
|
|
||||||
// //TODO Implement error handling here.
|
// //TODO Implement error handling here.
|
||||||
// this.maps = maps
|
// this.maps = maps
|
||||||
// if (opts.map) this.placeMap(opts.map)
|
// if (opts.map) this.placeMap(opts.map)
|
||||||
this.dynamicElements = new Map();
|
this.dynamicElements = new Map();
|
||||||
|
|
||||||
|
// Binds the transformed callback beforehand.
|
||||||
|
this.transformed = this.transformed.bind(this);
|
||||||
|
|
||||||
|
this.changeMap(mapList.active);
|
||||||
}
|
}
|
||||||
|
|
||||||
adapt() {
|
adapt() {
|
||||||
@ -19945,10 +19983,10 @@
|
|||||||
/* map ,
|
/* map ,
|
||||||
useScatterAsContainer = true // If set to false, the normal container is used. This is necessary when using submaps and the container need to be a RigidContainer.*/
|
useScatterAsContainer = true // If set to false, the normal container is used. This is necessary when using submaps and the container need to be a RigidContainer.*/
|
||||||
) {
|
) {
|
||||||
if (map instanceof GeoMap) {
|
console.log('Change map to: ', name);
|
||||||
console.log('Change map to: ', map);
|
let oldMap = this.map;
|
||||||
let oldMap = this.map;
|
|
||||||
if (oldMap) oldMap.unload();
|
this.mapList.select(name);
|
||||||
|
|
||||||
if (oldMap) {
|
if (oldMap) {
|
||||||
oldMap.unload();
|
oldMap.unload();
|
||||||
@ -19963,7 +20001,7 @@
|
|||||||
console.log(this, this.scatterContainer);
|
console.log(this, this.scatterContainer);
|
||||||
this.scatterContainer.addChild(map.image);
|
this.scatterContainer.addChild(map.image);
|
||||||
|
|
||||||
this.mapview.apply(this.map);
|
this.mapview.apply(map);
|
||||||
map.image.addChild(this.displayObject);
|
map.image.addChild(this.displayObject);
|
||||||
|
|
||||||
// A geolayer's displayObject is on the parent layer.
|
// A geolayer's displayObject is on the parent layer.
|
||||||
@ -20329,7 +20367,6 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
get map() {
|
get map() {
|
||||||
console.log(this.mapList);
|
|
||||||
return this.mapList.map
|
return this.mapList.map
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -266,6 +266,7 @@ export class SubmapScatter extends DisplayObjectScatter {
|
|||||||
minScale: 1,
|
minScale: 1,
|
||||||
maxScale: 1,
|
maxScale: 1,
|
||||||
startScale: 1,
|
startScale: 1,
|
||||||
|
overdoScaling: 1,
|
||||||
scalable: false
|
scalable: false
|
||||||
})
|
})
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user