I'd like to symbolise a point dataset with a square (or circle) using two colours. This is useful for displaying values collected on both sides of a road (for example).

I created two symbols, a left side and right side of the square as shown below:
SYMBOL
NAME 'SQUARE_L'
TYPE vector
FILLED true
POINTS
0 0
0 1
0.5 1
0.5 0
0 0
END
END
SYMBOL
NAME 'SQUARE_R'
TYPE vector
FILLED true
POINTS
0.5 0
1 0
1 1
0.5 1
0.5 0
END
END
Then in my LAYER I can create a CLASS using the two different STYLES:
CLASS
STYLE
SYMBOL "SQUARE_L"
COLOR [LEFT_CLR]
SIZE 10
END
STYLE
SYMBOL "SQUARE_R"
COLOR [RIGHT_CLR]
SIZE 10
END
END
However the features do not display correctly - they are not aligned correctly and are not of equal size (due to an overlap?). I thought I had resolved it by setting a "bounding box" in the symbol to make sure they were equal size:
SYMBOL
NAME 'SQUARE_L'
TYPE vector
FILLED true
POINTS
0 0
0 1
0.5 1
0.5 0
0 0
-99 -99 # increase bounding box so shape is correct size
0 0
1 0
1 1
0 1
0 0
END
END
However I then noticed that the sides of the square were displayed with the wrong values. The MapServer symbol collection at http://github.com/mapserver/mapserver/wiki/SymbologyExchangeVector has some nice examples but none of which describe how to do this. Any ideas on how to achieve this in MapServer?
