Index: /issm/trunk-jpl/src/android/ISSM/jni/Main.cpp
===================================================================
--- /issm/trunk-jpl/src/android/ISSM/jni/Main.cpp	(revision 14187)
+++ /issm/trunk-jpl/src/android/ISSM/jni/Main.cpp	(revision 14188)
@@ -138,5 +138,5 @@
 		}
 
-		for(i=0;i<148;i++){
+		/*for(i=0;i<148;i++){
 		__android_log_print(ANDROID_LOG_INFO, "Native","%g %g %g | %g %g %g | %g %g %g | %g %g %g\n",
 				dBuf[12*i+0],dBuf[12*i+1],dBuf[12*i+2],
@@ -144,5 +144,5 @@
 				dBuf[12*i+6],dBuf[12*i+7],dBuf[12*i+8],
 				dBuf[12*i+9],dBuf[12*i+10],dBuf[12*i+11]);
-		}
+		}*/
 
 		/*delete temporary data:*/
Index: /issm/trunk-jpl/src/android/ISSM/src/com/example/issm/ColorMap.java
===================================================================
--- /issm/trunk-jpl/src/android/ISSM/src/com/example/issm/ColorMap.java	(revision 14187)
+++ /issm/trunk-jpl/src/android/ISSM/src/com/example/issm/ColorMap.java	(revision 14188)
@@ -5,4 +5,5 @@
 {
 	private double[][] d;
+	final int rowNumber = 64;
 //-------------------------------------------------------
 	public ColorMap()
@@ -11,5 +12,5 @@
 	}
 //-------------------------------------------------------
-	//set default color map => hsv
+	//set default color map => hsv {{{
 	public void setDefault()
 	{
@@ -80,5 +81,6 @@
 				{ 1.0, 	0.0, 	0.0938 }
 			};
-	}
+	} 
+	//}}}
 //-------------------------------------------------------
 	public void setAutumn()
@@ -852,9 +854,44 @@
 	}	
 //-------------------------------------------------------
-	public void getRGB(int index, RGB rgb)
-	{
-		rgb.setR( (float) d[index][0] );
-		rgb.setG( (float) d[index][1] );
-		rgb.setB( (float) d[index][2] );
+	public void getRGB(double alpha, RGB rgb)
+	{
+
+		double d1,d2,d3;
+		double d1a,d2a,d3a;
+		double d1b,d2b,d3b;
+		int    index1,index2;
+
+		System.out.println(alpha);
+
+		if (alpha==0){
+			d1=d[0][0];
+			d2=d[0][1];
+			d3=d[0][2];
+		}
+		else if (alpha==1){
+			d1=d[rowNumber-1][0];
+			d2=d[rowNumber-1][1];
+			d3=d[rowNumber-1][2];
+		}
+		else{
+			index1=(int)(alpha*(rowNumber-1));
+			index2=index1+1;
+			
+			d1a=d[index1][0];
+			d2a=d[index1][1];
+			d3a=d[index1][2];
+
+			d1b=d[index2][0];
+			d2b=d[index2][1];
+			d3b=d[index2][2];
+
+			d1=(d1a+d1b)/2;
+			d2=(d2a+d2b)/2;
+			d3=(d3a+d3b)/2;
+		}
+	
+		rgb.setR( (float) d1);
+		rgb.setG( (float) d2);
+		rgb.setB( (float) d3);
 	}	
 //-------------------------------------------------------
Index: /issm/trunk-jpl/src/android/ISSM/src/com/example/issm/MyGLSurfaceView.java
===================================================================
--- /issm/trunk-jpl/src/android/ISSM/src/com/example/issm/MyGLSurfaceView.java	(revision 14187)
+++ /issm/trunk-jpl/src/android/ISSM/src/com/example/issm/MyGLSurfaceView.java	(revision 14188)
@@ -14,5 +14,5 @@
 	private int size;
 	double vmax = 0, vmin=0;
-	final int rowNumber = 64, firstVelocity = 9;
+	final int firstVelocity = 9; 
 	ColorMap colorMap;
     public MyGLSurfaceView(Context context, DoubleBuffer db, int size, ColorMap colorMap) 
@@ -33,5 +33,5 @@
         float f[][] = new float[size][MAX_VERTICES];
         //indexes prefer to velocity at each vertices of triangles.
-        int index1, index2, index3;
+        double alpha1, alpha2, alpha3;
         final int SCALE_FACTOR = 700000;
         RGB rgb = new RGB();
@@ -52,19 +52,19 @@
 				f[i][20] = 1.0f;
 				
-				index1 = getRowColor(db.get(12*i+9));
-				index2 = getRowColor(db.get(12*i+10));
-				index3 = getRowColor(db.get(12*i+11));
+				alpha1 = getAlphaColor(db.get(12*i+9));
+				alpha2 = getAlphaColor(db.get(12*i+10));
+				alpha3 = getAlphaColor(db.get(12*i+11));
 				
-				colorMap.getRGB(index1, rgb);
+				colorMap.getRGB(alpha1, rgb);
 				float r1 = rgb.getR();
 				float g1 = rgb.getG();
 				float b1 = rgb.getB();
 				
-				colorMap.getRGB(index2, rgb);
+				colorMap.getRGB(alpha2, rgb);
 				float r2 = rgb.getR();
 				float g2 = rgb.getG();
 				float b2 = rgb.getB();
 				
-				colorMap.getRGB(index3, rgb);
+				colorMap.getRGB(alpha3, rgb);
 				float r3 = rgb.getR();
 				float g3 = rgb.getG();
@@ -105,9 +105,8 @@
     	
     }  
-    private int getRowColor(double velocity)
+    private double getAlphaColor(double velocity)
     {
-    	double alpha=(vmax-velocity)/(vmax-vmin) ;
-    	int row = (int) (alpha * (rowNumber-1));
-    	return row;
+    	double alpha=(velocity-vmin)/(vmax-vmin) ;
+    	return alpha;
     }
     
