<p><b>dwj07@fsu.edu</b> 2012-03-23 12:57:56 -0600 (Fri, 23 Mar 2012)</p><p><br>
        -- BRANCH COMMIT --<br>
<br>
        Fixing a bug with 2d fields.<br>
</p><hr noshade><pre><font color="gray">Modified: branches/tools/mpas_draw/netcdf_utils.cpp
===================================================================
--- branches/tools/mpas_draw/netcdf_utils.cpp        2012-03-23 17:46:34 UTC (rev 1700)
+++ branches/tools/mpas_draw/netcdf_utils.cpp        2012-03-23 18:57:56 UTC (rev 1701)
@@ -1400,6 +1400,7 @@
         NcVar *var_id;
         int num_dims;
         int type;
+        int nCells, nEdges, nVertices;
         long *dims;
         //
         //  Open the file.
@@ -1418,13 +1419,21 @@
         for(int i = 0; i &lt; num_dims; i++){
                 dims[i] = var_id-&gt;get_dim(i)-&gt;size();
         }
+        nCells = netcdf_mpas_read_dim (filename, &quot;nCells&quot;);
+        nEdges = netcdf_mpas_read_dim (filename, &quot;nEdges&quot;);
+        nVertices = netcdf_mpas_read_dim (filename, &quot;nVertices&quot;);
 
         type = var_id-&gt;type();
         if(type == 6){ // NCDOUBLE
+                cout &lt;&lt; &quot;ncdouble&quot; &lt;&lt; endl;
                 switch(num_dims){
                         case 2:
                                 (*var_id).set_cur(0, cur_level);
-                                (*var_id).get ( &amp;values[0], dims[0], 1);
+                                if(dims[0] == nCells || dims[0] == nEdges || dims[0] == nVertices){
+                                        (*var_id).get ( &amp;values[0], dims[0], 1);
+                                } else {
+                                        (*var_id).get ( &amp;values[0], 1, dims[1]);
+                                }
                                 break;
                         case 3:
                                 (*var_id).set_cur(cur_time, 0, cur_level);
@@ -1435,6 +1444,7 @@
                                 break;
                 }
         } else if(type == 4){ //NCINT
+                cout &lt;&lt; &quot;ncint&quot; &lt;&lt; endl;
                 int *tmp_values;
                 int num_items;
 
@@ -1443,7 +1453,11 @@
                                 num_items = dims[0];
                                 tmp_values = new int[num_items];
                                 (*var_id).set_cur(0, cur_level);
-                                (*var_id).get ( &amp;tmp_values[0], dims[0], 1);
+                                if(dims[0] == nCells || dims[0] == nEdges || dims[0] == nVertices){
+                                        (*var_id).get ( &amp;tmp_values[0], dims[0], 1);
+                                } else {
+                                        (*var_id).get ( &amp;tmp_values[0], 1, dims[1]);
+                                }
                                 break;
                         case 3:
                                 num_items = dims[1];

</font>
</pre>