source:
issm/oecreview/Archive/20545-21336/ISSM-20564-20565.diff@
21337
Last change on this file since 21337 was 21337, checked in by , 8 years ago | |
---|---|
File size: 9.7 KB |
-
../trunk-jpl/src/m/plot/plot_unit.js
15 15 var ymin,ymax; 16 16 var zmin,zmax; 17 17 var datamin,datamax,datadelta; 18 var scale, zscale,surfacescale;18 var scale,matrixscale,vertexscale; 19 19 20 20 //Process data and model 21 21 var meshresults = processmesh(md,data,options); … … 30 30 var data2 = dataresults[0]; 31 31 var datatype = dataresults[1]; 32 32 33 //Compue scaling through matrices for 2d meshes and vertices for 3d meshes 33 34 if (!md.geometry.surface) { 34 35 md.geometry.surface=NewArrayFill(md.mesh.x.length,0); 35 36 } 36 37 if (md.mesh.classname() == 'mesh3dsurface') { 37 zscale = 1;38 surfacescale = options.getfieldvalue('heightscale',1);38 matrixscale = 1; 39 vertexscale = options.getfieldvalue('heightscale',1); 39 40 } 40 41 else { 41 42 if (md.geometry.surface) { 42 43 z=md.geometry.surface; 43 44 } 44 zscale = options.getfieldvalue('heightscale',1);45 surfacescale = 0;45 matrixscale = options.getfieldvalue('heightscale',1); 46 vertexscale = 0; 46 47 } 47 48 //}}} 48 49 … … 61 62 zmax = zlim[1]; 62 63 var caxis; 63 64 64 //Compute scaling:65 //Compute gl variables: 65 66 scale = 1 / (xmax - xmin); 66 67 node["shaderName"] = "unlit_textured"; 67 68 node["shader"] = gl["shaders"][node["shaderName"]]["program"]; 68 node["scale"] = [scale, scale, scale * zscale];69 node["scale"] = [scale, scale, scale * matrixscale]; 69 70 node["translation"] = [(xmin + xmax) / (-2 / scale), (ymin + ymax) / (-2 / scale), (zmin + zmax) / (2 / scale)]; 70 71 node["modelMatrix"] = recalculateModelMatrix(node); 71 72 node["alpha"] = options.getfieldvalue('alpha',1.0); … … 119 120 } 120 121 //Scale vertices 121 122 xyz = vec3.fromValues(x[i], y[i], z[i]); 122 magnitude = vec3.length(xyz) + md.geometry.surface[i] * surfacescale;123 magnitude = vec3.length(xyz) + md.geometry.surface[i] * vertexscale; 123 124 vec3.normalize(direction, xyz); 124 125 vec3.scale(vertex, direction, magnitude); 125 126 vertices[vertices.length] = vertex[0]; … … 182 183 } 183 184 //Scale vertices 184 185 xyz = vec3.fromValues(x[i], y[i], z[i]); 185 magnitude = vec3.length(xyz) + md.geometry.surface[i] * surfacescale;186 magnitude = vec3.length(xyz) + md.geometry.surface[i] * vertexscale; 186 187 vec3.normalize(direction, xyz); 187 188 vec3.scale(vertex, direction, magnitude); 188 189 vertices[vertices.length] = vertex[0]; -
../trunk-jpl/src/m/plot/plot_quiver.js
13 13 var xmin,xmax; 14 14 var ymin,ymax; 15 15 var zmin,zmax; 16 var scale, zscale,surfacescale;16 var scale,matrixscale,vertexscale; 17 17 18 18 //Process data and model 19 19 var meshresults = processmesh(md,[],options); … … 26 26 var vx = md.initialization.vx; 27 27 var vy = md.initialization.vy; 28 28 29 //Compue scaling through matrices for 2d meshes and vertices for 3d meshes 29 30 if (!md.geometry.surface) { 30 31 md.geometry.surface=NewArrayFill(md.mesh.x.length,0); 31 32 } 32 33 if (md.mesh.classname() == 'mesh3dsurface') { 33 zscale = 1;34 surfacescale = options.getfieldvalue('heightscale',1);34 matrixscale = 1; 35 vertexscale = options.getfieldvalue('heightscale',1); 35 36 } 36 37 else { 37 38 if (md.geometry.surface) { 38 39 z=md.geometry.surface; 39 40 } 40 zscale = options.getfieldvalue('heightscale',1);41 surfacescale = 0;41 matrixscale = options.getfieldvalue('heightscale',1); 42 vertexscale = 0; 42 43 } 43 44 //}}} 44 45 … … 56 57 zmin = zlim[0]; 57 58 zmax = zlim[1]; 58 59 59 //Compute scaling:60 //Compute gl variables: 60 61 var scale = 1 / (xmax - xmin); 61 62 node["shaderName"] = "colored"; 62 63 node["shader"] = gl["shaders"][node["shaderName"]]["program"]; 63 node["scale"] = [scale, scale, scale * zscale];64 node["scale"] = [scale, scale, scale * matrixscale]; 64 65 node["translation"] = [(xmin + xmax) / (-2 / scale), (ymin + ymax) / (-2 / scale), (zmin + zmax) / (2 / scale)]; 65 66 node["modelMatrix"] = recalculateModelMatrix(node); 66 67 node["drawMode"] = gl.LINES; … … 95 96 if (isNaN(x[i]) || isNaN(y[i]) || isNaN(z[i])) continue; 96 97 //Scale vertices 97 98 xyz1 = vec3.fromValues(x[i], y[i], z[i]); 98 magnitude = vec3.length(xyz1) + md.geometry.surface[i] * surfacescale;99 magnitude = vec3.length(xyz1) + md.geometry.surface[i] * vertexscale; 99 100 vec3.normalize(direction, xyz1); 100 101 vec3.scale(vertex, direction, magnitude); 101 102 vertices[vertices.length] = vertex[0]; -
../trunk-jpl/src/m/plot/plot_overlay.js
15 15 var xmin,xmax; 16 16 var ymin,ymax; 17 17 var zmin,zmax; 18 var scale, zscale,surfacescale;18 var scale,matrixscale,vertexscale; 19 19 20 20 //Process data and model 21 21 var meshresults = processmesh(md,data,options); … … 26 26 var is2d = meshresults[4]; 27 27 var isplanet = meshresults[5]; 28 28 29 //Compue scaling through matrices for 2d meshes and vertices for 3d meshes 29 30 if (!md.geometry.surface) { 30 31 md.geometry.surface=NewArrayFill(md.mesh.x.length,0); 31 32 } 32 33 if (md.mesh.classname() == 'mesh3dsurface') { 33 zscale = 1;34 surfacescale = options.getfieldvalue('heightscale',1);34 matrixscale = 1; 35 vertexscale = options.getfieldvalue('heightscale',1); 35 36 } 36 37 else { 37 38 if (md.geometry.surface) { 38 39 z=md.geometry.surface; 39 40 } 40 zscale = options.getfieldvalue('heightscale',1);41 surfacescale = 0;41 matrixscale = options.getfieldvalue('heightscale',1); 42 vertexscale = 0; 42 43 } 43 44 //}}} 44 45 … … 56 57 zmin = zlim[0]; 57 58 zmax = zlim[1]; 58 59 59 //Compute scaling:60 //Compute gl variables: 60 61 scale = 1 / (xmax - xmin); 61 62 node["shaderName"] = "unlit_textured"; 62 63 node["shader"] = gl["shaders"][node["shaderName"]]["program"]; 63 node["scale"] = [scale, scale, scale * zscale];64 node["scale"] = [scale, scale, scale * matrixscale]; 64 65 node["translation"] = [(xmin + xmax) / (-2 / scale), (ymin + ymax) / (-2 / scale), (zmin + zmax) / (2 / scale)]; 65 66 node["modelMatrix"] = recalculateModelMatrix(node); 66 67 node["texture"] = initTexture(gl,options.getfieldvalue('image')); … … 117 118 vertices[vertices.length] = vertex[2]; 118 119 continue; 119 120 } 120 //Scale vertices 121 xyz = vec3.fromValues(x[i], y[i], z[i]); 122 magnitude = vec3.length(xyz); 123 vec3.normalize(direction, xyz); 124 vec3.scale(vertex, direction, magnitude); 125 vertices[vertices.length] = vertex[0]; 126 vertices[vertices.length] = vertex[1]; 127 vertices[vertices.length] = vertex[2]; 128 121 129 122 if (md.mesh.classname() == 'mesh3dsurface') { 130 texcoords[texcoords.length] = degrees(Math.atan2(y[i], x[i])) / 360 + 0.5; 131 texcoords[texcoords.length] = degrees(Math.asin(z[i] / magnitude)) / 180 + 0.5; 123 //Scale vertices 124 xyz = vec3.fromValues(x[i], y[i], z[i]); 125 magnitude = vec3.length(xyz) + md.geometry.surface[i] * vertexscale; 126 vec3.normalize(direction, xyz); 127 vec3.scale(vertex, direction, magnitude); 128 vertices[vertices.length] = vertex[0]; 129 vertices[vertices.length] = vertex[1]; 130 vertices[vertices.length] = vertex[2]; 131 132 texcoords[texcoords.length] = degrees(Math.atan2(vertex[1], vertex[0])) / 360 + 0.5; 133 texcoords[texcoords.length] = degrees(Math.asin(vertex[2] / magnitude)) / 180 + 0.5; 132 134 } 133 135 else { 136 //Scale vertices 137 xyz = vec3.fromValues(x[i], y[i], z[i]); 138 magnitude = vec3.length(xyz); 139 vec3.normalize(direction, xyz); 140 vec3.scale(vertex, direction, magnitude); 141 vertices[vertices.length] = vertex[0]; 142 vertices[vertices.length] = vertex[1]; 143 vertices[vertices.length] = vertex[2]; 144 134 145 texcoords[texcoords.length] = (x[i] - modelxlim[0]) / xrange; 135 146 texcoords[texcoords.length] = (y[i] - modelylim[0]) / yrange; 136 147 } -
../trunk-jpl/src/m/plot/plot_mesh.js
12 12 var xmin,xmax; 13 13 var ymin,ymax; 14 14 var zmin,zmax; 15 var scale, zscale,surfacescale;15 var scale,matrixscale,vertexscale; 16 16 17 17 //Process data and model 18 18 var meshresults = processmesh(md,[],options); … … 23 23 var is2d = meshresults[4]; 24 24 var isplanet = meshresults[5]; 25 25 26 //Compue scaling through matrices for 2d meshes and vertices for 3d meshes 26 27 if (!md.geometry.surface) { 27 28 md.geometry.surface=NewArrayFill(md.mesh.x.length,0); 28 29 } 29 30 if (md.mesh.classname() == 'mesh3dsurface') { 30 zscale = 1;31 surfacescale = options.getfieldvalue('heightscale',1);31 matrixscale = 1; 32 vertexscale = options.getfieldvalue('heightscale',1); 32 33 } 33 34 else { 34 35 if (md.geometry.surface) { 35 36 z=md.geometry.surface; 36 37 } 37 zscale = options.getfieldvalue('heightscale',1);38 surfacescale = 0;38 matrixscale = options.getfieldvalue('heightscale',1); 39 vertexscale = 0; 39 40 } 40 41 //}}} 41 42 … … 53 54 zmin = zlim[0]; 54 55 zmax = zlim[1]; 55 56 56 //Compute scaling:57 //Compute gl variables: 57 58 var scale = 1 / (xmax - xmin); 58 59 node["shaderName"] = "colored"; 59 60 node["shader"] = gl["shaders"][node["shaderName"]]["program"]; 60 node["scale"] = [scale, scale, scale * zscale];61 node["scale"] = [scale, scale, scale * matrixscale]; 61 62 node["translation"] = [(xmin + xmax) / (-2 / scale), (ymin + ymax) / (-2 / scale), (zmin + zmax) / (2 / scale)]; 62 63 node["modelMatrix"] = recalculateModelMatrix(node); 63 64 node["drawMode"] = gl.LINES; … … 96 97 } 97 98 //Scale vertices 98 99 xyz = vec3.fromValues(x[i], y[i], z[i]); 99 magnitude = vec3.length(xyz) + md.geometry.surface[i] * surfacescale;100 magnitude = vec3.length(xyz) + md.geometry.surface[i] * vertexscale; 100 101 vec3.normalize(direction, xyz); 101 102 vec3.scale(vertex, direction, magnitude); 102 103 vertices[vertices.length] = vertex[0];
Note:
See TracBrowser
for help on using the repository browser.