Index: branches/v2_0_0_prep/applications/appgvSIG/src/org/gvsig/app/gui/preferencespage/AppSymbolPreferences.java
===================================================================
--- branches/v2_0_0_prep/applications/appgvSIG/src/org/gvsig/app/gui/preferencespage/AppSymbolPreferences.java	(revision 38550)
+++ branches/v2_0_0_prep/applications/appgvSIG/src/org/gvsig/app/gui/preferencespage/AppSymbolPreferences.java	(revision 38551)
@@ -180,7 +180,7 @@
 	}
 
 	public void resetDefaultSymbolFillColorAleatory() {
-		defaultSymbolFillColorAleatory = false;
+		defaultSymbolFillColorAleatory = true;
 	}
 
 	public void resetDefaultSymbolFont() {
Index: branches/v2_0_0_prep/libraries/libFMap_mapcontext/src/org/gvsig/fmap/mapcontext/rendering/symbols/impl/DefaultSymbolManager.java
===================================================================
--- branches/v2_0_0_prep/libraries/libFMap_mapcontext/src/org/gvsig/fmap/mapcontext/rendering/symbols/impl/DefaultSymbolManager.java	(revision 38550)
+++ branches/v2_0_0_prep/libraries/libFMap_mapcontext/src/org/gvsig/fmap/mapcontext/rendering/symbols/impl/DefaultSymbolManager.java	(revision 38551)
@@ -23,6 +23,14 @@
 /*
  * AUTHORS (In addition to CIT):
  * 2009 {DiSiD Technologies}  {{Task}}
+ * 
+ **************************************************************
+ * Colors from www.ColorBrewer.org by Cynthia A. Brewer,
+ * Geography, Pennsylvania State University.
+ * Using groups of 4 colors from the 9 Diverging Schemes
+ * 4 * 9 = 36 colors
+ **************************************************************
+ * 
  */
 package org.gvsig.fmap.mapcontext.rendering.symbols.impl;
 
@@ -286,21 +294,17 @@
 					symbolClass, symbolName, e);
 		}
 
-        Color symbolColor;
+		Color the_color = null;
+		
         if (getSymbolPreferences().isDefaultSymbolFillColorAleatory()) {
-            Random rand = new Random();
-            int numreg = rand.nextInt(255 / 2);
-            double div = (1 - rand.nextDouble() * 0.66) * 0.9;
-            symbolColor =
-                new Color(
-                    ((int) (255 * div + (numreg * rand.nextDouble()))) % 255,
-                    ((int) (255 * div + (numreg * rand.nextDouble()))) % 255,
-                    ((int) (255 * div + (numreg * rand.nextDouble()))) % 255);
+            
+            the_color = brewerBasedColor();
+            
+        } else {
+            // not random
+            the_color = getSymbolPreferences().getDefaultSymbolFillColor();
         }
-        else {
-            symbolColor = getSymbolPreferences().getDefaultSymbolFillColor();
-        }
-        symbol.setColor(symbolColor);
+        symbol.setColor(the_color);
 		// Perform this initialization into the Symbol implementation
 		// if (symbol instanceof CartographicSupport) {
 		// CartographicSupport cs = (CartographicSupport) symbol;
@@ -315,4 +319,108 @@
 	public void setSymbolPreferences(SymbolPreferences symbolPreferences) {
 		this.symbolPreferences = symbolPreferences;
 	}
