// step 1
PolygonSymbol rc = new PolygonSymbol();

GeoPoint[] vertex = new GeoPoint[4];
vertex[0] = map.toMapUnits( 125, 300); // bottom/left
vertex[1] = map.toMapUnits( 125, 100); // top/left
vertex[2] = map.toMapUnits( 475, 100); // top/right
vertex[3] = map.toMapUnits( 475, 300); // bottom/right

GeoPointsImpl gp = new GeoPointsImpl();

for(int i = 0; i < vertex.Length; i++)
    gp.addPoint( vertex[i].x, vertex[i].y);

rc.setPoints( gp);
    
// step 2	
CosmeticLayer cLayer = map.getCosmeticLayer();

// step 3
Symbol symbol = rc.getSymbol();

// step 4
int color = new Color(0, 0, 255).getRGB(); // blue
symbol.setColor(Symbol.rmBrushColor, color);
symbol.setBrushStyle("brush:bdiagonal");

// step 5
cLayer.getPolygons().add(rc);