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]

Reply via email to