public static function rectangle(Point $corner, $width, $height, $ccw = false)
	{
		$points = new Points($corner);
		$points->addPoint($corner);
		$points->addPoint($corner)->translateX($width);
		$points->addPoint($corner)->translate($width, $height);
		$points->addPoint($corner)->translateY($height);
		$points->reverseIfCcw($ccw);
		return $points;
	}
public static function rectangle(Point $corner, $width, $height, $ccw = false)
	{
		$points = new Points($corner);
		$points->addPoint($corner);
		$points->addPoint($corner)->translateX($width);
		$points->addPoint($corner)->translate($width, $height);
		$points->addPoint($corner)->translateY($height);
		$points->reverseIfCcw($ccw);
		return $points;
	}
public static function rectangle ( Point $ corner , $ width , $ height , $ ccw = false ) { $ points = new Points ( $ corner ) ; $ points -> addPoint ( $ corner ) ; $ points -> addPoint ( $ corner ) -> translateX ( $ width ) ; $ points -> addPoint ( $ corner ) -> translate ( $ width , $ height ) ; $ points -> addPoint ( $ corner ) -> translateY ( $ height ) ; $ points -> reverseIfCcw ( $ ccw ) ; return $ points ; }
Calculates the points for a rectangle.

@param  Point    $corner  The top left corner.
@param  float    $width
@param  float    $height
@param  boolean  $ccw     Whether to list the points counterclockwise or not.
Calculates the points for a rectangle .