func NewPlateCarreeProjection(xScale float64) Projection {
	return &PlateCarreeProjection{
		xWrap:       2 * xScale,
		toRadians:   math.Pi / xScale,
		fromRadians: xScale / math.Pi,
	}
}
NewPlateCarreeProjection constructs a plate carree projection where the
x-coordinates (lng) span [-xScale, xScale] and the y coordinates (lat)
span [-xScale/2, xScale/2]. For example if xScale==180 then the x
range is [-180, 180] and the y range is [-90, 90].

By default coordinates are expressed in radians, i.e. the x range is
[-Pi, Pi] and the y range is [-Pi/2, Pi/2].
package s2
import (
	"math"
	"github.com/golang/geo/r2"
	"github.com/golang/geo/s1"
)
type Projection interface {
	Project(p Point) r2.Point
	Unproject(p r2.Point) Point
	FromLatLng(ll LatLng) r2.Point
	ToLatLng(p r2.Point) LatLng
	Interpolate(f float64, a, b r2.Point) r2.Point
	WrapDistance() r2.Point
	WrapDestination(a, b r2.Point) r2.Point
	privateInterface()
}
type PlateCarreeProjection struct {
	xWrap       float64
	toRadians   float64  
	fromRadians float64  
}