public bool NewTileAfterReflect( Tile t, Segment s, Dictionary<Vector3D, bool> completed )
{
/* This was too slow!
Polygon newPolyBoundary = t.Boundary.Clone();
newPolyBoundary.Reflect( s );
Vector3D testCenter = this.TilingConfig.M.Apply( newPolyBoundary.Center );*/
CircleNE newVertexCircle = t.VertexCircle.Clone();
newVertexCircle.Reflect( s );
Vector3D testCenter = this.TilingConfig.M.Apply( newVertexCircle.CenterNE );
return !completed.ContainsKey( testCenter );
}