[ 
https://issues.apache.org/jira/browse/LUCENE-8581?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16708520#comment-16708520
 ] 

Adrien Grand commented on LUCENE-8581:
--------------------------------------

It seems that giving all triangles the same orientation (either by requiring an 
orientation or by changing the orientation of triangles that don't have the 
expected orientation) and rotating vertices so that the first one always has 
eg. minx as its x coordinate prior to encoding would help reduce the number of 
conditionals? Is the reason why we think we should preserve ordering that we 
expect it to be easier later to record which edges of the triangles are shared 
with the polygon?

Regarding nested if/else statements, we don't seem to be interpreting the value 
of each bit independently, so maybe we should just have 2^3 constants instead 
that describe how to reconstruct the triangle from the box and the additional 
x,y coordinates, eg. {{public static final MINX_MINY_MAXX_MAXY_X_Y = 0}} 
instead of  {{FIRST_BIT | SECOND_BIT | THIRD_BIT}}?

> Change LatLonShape encoding to use 4 BYTES Per Dimension
> --------------------------------------------------------
>
>                 Key: LUCENE-8581
>                 URL: https://issues.apache.org/jira/browse/LUCENE-8581
>             Project: Lucene - Core
>          Issue Type: New Feature
>            Reporter: Nicholas Knize
>            Assignee: Ignacio Vera
>            Priority: Major
>         Attachments: LUCENE-8581.patch, LUCENE-8581.patch
>
>
> {{LatLonShape}} tessellated triangles currently use a relatively naive 
> encoding with the first four dimensions as the bounding box of the triangle 
> and the last three dimensions as the vertices of the triangle. To encode the 
> {{x,y}} vertices in the last three dimensions requires {{bytesPerDim}} to be 
> set to 8, with 4 bytes for the x & y axis, respectively. We can reduce 
> {{bytesPerDim}} to 4 by encoding the index(es) of the vertices shared by the 
> bounding box along with the orientation of the triangle. This also opens the 
> door for supporting {{CONTAINS}} queries.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to