Uploaded image for project: 'Lucene - Core'
  1. Lucene - Core
  2. LUCENE-7936

Extend Geoshape interfaces so objects can be copied/serialized

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 6.7, 7.1, 8.0
    • Component/s: modules/spatial3d
    • Labels:
      None
    • Lucene Fields:
      New

      Description

      Hi David Wright,

      I would like to propose to extends the GeoShape interfaces to be able to copy/serialized the objects. The current status and propose change is as following:

      GeoPoint: It can be serialized by using x, y, z
      GeoCircle: It can be serialized by using getCenter() and getRadius() and getPlanetModel()
      GeoCompositeShape: It can be serialized by accesing shapes using size() and GetShape(int index)
      GeoPath: add methods to the interface getPoints() and getCutoffAngle()
      GeoPolygon: This is the most complicated one as we have different types:
      1.- GeoCompositePolygon is just a composite
      2.- GeoConcavePolygon and GeoConvexPolygon: Create a new interface for those polygons which exposes the points, holes, internaledges and concavity/convexity
      3.- GeoComplexPolygons: Do nothing, they are too complex to be serialize??

      I am intersested in accesing the discreatization of the polygons into convex and concave ones for other reasons as well. I think this should be expose as they end result can be used for other use cases.

      Cheers,

      I.

        Attachments

        1. LUCENE-7936.patch
          43 kB
          Ignacio Vera
        2. GeoBinaryCodec.patch
          15 kB
          Ignacio Vera
        3. Spatial4j.patch
          31 kB
          Ignacio Vera
        4. LUCENE-7936.patch
          9 kB
          Karl Wright
        5. LUCENE-7936.patch
          14 kB
          Karl Wright
        6. LUCENE-7936-test.patch
          2 kB
          Ignacio Vera
        7. LUCENE-7936-GeoComplexPolygon.patch
          2 kB
          Ignacio Vera
        8. factory.patch
          11 kB
          Ignacio Vera
        9. LUCENE-7936-code.patch
          15 kB
          Ignacio Vera
        10. LUCENE-7936-code.patch
          15 kB
          Ignacio Vera

          Activity

            People

            • Assignee:
              kwright@metacarta.com Karl Wright
              Reporter:
              ivera Ignacio Vera
            • Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: