public class org.apache.lucene.spatial3d.geom.GeoExactCircle$ApproximationSlice
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.lucene.spatial3d.geom.GeoExactCircle$ApproximationSlice
  super_class: java.lang.Object
{
  public final org.apache.lucene.spatial3d.geom.SidedPlane plane;
    descriptor: Lorg/apache/lucene/spatial3d/geom/SidedPlane;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final org.apache.lucene.spatial3d.geom.GeoPoint endPoint1;
    descriptor: Lorg/apache/lucene/spatial3d/geom/GeoPoint;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final double point1Bearing;
    descriptor: D
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final org.apache.lucene.spatial3d.geom.GeoPoint endPoint2;
    descriptor: Lorg/apache/lucene/spatial3d/geom/GeoPoint;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final double point2Bearing;
    descriptor: D
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final org.apache.lucene.spatial3d.geom.GeoPoint middlePoint;
    descriptor: Lorg/apache/lucene/spatial3d/geom/GeoPoint;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final double middlePointBearing;
    descriptor: D
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final boolean mustSplit;
    descriptor: Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public void <init>(org.apache.lucene.spatial3d.geom.GeoPoint, org.apache.lucene.spatial3d.geom.GeoPoint, double, org.apache.lucene.spatial3d.geom.GeoPoint, double, org.apache.lucene.spatial3d.geom.GeoPoint, double, boolean);
    descriptor: (Lorg/apache/lucene/spatial3d/geom/GeoPoint;Lorg/apache/lucene/spatial3d/geom/GeoPoint;DLorg/apache/lucene/spatial3d/geom/GeoPoint;DLorg/apache/lucene/spatial3d/geom/GeoPoint;DZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=12, args_size=9
        start local 0 // org.apache.lucene.spatial3d.geom.GeoExactCircle$ApproximationSlice this
        start local 1 // org.apache.lucene.spatial3d.geom.GeoPoint center
        start local 2 // org.apache.lucene.spatial3d.geom.GeoPoint endPoint1
        start local 3 // double point1Bearing
        start local 5 // org.apache.lucene.spatial3d.geom.GeoPoint endPoint2
        start local 6 // double point2Bearing
        start local 8 // org.apache.lucene.spatial3d.geom.GeoPoint middlePoint
        start local 9 // double middlePointBearing
        start local 11 // boolean mustSplit
         0: .line 272
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 276
            aload 0 /* this */
            aload 2 /* endPoint1 */
            putfield org.apache.lucene.spatial3d.geom.GeoExactCircle$ApproximationSlice.endPoint1:Lorg/apache/lucene/spatial3d/geom/GeoPoint;
         2: .line 277
            aload 0 /* this */
            dload 3 /* point1Bearing */
            putfield org.apache.lucene.spatial3d.geom.GeoExactCircle$ApproximationSlice.point1Bearing:D
         3: .line 278
            aload 0 /* this */
            aload 5 /* endPoint2 */
            putfield org.apache.lucene.spatial3d.geom.GeoExactCircle$ApproximationSlice.endPoint2:Lorg/apache/lucene/spatial3d/geom/GeoPoint;
         4: .line 279
            aload 0 /* this */
            dload 6 /* point2Bearing */
            putfield org.apache.lucene.spatial3d.geom.GeoExactCircle$ApproximationSlice.point2Bearing:D
         5: .line 280
            aload 0 /* this */
            aload 8 /* middlePoint */
            putfield org.apache.lucene.spatial3d.geom.GeoExactCircle$ApproximationSlice.middlePoint:Lorg/apache/lucene/spatial3d/geom/GeoPoint;
         6: .line 281
            aload 0 /* this */
            dload 9 /* middlePointBearing */
            putfield org.apache.lucene.spatial3d.geom.GeoExactCircle$ApproximationSlice.middlePointBearing:D
         7: .line 282
            aload 0 /* this */
            iload 11 /* mustSplit */
            putfield org.apache.lucene.spatial3d.geom.GeoExactCircle$ApproximationSlice.mustSplit:Z
         8: .line 284
            aload 0 /* this */
            aload 1 /* center */
            aload 2 /* endPoint1 */
            aload 5 /* endPoint2 */
            aload 8 /* middlePoint */
            invokestatic org.apache.lucene.spatial3d.geom.SidedPlane.constructNormalizedThreePointSidedPlane:(Lorg/apache/lucene/spatial3d/geom/Vector;Lorg/apache/lucene/spatial3d/geom/Vector;Lorg/apache/lucene/spatial3d/geom/Vector;Lorg/apache/lucene/spatial3d/geom/Vector;)Lorg/apache/lucene/spatial3d/geom/SidedPlane;
            putfield org.apache.lucene.spatial3d.geom.GeoExactCircle$ApproximationSlice.plane:Lorg/apache/lucene/spatial3d/geom/SidedPlane;
         9: .line 285
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.GeoExactCircle$ApproximationSlice.plane:Lorg/apache/lucene/spatial3d/geom/SidedPlane;
            ifnonnull 11
        10: .line 286
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Either circle is too small or accuracy is too high; could not construct a plane with endPoint1="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* endPoint1 */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " bearing "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            dload 3 /* point1Bearing */
            invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
            ldc ", endPoint2="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 5 /* endPoint2 */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " bearing "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            dload 6 /* point2Bearing */
            invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
            ldc ", middle="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 8 /* middlePoint */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " bearing "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            dload 9 /* middlePointBearing */
            invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        11: .line 288
      StackMap locals: org.apache.lucene.spatial3d.geom.GeoExactCircle$ApproximationSlice org.apache.lucene.spatial3d.geom.GeoPoint org.apache.lucene.spatial3d.geom.GeoPoint double org.apache.lucene.spatial3d.geom.GeoPoint double org.apache.lucene.spatial3d.geom.GeoPoint double int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.GeoExactCircle$ApproximationSlice.plane:Lorg/apache/lucene/spatial3d/geom/SidedPlane;
            aload 1 /* center */
            getfield org.apache.lucene.spatial3d.geom.GeoPoint.x:D
            dneg
            aload 1 /* center */
            getfield org.apache.lucene.spatial3d.geom.GeoPoint.y:D
            dneg
            aload 1 /* center */
            getfield org.apache.lucene.spatial3d.geom.GeoPoint.z:D
            dneg
            invokevirtual org.apache.lucene.spatial3d.geom.SidedPlane.isWithin:(DDD)Z
            ifeq 13
        12: .line 290
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Could not construct a valid plane for this planet model with endPoint1="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* endPoint1 */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " bearing "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            dload 3 /* point1Bearing */
            invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
            ldc ", endPoint2="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 5 /* endPoint2 */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " bearing "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            dload 6 /* point2Bearing */
            invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
            ldc ", middle="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 8 /* middlePoint */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " bearing "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            dload 9 /* middlePointBearing */
            invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        13: .line 292
      StackMap locals:
      StackMap stack:
            return
        end local 11 // boolean mustSplit
        end local 9 // double middlePointBearing
        end local 8 // org.apache.lucene.spatial3d.geom.GeoPoint middlePoint
        end local 6 // double point2Bearing
        end local 5 // org.apache.lucene.spatial3d.geom.GeoPoint endPoint2
        end local 3 // double point1Bearing
        end local 2 // org.apache.lucene.spatial3d.geom.GeoPoint endPoint1
        end local 1 // org.apache.lucene.spatial3d.geom.GeoPoint center
        end local 0 // org.apache.lucene.spatial3d.geom.GeoExactCircle$ApproximationSlice this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   14     0                this  Lorg/apache/lucene/spatial3d/geom/GeoExactCircle$ApproximationSlice;
            0   14     1              center  Lorg/apache/lucene/spatial3d/geom/GeoPoint;
            0   14     2           endPoint1  Lorg/apache/lucene/spatial3d/geom/GeoPoint;
            0   14     3       point1Bearing  D
            0   14     5           endPoint2  Lorg/apache/lucene/spatial3d/geom/GeoPoint;
            0   14     6       point2Bearing  D
            0   14     8         middlePoint  Lorg/apache/lucene/spatial3d/geom/GeoPoint;
            0   14     9  middlePointBearing  D
            0   14    11           mustSplit  Z
    MethodParameters:
                    Name  Flags
      center              final
      endPoint1           final
      point1Bearing       final
      endPoint2           final
      point2Bearing       final
      middlePoint         final
      middlePointBearing  final
      mustSplit           final

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.lucene.spatial3d.geom.GeoExactCircle$ApproximationSlice this
         0: .line 296
            new java.lang.StringBuilder
            dup
            ldc "{end point 1 = "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.GeoExactCircle$ApproximationSlice.endPoint1:Lorg/apache/lucene/spatial3d/geom/GeoPoint;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " bearing 1 = "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.GeoExactCircle$ApproximationSlice.point1Bearing:D
            invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
         1: .line 297
            ldc " end point 2 = "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.GeoExactCircle$ApproximationSlice.endPoint2:Lorg/apache/lucene/spatial3d/geom/GeoPoint;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " bearing 2 = "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.GeoExactCircle$ApproximationSlice.point2Bearing:D
            invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
         2: .line 298
            ldc " middle point = "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.GeoExactCircle$ApproximationSlice.middlePoint:Lorg/apache/lucene/spatial3d/geom/GeoPoint;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " middle bearing = "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.lucene.spatial3d.geom.GeoExactCircle$ApproximationSlice.middlePointBearing:D
            invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
            ldc "}"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         3: .line 296
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // org.apache.lucene.spatial3d.geom.GeoExactCircle$ApproximationSlice this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/apache/lucene/spatial3d/geom/GeoExactCircle$ApproximationSlice;
}
SourceFile: "GeoExactCircle.java"
NestHost: org.apache.lucene.spatial3d.geom.GeoExactCircle
InnerClasses:
  protected ApproximationSlice = org.apache.lucene.spatial3d.geom.GeoExactCircle$ApproximationSlice of org.apache.lucene.spatial3d.geom.GeoExactCircle