Changeset 19886
- Timestamp:
- 12/12/15 20:17:07 (9 years ago)
- Location:
- issm/trunk-jpl/src/m/plot
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/m/plot/plot_unit.js
r19885 r19886 19 19 20 20 //Process data and model 21 var meshresults; 22 if (data["1"] instanceof Float64Array) { 23 meshresults = processmesh(md,data["1"],options); 24 } 25 else { 26 meshresults = processmesh(md,data,options); 27 } 21 var meshresults = processmesh(md,data,options); 28 22 var x = meshresults[0]; 29 23 var y = meshresults[1]; … … 33 27 var isplanet = meshresults[5]; 34 28 35 var dataresults, data2, datatype; 36 if (data["1"] instanceof Float64Array) { 37 dataresults = processdata(md,data["1"],options); 38 data2 = dataresults[0]; 39 datatype = dataresults[1]; 40 } 41 else { 42 dataresults = processdata(md,data,options); 43 data2 = dataresults[0]; 44 datatype = dataresults[1]; 45 } 29 var dataresults = processdata(md,data,options); 30 var data2 = dataresults[0]; 31 var datatype = dataresults[1]; 46 32 //}}} 47 33 … … 126 112 var cmap=options.getfieldvalue('cmap','jet'); 127 113 //If handling movie data, compute vertices once and texcoords for each movie frame 128 if (data[ "1"] instanceof Float64Array) {114 if (data[0] instanceof Float64Array) { 129 115 for(var i = 0; i < x.length; i++){ 130 116 vertices[vertices.length] = x[i]; … … 132 118 vertices[vertices.length] = z[i]; 133 119 } 134 135 var datasubarray; 120 //Transpose data to obtain column addressable data matrix 121 data = data[0].map(function(col, i) { 122 return data.map(function(row) { 123 return row[i] 124 }) 125 }); 136 126 for(var i = 0; i < data.length-1; i++){ 137 127 //Prevent evaluation of datasubarray min/max if caxis exists 138 datasubarray = data[String(i+1)];139 128 if (options.exist('caxis')) { 140 129 caxis = options.getfieldvalue('caxis'); 141 130 } 142 131 else { 143 caxis = [ArrayMin(data subarray),ArrayMax(datasubarray)];132 caxis = [ArrayMin(data[i]),ArrayMax(data[i])]; 144 133 } 145 134 datamin = caxis[0]; … … 152 141 for(var j = 0; j < x.length; j++){ 153 142 texcoords[i][texcoords[i].length] = 0.5; 154 texcoords[i][texcoords[i].length] = (data subarray[j] - datamin) / datadelta;143 texcoords[i][texcoords[i].length] = (data[i][j] - datamin) / datadelta; 155 144 } 156 145 } … … 158 147 //Initialize movie loop 159 148 node["movieInterval"] = 1000 / options.getfieldvalue('moviefps',5); 160 node["movieLength"] = data .length;149 node["movieLength"] = data[0].length; 161 150 node["movieFrame"] = 0; 162 151 node["movieHandler"] = function () { … … 210 199 211 200 /*Initalize buffers: */ 212 if (data[ "1"] instanceof Float64Array) {201 if (data[0] instanceof Float64Array) { 213 202 node["arrays"] = [vertices, texcoords, indices]; 214 203 node["buffers"] = initBuffers(gl,[node["arrays"][0],node["arrays"][1][0],node["arrays"][2]]); -
issm/trunk-jpl/src/m/plot/webgl.js
r19873 r19886 357 357 } //}}} 358 358 function draw(gl,options,canvas,nodes) { //{{{ 359 360 359 // Set clear color to black, fully opaque 361 360 var backgroundcolor=new RGBColor(options.getfieldvalue('backgroundcolor','white')); … … 370 369 window.requestAnimationFrame(function(time) {draw(gl,options,canvas,nodes)}); 371 370 updateCameraMatrix(canvas); 371 372 372 var drawPassNumber = 2; 373 373 for (var i = drawPassNumber - 1; i >= 0; i--) {
Note:
See TracChangeset
for help on using the changeset viewer.