[20498] | 1 | Index: ../trunk-jpl/src/m/plot/webgl.js
|
---|
| 2 | ===================================================================
|
---|
| 3 | --- ../trunk-jpl/src/m/plot/webgl.js (revision 19936)
|
---|
| 4 | +++ ../trunk-jpl/src/m/plot/webgl.js (revision 19937)
|
---|
| 5 | @@ -47,17 +47,17 @@
|
---|
| 6 | canvas.controlsensitivity = 1;
|
---|
| 7 |
|
---|
| 8 | // Add event listeners for canvas
|
---|
| 9 | - canvas.addEventListener("mousewheel", function (ev) {onZoom(ev,canvas)}, false);
|
---|
| 10 | - canvas.addEventListener("DOMMouseScroll", function (ev) {onZoom(ev,canvas)}, false);
|
---|
| 11 | + canvas.addEventListener("mousewheel", function (ev) {onZoom(ev,canvas,options)}, false);
|
---|
| 12 | + canvas.addEventListener("DOMMouseScroll", function (ev) {onZoom(ev,canvas,options)}, false);
|
---|
| 13 |
|
---|
| 14 | var mc = new Hammer.Manager(canvas);
|
---|
| 15 |
|
---|
| 16 | mc.add(new Hammer.Pan({threshold:0, pointers:0}));
|
---|
| 17 | mc.add(new Hammer.Pinch({threshold:0})).recognizeWith(mc.get('pan'));
|
---|
| 18 |
|
---|
| 19 | - mc.on("panstart panmove", function (ev) {onPan(ev,canvas);});
|
---|
| 20 | - mc.on("pinchstart pinchmove", function (ev) {onPinch(ev,canvas);});
|
---|
| 21 | - //mc.on("mousewheel DOMMouseScroll", function (ev) {onZoom(ev,canvas);});
|
---|
| 22 | + mc.on("panstart panmove", function (ev) {onPan(ev,canvas,options);});
|
---|
| 23 | + mc.on("pinchstart pinchmove", function (ev) {onPinch(ev,canvas,options);});
|
---|
| 24 | + //mc.on("mousewheel DOMMouseScroll", function (ev) {onZoom(ev,canvas,options);});
|
---|
| 25 |
|
---|
| 26 | return gl;
|
---|
| 27 | } //}}}
|
---|
| 28 | @@ -234,7 +234,7 @@
|
---|
| 29 | '',
|
---|
| 30 | 'void main(void) {',
|
---|
| 31 | ' if (uMaskEnabled && (vZCoord < uMaskHeight)) {',
|
---|
| 32 | - ' gl_FragColor = uMaskColor;',
|
---|
| 33 | + ' gl_FragColor = vec4(uMaskColor.xyz, uAlpha);',
|
---|
| 34 | ' }',
|
---|
| 35 | ' else {',
|
---|
| 36 | ' gl_FragColor = vec4(texture2D(uColorSampler, vec2(vTextureCoord.s, vTextureCoord.t)).rgb, uAlpha);',
|
---|
| 37 | @@ -314,7 +314,7 @@
|
---|
| 38 | } //}}}
|
---|
| 39 | //}}}
|
---|
| 40 | //{{{ Interface Functions
|
---|
| 41 | -function onPan(ev,canvas) { //{{{
|
---|
| 42 | +function onPan(ev,canvas,options) { //{{{
|
---|
| 43 | ev.preventDefault();
|
---|
| 44 | if (ev.type == 'panstart') {
|
---|
| 45 | canvas.lastDeltaX = 0;
|
---|
| 46 | @@ -325,7 +325,6 @@
|
---|
| 47 | var deltaY = (canvas.lastDeltaY - ev.deltaY) / canvas.clientHeight * canvas.zoomFactor * 2;
|
---|
| 48 |
|
---|
| 49 | canvas.translation[0] += Math.cos(radians(canvas.rotation[0])) * deltaX - Math.sin(radians(canvas.rotation[0])) * deltaY;
|
---|
| 50 | - //console.log(Math.cos(radians(canvas.rotation[0])) * deltaX, Math.sin(radians(canvas.rotation[0])) * deltaY);
|
---|
| 51 | canvas.translation[1] += Math.sin(radians(canvas.rotation[0])) * deltaX + Math.cos(radians(canvas.rotation[0])) * deltaY;
|
---|
| 52 | }
|
---|
| 53 | else {
|
---|
| 54 | @@ -343,23 +342,23 @@
|
---|
| 55 | canvas.lastDeltaX = ev.deltaX;
|
---|
| 56 | canvas.lastDeltaY = ev.deltaY;
|
---|
| 57 |
|
---|
| 58 | - console.log(canvas.rotation);
|
---|
| 59 | + if (options.getfieldvalue('displayview','off') == 'on') console.log(canvas.rotation);
|
---|
| 60 | } //}}}
|
---|
| 61 | -function onPinch(ev,canvas) { //{{{
|
---|
| 62 | +function onPinch(ev,canvas,options) { //{{{
|
---|
| 63 | ev.preventDefault();
|
---|
| 64 | if (ev.type == 'pinchstart') {
|
---|
| 65 | canvas.zoomLast = canvas.zoomFactor;
|
---|
| 66 | }
|
---|
| 67 | else {
|
---|
| 68 | canvas.zoomFactor = clamp(ev.scale * canvas.zoomLast, canvas.zoomBounds[1], canvas.zoomBounds[0]);
|
---|
| 69 | - console.log(canvas.zoomFactor);
|
---|
| 70 | + if (options.getfieldvalue('displayzoom','off') == 'on') console.log(canvas.zoomFactor);
|
---|
| 71 | }
|
---|
| 72 | } //}}}
|
---|
| 73 | -function onZoom(ev,canvas) { //{{{
|
---|
| 74 | +function onZoom(ev,canvas,options) { //{{{
|
---|
| 75 | ev.preventDefault();
|
---|
| 76 | var delta = 1/10 * clamp(ev.scale || ev.wheelDelta || -ev.detail, -1, 1);
|
---|
| 77 | canvas.zoomFactor = clamp(canvas.zoomFactor - delta * canvas.zoomFactor, canvas.zoomBounds[1], canvas.zoomBounds[0]);
|
---|
| 78 | - console.log(canvas.zoomFactor);
|
---|
| 79 | + if (options.getfieldvalue('displayzoom','off') == 'on') console.log(canvas.zoomFactor);
|
---|
| 80 | } //}}}
|
---|
| 81 | //}}}
|
---|
| 82 | //{{{ Drawing Functions
|
---|
| 83 | Index: ../trunk-jpl/src/m/classes/plotoptions.js
|
---|
| 84 | ===================================================================
|
---|
| 85 | --- ../trunk-jpl/src/m/classes/plotoptions.js (revision 19936)
|
---|
| 86 | +++ ../trunk-jpl/src/m/classes/plotoptions.js (revision 19937)
|
---|
| 87 | @@ -148,9 +148,6 @@
|
---|
| 88 | //check that there is no duplicates
|
---|
| 89 | for (var i=0;i<numberofplots;i++) list[i].deleteduplicates();
|
---|
| 90 |
|
---|
| 91 | - //allocate canvasid automatically
|
---|
| 92 | - for (var i=0;i<numberofplots;i++) list[i].addfield('canvasid',i);
|
---|
| 93 | -
|
---|
| 94 | //Get figure number (should be in options for subplot 1)
|
---|
| 95 | this.figurenumber=list[0].getfieldvalue('figure',1);
|
---|
| 96 | list[0].removefield('figure',0);
|
---|