Skip to content

Commit 1eebc3f

Browse files
Flip X and Y coordinates for WKT and array formats in XYPoint (#156)
Signed-off-by: Naveen Tatikonda <[email protected]>
1 parent 7cdaf8d commit 1eebc3f

File tree

3 files changed

+5
-5
lines changed

3 files changed

+5
-5
lines changed

src/main/java/org/opensearch/geospatial/index/mapper/xypoint/XYPoint.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@ private XYPoint resetFromWKT(String value, boolean ignoreZValue) {
160160
throw new OpenSearchParseException("[xy_point] supports only POINT among WKT primitives, but found [{}]", geometry.type());
161161
}
162162
Point point = (Point) geometry;
163-
return reset(point.getY(), point.getX());
163+
return reset(point.getX(), point.getY());
164164
}
165165

166166
/**

src/main/java/org/opensearch/geospatial/index/mapper/xypoint/XYPointParser.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -157,9 +157,9 @@ private static XYPoint parseXYPointArray(XContentParser subParser, final boolean
157157
}
158158
element++;
159159
if (element == 1) {
160-
y = subParser.doubleValue();
161-
} else if (element == 2) {
162160
x = subParser.doubleValue();
161+
} else if (element == 2) {
162+
y = subParser.doubleValue();
163163
} else if (element == 3) {
164164
XYPoint.assertZValue(ignoreZValue, subParser.doubleValue());
165165
} else {

src/test/java/org/opensearch/geospatial/index/mapper/xypoint/XYPointParsingTests.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -170,15 +170,15 @@ private XContentParser xyAsString(double x, double y) throws IOException {
170170

171171
private XContentParser xyAsArray(double x, double y) throws IOException {
172172
XContentBuilder content = JsonXContent.contentBuilder();
173-
content.startArray().value(y).value(x).endArray();
173+
content.startArray().value(x).value(y).endArray();
174174
XContentParser parser = createParser(JsonXContent.jsonXContent, BytesReference.bytes(content));
175175
parser.nextToken();
176176
return parser;
177177
}
178178

179179
private XContentParser xyAsWKT(double x, double y) throws IOException {
180180
XContentBuilder content = JsonXContent.contentBuilder();
181-
content.value("POINT (" + y + " " + x + ")");
181+
content.value("POINT (" + x + " " + y + ")");
182182
XContentParser parser = createParser(JsonXContent.jsonXContent, BytesReference.bytes(content));
183183
parser.nextToken();
184184
return parser;

0 commit comments

Comments
 (0)