protected Point2D getTextCenter( Parameters parameters ) {
		Point2D base = getTextPosition( parameters );
		double distance = getDistance( parameters );

		if( distance == 0.0 ) {
			return base;
		}

		Point2D normal = path.getNormalAt( getPosition(parameters) );

		double x = base.getX() + distance * normal.getX();
		double y = base.getY() + distance * normal.getY();

		return new Point2D.Double( x, y );
	}