uros-db commented on code in PR #54114:
URL: https://github.com/apache/spark/pull/54114#discussion_r2783890243
##########
sql/catalyst/src/main/java/org/apache/spark/sql/catalyst/util/geo/Point.java:
##########
@@ -98,4 +98,32 @@ boolean isEmpty() {
int getDimensionCount() {
return coordinates.length;
}
+
+ @Override
+ protected void appendWktContent(StringBuilder sb) {
+ appendCoordinate(sb, getX());
+ sb.append(" ");
+ appendCoordinate(sb, getY());
+ if (hasZ) {
+ sb.append(" ");
+ appendCoordinate(sb, getZ());
+ }
+ if (hasM) {
+ sb.append(" ");
+ appendCoordinate(sb, getM());
+ }
+ }
+
+ /**
+ * Appends a single coordinate value, formatting integers without decimal
point.
+ */
+ private static void appendCoordinate(StringBuilder sb, double value) {
+ if (value == Math.floor(value) && !Double.isInfinite(value)) {
Review Comment:
NaN / infinity edge cases are effectively unreachable from the current WKB
parser (we have checks and emptiness flags which guarantee this), and this is
the only way to construct geometry models in the system. As for -0.0 it is also
handled properly by the normalization logic here.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]