public final void addPolarEdge(double r, double theta) {
		if (complete) {
			throw new ErrorException("You can't add edges to a GPolygon that has been "
			                         + "marked as complete.");
		}
		synchronized (lock) {
			cx += r * GMath.cosDegrees(theta);
			cy -= r * GMath.sinDegrees(theta);
			vertexList.add(new GPoint(cx, cy));
		}
	}