Changeset 20770
- Timestamp:
- 06/18/16 16:37:38 (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/m/plot/webgl.js
r20769 r20770 50 50 canvas.zoomLast = canvas.zoomFactor; 51 51 canvas.cameraMatrix = mat4.create(); 52 canvas.translation = options.getfieldvalue(' centeroffset',[0,0,0.0]);52 canvas.translation = options.getfieldvalue('origin',[0,0,0.0]); 53 53 canvas.rotationAzimuthBounds = options.getfieldvalue('azlim',[0,360]); 54 54 canvas.rotationElevationBounds = options.getfieldvalue('ellim',[-180,180]); … … 61 61 canvas.movieIncrement = true; 62 62 canvas.moviefps = options.getfieldvalue('moviefps',5); 63 64 if (canvas.twod) {65 canvas.rotationAzimuthBounds = [0,0];66 canvas.rotationElevationBounds = [90,90];67 canvas.rotationDefault = [0,90];68 canvas.rotation = canvas.rotationDefault;69 }70 63 71 64 // Add event listeners for canvas … … 396 389 var azimuthRotationMatrix = mat4.create(); 397 390 var elevationRotationMatrix = mat4.create(); 391 var aspectRatio = canvas.clientWidth / canvas.clientHeight; 398 392 399 393 if (canvas.twod) { 400 mat4.ortho(pMatrix, -1 /canvas.zoomFactor, 1/canvas.zoomFactor, -1/canvas.zoomFactor, 1/canvas.zoomFactor, -1.0, 10000.0);394 mat4.ortho(pMatrix, -1*aspectRatio/canvas.zoomFactor, 1*aspectRatio/canvas.zoomFactor, -1*aspectRatio/canvas.zoomFactor, 1*aspectRatio/canvas.zoomFactor, -1.0, 10000.0); 401 395 } 402 396 else { 403 mat4.perspective(pMatrix, 60 * Math.PI / 180, canvas.clientWidth / canvas.clientHeight, 0.001, 10000.0);397 mat4.perspective(pMatrix, 60 * Math.PI / 180, aspectRatio, 0.001, 10000.0); 404 398 } 405 399 … … 409 403 410 404 //Calculate rotation around camera focal point about worldspace origin 411 mat4.rotate(azimuthRotationMatrix, azimuthRotationMatrix, radians(canvas.rotation[0]), [0, 1, 0]); 412 mat4.rotate(elevationRotationMatrix, elevationRotationMatrix, radians(canvas.rotation[1]), [1, 0, 0]); 413 mat4.multiply(rotationMatrix, elevationRotationMatrix, azimuthRotationMatrix); 405 if (canvas.twod) { 406 mat4.rotate(azimuthRotationMatrix, azimuthRotationMatrix, radians(canvas.rotation[0]), [0, 1, 0]); 407 mat4.rotate(elevationRotationMatrix, elevationRotationMatrix, radians(canvas.rotation[1]), [1, 0, 0]); 408 mat4.multiply(rotationMatrix, elevationRotationMatrix, azimuthRotationMatrix); 409 } 410 else { 411 mat4.rotate(azimuthRotationMatrix, azimuthRotationMatrix, radians(0), [0, 1, 0]); 412 mat4.rotate(elevationRotationMatrix, elevationRotationMatrix, radians(90), [1, 0, 0]); 413 mat4.multiply(rotationMatrix, elevationRotationMatrix, azimuthRotationMatrix); 414 } 414 415 415 416 //Apply rotation and scaling transform
Note:
See TracChangeset
for help on using the changeset viewer.