+	
+	/**
+	 * 
+	 * @param col
+	 * @return color 1/3 closer to black
+	 */
+	public static Color darker(Color col) {
+	    return new Color(
+	        (2 * col.getRed()) / 3,
+	        (2 * col.getGreen()) / 3,
+	        (2 * col.getBlue()) / 3,
+	        col.getAlpha());
+	}
+
+	/**
+	 * 
+	 * @param col
+	 * @return color 1/3 closer to white
+	 */
+	public static Color lighter(Color col) {
+	    Color resp = invert(col);
+	    resp = darker(resp);
+	    return invert(resp);
+	}
+	
+	/**
+	 * 
+	 * @param col
+	 * @return inverted color (inverts each band, same alpha)
+	 */
+	public static Color invert(Color col) {
+        return new Color(
+            255 - col.getRed(),
+            255 - col.getGreen(),
+            255 - col.getBlue(),
+            col.getAlpha());
+	}
+	
+	private static Color brewerBasedColor() {
+	    
+	    int ind = rnd.nextInt(BREWER_COLOR.length);
+	    Color base = BREWER_COLOR[ind]; 
+	    ind = rnd.nextInt(100);
+	    if (ind > 66) {
+	        return darker(base);
+	    } else {
+	        if (ind > 33) {
+	            return lighter(base);
+	        } else {
+	            return base;
+	        }
+	    }
+	}
+	
+    private static Color[] BREWER_COLOR = new Color[36];
+    private static final Random rnd = new Random();
+	
+	static {
+	    /**
+	     * Colors from www.ColorBrewer.org by Cynthia A. Brewer,
+	     * Geography, Pennsylvania State University.
+	     *
+	     * Using groups of 4 colors from the 9 Diverging Schemes
+	     * 4 * 9 = 36 colors
+	     */
+	    BREWER_COLOR[0] = new Color(230, 97, 1);
+	    BREWER_COLOR[1] = new Color(253, 184, 99);
+	    BREWER_COLOR[2] = new Color(178, 171, 210);
+	    BREWER_COLOR[3] = new Color(94, 60, 153);
+	    BREWER_COLOR[4] = new Color(166, 97, 26);
+	    BREWER_COLOR[5] = new Color(223, 194, 125);
+	    BREWER_COLOR[6] = new Color(128, 205, 193);
+	    BREWER_COLOR[7] = new Color(1, 133, 113);
+	    BREWER_COLOR[8] = new Color(123, 50, 148);
+	    BREWER_COLOR[9] = new Color(194, 165, 207);
+	    BREWER_COLOR[10] = new Color(166, 219, 160);
+	    BREWER_COLOR[11] = new Color(0, 136, 55);
+	    BREWER_COLOR[12] = new Color(208, 28, 139);
+	    BREWER_COLOR[13] = new Color(241, 182, 218);
+	    BREWER_COLOR[14] = new Color(184, 225, 134);
+	    BREWER_COLOR[15] = new Color(77, 172, 38);
+	    BREWER_COLOR[16] = new Color(202, 0, 32);
+	    BREWER_COLOR[17] = new Color(244, 165, 130);
+	    BREWER_COLOR[18] = new Color(146, 197, 222);
+	    BREWER_COLOR[19] = new Color(5, 113, 176);
+	    BREWER_COLOR[20] = new Color(202, 0, 32);
+	    BREWER_COLOR[21] = new Color(244, 165, 130);
+	    BREWER_COLOR[22] = new Color(186, 186, 186);
+	    BREWER_COLOR[23] = new Color(64, 64, 64);
+	    BREWER_COLOR[24] = new Color(215, 25, 28);
+	    BREWER_COLOR[25] = new Color(253, 174, 97);
+	    BREWER_COLOR[26] = new Color(171, 217, 233);
+	    BREWER_COLOR[27] = new Color(44, 123, 182);
+	    BREWER_COLOR[28] = new Color(215, 25, 28);
+	    BREWER_COLOR[29] = new Color(253, 174, 97);
+	    BREWER_COLOR[30] = new Color(171, 221, 164);
+	    BREWER_COLOR[31] = new Color(43, 131, 186);
+	    BREWER_COLOR[32] = new Color(215, 25, 28);
+	    BREWER_COLOR[33] = new Color(253, 174, 97);
+	    BREWER_COLOR[34] = new Color(166, 217, 106);
+	    BREWER_COLOR[35] = new Color(26, 150, 65);
+	}
+
+	
 }
\ No newline at end of file
