@@ -323,7 +323,7 @@ private static void updateDatum(ProjParams params, GeoDatum geoDatum,
323323 && mapProjection .getName ().toLowerCase ()
324324 .contains (pseudoMercatorNameCheck )) {
325325 updateSphericalEllipsoid (params ,
326- geoDatum .getEllipsoid ().getSemiMajorAxis ());
326+ geoDatum .getEllipsoid ().getSemiMajorAxisText ());
327327 } else {
328328 params .setDatum (commonGeoDatum .getCode ());
329329 }
@@ -384,7 +384,7 @@ private static void updateEllipsoid(ProjParams params,
384384 * radius
385385 */
386386 private static void updateSphericalEllipsoid (ProjParams params ,
387- double radius ) {
387+ String radius ) {
388388 params .setA (radius );
389389 params .setB (radius );
390390 }
@@ -410,7 +410,7 @@ private static void updateDatumTransform(ProjParams params, CRS crs) {
410410 * @param params
411411 * projection params
412412 * @param toWGS84
413- * to WGS84 double array
413+ * to WGS84 array
414414 */
415415 private static void updateDatumTransform (ProjParams params ,
416416 String [] toWGS84 ) {
@@ -692,7 +692,7 @@ private static void updateUnits(ProjParams params,
692692
693693 if (params .getUnits () == null && unit .hasConversionFactor ()
694694 && unit .getConversionFactor () != 1.0 ) {
695- params .setToMeter (unit .getConversionFactor ());
695+ params .setToMeter (unit .getConversionFactorText ());
696696 }
697697
698698 }
@@ -1117,7 +1117,7 @@ private static String convert(double value, String textValue, Unit fromUnit,
11171117 fromUnit = Units .createDefaultUnit (toUnit .getType ());
11181118 }
11191119
1120- if (Units .canConvert (fromUnit , toUnit )
1120+ if (value != 0.0 && Units .canConvert (fromUnit , toUnit )
11211121 && !fromUnit .equalsName (toUnit )) {
11221122 value = Units .convert (value , fromUnit , toUnit );
11231123 textValue = String .valueOf (value );
0 commit comments