Changeset 19886


Ignore:
Timestamp:
12/12/15 20:17:07 (9 years ago)
Author:
dlcheng
Message:

CHG (javascript): Modifying accepted movie data format for js plots.

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  
    1919
    2020        //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);
    2822        var x = meshresults[0];
    2923        var y = meshresults[1];
     
    3327        var isplanet = meshresults[5];
    3428       
    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];
    4632        //}}}
    4733
     
    126112                                var cmap=options.getfieldvalue('cmap','jet');
    127113                                //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) {
    129115                                        for(var i = 0; i < x.length; i++){
    130116                                                vertices[vertices.length] = x[i];
     
    132118                                                vertices[vertices.length] = z[i];
    133119                                        }       
    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                                        });
    136126                                        for(var i = 0; i < data.length-1; i++){
    137127                                                //Prevent evaluation of datasubarray min/max if caxis exists
    138                                                 datasubarray = data[String(i+1)];
    139128                                                if (options.exist('caxis')) {
    140129                                                        caxis = options.getfieldvalue('caxis');
    141130                                                }
    142131                                                else {
    143                                                         caxis = [ArrayMin(datasubarray),ArrayMax(datasubarray)];
     132                                                        caxis = [ArrayMin(data[i]),ArrayMax(data[i])];
    144133                                                }
    145134                                                datamin = caxis[0];
     
    152141                                                for(var j = 0; j < x.length; j++){
    153142                                                        texcoords[i][texcoords[i].length] = 0.5;
    154                                                         texcoords[i][texcoords[i].length] = (datasubarray[j] - datamin) / datadelta;
     143                                                        texcoords[i][texcoords[i].length] = (data[i][j] - datamin) / datadelta;
    155144                                                }
    156145                                        }
     
    158147                                        //Initialize movie loop
    159148                                        node["movieInterval"] = 1000 / options.getfieldvalue('moviefps',5);
    160                                         node["movieLength"] = data.length;
     149                                        node["movieLength"] = data[0].length;
    161150                                        node["movieFrame"] = 0;
    162151                                        node["movieHandler"] = function () {
     
    210199       
    211200        /*Initalize buffers: */
    212         if (data["1"] instanceof Float64Array) {
     201        if (data[0] instanceof Float64Array) {
    213202                node["arrays"] = [vertices, texcoords, indices];
    214203                node["buffers"] = initBuffers(gl,[node["arrays"][0],node["arrays"][1][0],node["arrays"][2]]);
  • issm/trunk-jpl/src/m/plot/webgl.js

    r19873 r19886  
    357357} //}}}
    358358function draw(gl,options,canvas,nodes) { //{{{
    359 
    360359        // Set clear color to black, fully opaque
    361360        var backgroundcolor=new RGBColor(options.getfieldvalue('backgroundcolor','white'));
     
    370369        window.requestAnimationFrame(function(time) {draw(gl,options,canvas,nodes)});
    371370        updateCameraMatrix(canvas);
     371       
    372372        var drawPassNumber = 2;
    373373        for (var i = drawPassNumber - 1; i >= 0; i--) {
Note: See TracChangeset for help on using the changeset viewer.