class org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform implements org.apache.commons.math3.geometry.partitioning.Transform<org.apache.commons.math3.geometry.euclidean.twod.Euclidean2D, org.apache.commons.math3.geometry.euclidean.oned.Euclidean1D>
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform
  super_class: java.lang.Object
{
  private double cXX;
    descriptor: D
    flags: (0x0002) ACC_PRIVATE

  private double cYX;
    descriptor: D
    flags: (0x0002) ACC_PRIVATE

  private double cXY;
    descriptor: D
    flags: (0x0002) ACC_PRIVATE

  private double cYY;
    descriptor: D
    flags: (0x0002) ACC_PRIVATE

  private double cX1;
    descriptor: D
    flags: (0x0002) ACC_PRIVATE

  private double cY1;
    descriptor: D
    flags: (0x0002) ACC_PRIVATE

  private double c1Y;
    descriptor: D
    flags: (0x0002) ACC_PRIVATE

  private double c1X;
    descriptor: D
    flags: (0x0002) ACC_PRIVATE

  private double c11;
    descriptor: D
    flags: (0x0002) ACC_PRIVATE

  void <init>(double, double, double, double, double, double);
    descriptor: (DDDDDD)V
    flags: (0x0000) 
    Code:
      stack=9, locals=13, args_size=7
        start local 0 // org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform this
        start local 1 // double cXX
        start local 3 // double cYX
        start local 5 // double cXY
        start local 7 // double cYY
        start local 9 // double cX1
        start local 11 // double cY1
         0: .line 531
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 535
            aload 0 /* this */
            dload 1 /* cXX */
            putfield org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform.cXX:D
         2: .line 536
            aload 0 /* this */
            dload 3 /* cYX */
            putfield org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform.cYX:D
         3: .line 537
            aload 0 /* this */
            dload 5 /* cXY */
            putfield org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform.cXY:D
         4: .line 538
            aload 0 /* this */
            dload 7 /* cYY */
            putfield org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform.cYY:D
         5: .line 539
            aload 0 /* this */
            dload 9 /* cX1 */
            putfield org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform.cX1:D
         6: .line 540
            aload 0 /* this */
            dload 11 /* cY1 */
            putfield org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform.cY1:D
         7: .line 542
            aload 0 /* this */
            dload 5 /* cXY */
            dload 11 /* cY1 */
            dload 7 /* cYY */
            dneg
            dload 9 /* cX1 */
            invokestatic org.apache.commons.math3.util.MathArrays.linearCombination:(DDDD)D
            putfield org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform.c1Y:D
         8: .line 543
            aload 0 /* this */
            dload 1 /* cXX */
            dload 11 /* cY1 */
            dload 3 /* cYX */
            dneg
            dload 9 /* cX1 */
            invokestatic org.apache.commons.math3.util.MathArrays.linearCombination:(DDDD)D
            putfield org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform.c1X:D
         9: .line 544
            aload 0 /* this */
            dload 1 /* cXX */
            dload 7 /* cYY */
            dload 3 /* cYX */
            dneg
            dload 5 /* cXY */
            invokestatic org.apache.commons.math3.util.MathArrays.linearCombination:(DDDD)D
            putfield org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform.c11:D
        10: .line 546
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform.c11:D
            invokestatic org.apache.commons.math3.util.FastMath.abs:(D)D
            ldc 1.0E-20
            dcmpg
            ifge 12
        11: .line 547
            new org.apache.commons.math3.exception.MathIllegalArgumentException
            dup
            getstatic org.apache.commons.math3.exception.util.LocalizedFormats.NON_INVERTIBLE_TRANSFORM:Lorg/apache/commons/math3/exception/util/LocalizedFormats;
            iconst_0
            anewarray java.lang.Object
            invokespecial org.apache.commons.math3.exception.MathIllegalArgumentException.<init>:(Lorg/apache/commons/math3/exception/util/Localizable;[Ljava/lang/Object;)V
            athrow
        12: .line 550
      StackMap locals: org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform double double double double double double
      StackMap stack:
            return
        end local 11 // double cY1
        end local 9 // double cX1
        end local 7 // double cYY
        end local 5 // double cXY
        end local 3 // double cYX
        end local 1 // double cXX
        end local 0 // org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Lorg/apache/commons/math3/geometry/euclidean/twod/Line$LineTransform;
            0   13     1   cXX  D
            0   13     3   cYX  D
            0   13     5   cXY  D
            0   13     7   cYY  D
            0   13     9   cX1  D
            0   13    11   cY1  D
    Exceptions:
      throws org.apache.commons.math3.exception.MathIllegalArgumentException
    MethodParameters:
      Name  Flags
      cXX   final
      cYX   final
      cXY   final
      cYY   final
      cX1   final
      cY1   final

  public org.apache.commons.math3.geometry.euclidean.twod.Vector2D apply(org.apache.commons.math3.geometry.Point<org.apache.commons.math3.geometry.euclidean.twod.Euclidean2D>);
    descriptor: (Lorg/apache/commons/math3/geometry/Point;)Lorg/apache/commons/math3/geometry/euclidean/twod/Vector2D;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=16, locals=7, args_size=2
        start local 0 // org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform this
        start local 1 // org.apache.commons.math3.geometry.Point point
         0: .line 554
            aload 1 /* point */
            checkcast org.apache.commons.math3.geometry.euclidean.twod.Vector2D
            astore 2 /* p2D */
        start local 2 // org.apache.commons.math3.geometry.euclidean.twod.Vector2D p2D
         1: .line 555
            aload 2 /* p2D */
            invokevirtual org.apache.commons.math3.geometry.euclidean.twod.Vector2D.getX:()D
            dstore 3 /* x */
        start local 3 // double x
         2: .line 556
            aload 2 /* p2D */
            invokevirtual org.apache.commons.math3.geometry.euclidean.twod.Vector2D.getY:()D
            dstore 5 /* y */
        start local 5 // double y
         3: .line 557
            new org.apache.commons.math3.geometry.euclidean.twod.Vector2D
            dup
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform.cXX:D
            dload 3 /* x */
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform.cXY:D
            dload 5 /* y */
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform.cX1:D
            dconst_1
            invokestatic org.apache.commons.math3.util.MathArrays.linearCombination:(DDDDDD)D
         4: .line 558
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform.cYX:D
            dload 3 /* x */
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform.cYY:D
            dload 5 /* y */
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform.cY1:D
            dconst_1
            invokestatic org.apache.commons.math3.util.MathArrays.linearCombination:(DDDDDD)D
         5: .line 557
            invokespecial org.apache.commons.math3.geometry.euclidean.twod.Vector2D.<init>:(DD)V
            areturn
        end local 5 // double y
        end local 3 // double x
        end local 2 // org.apache.commons.math3.geometry.euclidean.twod.Vector2D p2D
        end local 1 // org.apache.commons.math3.geometry.Point point
        end local 0 // org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lorg/apache/commons/math3/geometry/euclidean/twod/Line$LineTransform;
            0    6     1  point  Lorg/apache/commons/math3/geometry/Point<Lorg/apache/commons/math3/geometry/euclidean/twod/Euclidean2D;>;
            1    6     2    p2D  Lorg/apache/commons/math3/geometry/euclidean/twod/Vector2D;
            2    6     3      x  D
            3    6     5      y  D
    Signature: (Lorg/apache/commons/math3/geometry/Point<Lorg/apache/commons/math3/geometry/euclidean/twod/Euclidean2D;>;)Lorg/apache/commons/math3/geometry/euclidean/twod/Vector2D;
    MethodParameters:
       Name  Flags
      point  final

  public org.apache.commons.math3.geometry.euclidean.twod.Line apply(org.apache.commons.math3.geometry.partitioning.Hyperplane<org.apache.commons.math3.geometry.euclidean.twod.Euclidean2D>);
    descriptor: (Lorg/apache/commons/math3/geometry/partitioning/Hyperplane;)Lorg/apache/commons/math3/geometry/euclidean/twod/Line;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=12, locals=11, args_size=2
        start local 0 // org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform this
        start local 1 // org.apache.commons.math3.geometry.partitioning.Hyperplane hyperplane
         0: .line 563
            aload 1 /* hyperplane */
            checkcast org.apache.commons.math3.geometry.euclidean.twod.Line
            astore 2 /* line */
        start local 2 // org.apache.commons.math3.geometry.euclidean.twod.Line line
         1: .line 564
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform.c1X:D
            aload 2 /* line */
            getfield org.apache.commons.math3.geometry.euclidean.twod.Line.cos:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform.c1Y:D
            aload 2 /* line */
            getfield org.apache.commons.math3.geometry.euclidean.twod.Line.sin:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform.c11:D
            aload 2 /* line */
            getfield org.apache.commons.math3.geometry.euclidean.twod.Line.originOffset:D
            invokestatic org.apache.commons.math3.util.MathArrays.linearCombination:(DDDDDD)D
            dstore 3 /* rOffset */
        start local 3 // double rOffset
         2: .line 565
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform.cXX:D
            aload 2 /* line */
            getfield org.apache.commons.math3.geometry.euclidean.twod.Line.cos:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform.cXY:D
            aload 2 /* line */
            getfield org.apache.commons.math3.geometry.euclidean.twod.Line.sin:D
            invokestatic org.apache.commons.math3.util.MathArrays.linearCombination:(DDDD)D
            dstore 5 /* rCos */
        start local 5 // double rCos
         3: .line 566
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform.cYX:D
            aload 2 /* line */
            getfield org.apache.commons.math3.geometry.euclidean.twod.Line.cos:D
            aload 0 /* this */
            getfield org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform.cYY:D
            aload 2 /* line */
            getfield org.apache.commons.math3.geometry.euclidean.twod.Line.sin:D
            invokestatic org.apache.commons.math3.util.MathArrays.linearCombination:(DDDD)D
            dstore 7 /* rSin */
        start local 7 // double rSin
         4: .line 567
            dconst_1
            dload 7 /* rSin */
            dload 7 /* rSin */
            dmul
            dload 5 /* rCos */
            dload 5 /* rCos */
            dmul
            dadd
            invokestatic org.apache.commons.math3.util.FastMath.sqrt:(D)D
            ddiv
            dstore 9 /* inv */
        start local 9 // double inv
         5: .line 568
            new org.apache.commons.math3.geometry.euclidean.twod.Line
            dup
            ldc 3.141592653589793
            dload 7 /* rSin */
            dneg
            dload 5 /* rCos */
            dneg
            invokestatic org.apache.commons.math3.util.FastMath.atan2:(DD)D
            dadd
         6: .line 569
            dload 9 /* inv */
            dload 5 /* rCos */
            dmul
            dload 9 /* inv */
            dload 7 /* rSin */
            dmul
         7: .line 570
            dload 9 /* inv */
            dload 3 /* rOffset */
            dmul
            aload 2 /* line */
            getfield org.apache.commons.math3.geometry.euclidean.twod.Line.tolerance:D
         8: .line 568
            invokespecial org.apache.commons.math3.geometry.euclidean.twod.Line.<init>:(DDDDD)V
            areturn
        end local 9 // double inv
        end local 7 // double rSin
        end local 5 // double rCos
        end local 3 // double rOffset
        end local 2 // org.apache.commons.math3.geometry.euclidean.twod.Line line
        end local 1 // org.apache.commons.math3.geometry.partitioning.Hyperplane hyperplane
        end local 0 // org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0        this  Lorg/apache/commons/math3/geometry/euclidean/twod/Line$LineTransform;
            0    9     1  hyperplane  Lorg/apache/commons/math3/geometry/partitioning/Hyperplane<Lorg/apache/commons/math3/geometry/euclidean/twod/Euclidean2D;>;
            1    9     2        line  Lorg/apache/commons/math3/geometry/euclidean/twod/Line;
            2    9     3     rOffset  D
            3    9     5        rCos  D
            4    9     7        rSin  D
            5    9     9         inv  D
    Signature: (Lorg/apache/commons/math3/geometry/partitioning/Hyperplane<Lorg/apache/commons/math3/geometry/euclidean/twod/Euclidean2D;>;)Lorg/apache/commons/math3/geometry/euclidean/twod/Line;
    MethodParameters:
            Name  Flags
      hyperplane  final

  public org.apache.commons.math3.geometry.partitioning.SubHyperplane<org.apache.commons.math3.geometry.euclidean.oned.Euclidean1D> apply(org.apache.commons.math3.geometry.partitioning.SubHyperplane<org.apache.commons.math3.geometry.euclidean.oned.Euclidean1D>, org.apache.commons.math3.geometry.partitioning.Hyperplane<org.apache.commons.math3.geometry.euclidean.twod.Euclidean2D>, org.apache.commons.math3.geometry.partitioning.Hyperplane<org.apache.commons.math3.geometry.euclidean.twod.Euclidean2D>);
    descriptor: (Lorg/apache/commons/math3/geometry/partitioning/SubHyperplane;Lorg/apache/commons/math3/geometry/partitioning/Hyperplane;Lorg/apache/commons/math3/geometry/partitioning/Hyperplane;)Lorg/apache/commons/math3/geometry/partitioning/SubHyperplane;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=8, args_size=4
        start local 0 // org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform this
        start local 1 // org.apache.commons.math3.geometry.partitioning.SubHyperplane sub
        start local 2 // org.apache.commons.math3.geometry.partitioning.Hyperplane original
        start local 3 // org.apache.commons.math3.geometry.partitioning.Hyperplane transformed
         0: .line 577
            aload 1 /* sub */
            invokeinterface org.apache.commons.math3.geometry.partitioning.SubHyperplane.getHyperplane:()Lorg/apache/commons/math3/geometry/partitioning/Hyperplane;
            checkcast org.apache.commons.math3.geometry.euclidean.oned.OrientedPoint
            astore 4 /* op */
        start local 4 // org.apache.commons.math3.geometry.euclidean.oned.OrientedPoint op
         1: .line 578
            aload 2 /* original */
            checkcast org.apache.commons.math3.geometry.euclidean.twod.Line
            astore 5 /* originalLine */
        start local 5 // org.apache.commons.math3.geometry.euclidean.twod.Line originalLine
         2: .line 579
            aload 3 /* transformed */
            checkcast org.apache.commons.math3.geometry.euclidean.twod.Line
            astore 6 /* transformedLine */
        start local 6 // org.apache.commons.math3.geometry.euclidean.twod.Line transformedLine
         3: .line 581
            aload 6 /* transformedLine */
            aload 0 /* this */
            aload 5 /* originalLine */
            aload 4 /* op */
            invokevirtual org.apache.commons.math3.geometry.euclidean.oned.OrientedPoint.getLocation:()Lorg/apache/commons/math3/geometry/euclidean/oned/Vector1D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.twod.Line.toSpace:(Lorg/apache/commons/math3/geometry/Vector;)Lorg/apache/commons/math3/geometry/euclidean/twod/Vector2D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform.apply:(Lorg/apache/commons/math3/geometry/Point;)Lorg/apache/commons/math3/geometry/euclidean/twod/Vector2D;
            invokevirtual org.apache.commons.math3.geometry.euclidean.twod.Line.toSubSpace:(Lorg/apache/commons/math3/geometry/Vector;)Lorg/apache/commons/math3/geometry/euclidean/oned/Vector1D;
         4: .line 580
            astore 7 /* newLoc */
        start local 7 // org.apache.commons.math3.geometry.euclidean.oned.Vector1D newLoc
         5: .line 582
            new org.apache.commons.math3.geometry.euclidean.oned.OrientedPoint
            dup
            aload 7 /* newLoc */
            aload 4 /* op */
            invokevirtual org.apache.commons.math3.geometry.euclidean.oned.OrientedPoint.isDirect:()Z
            aload 5 /* originalLine */
            getfield org.apache.commons.math3.geometry.euclidean.twod.Line.tolerance:D
            invokespecial org.apache.commons.math3.geometry.euclidean.oned.OrientedPoint.<init>:(Lorg/apache/commons/math3/geometry/euclidean/oned/Vector1D;ZD)V
            invokevirtual org.apache.commons.math3.geometry.euclidean.oned.OrientedPoint.wholeHyperplane:()Lorg/apache/commons/math3/geometry/euclidean/oned/SubOrientedPoint;
            areturn
        end local 7 // org.apache.commons.math3.geometry.euclidean.oned.Vector1D newLoc
        end local 6 // org.apache.commons.math3.geometry.euclidean.twod.Line transformedLine
        end local 5 // org.apache.commons.math3.geometry.euclidean.twod.Line originalLine
        end local 4 // org.apache.commons.math3.geometry.euclidean.oned.OrientedPoint op
        end local 3 // org.apache.commons.math3.geometry.partitioning.Hyperplane transformed
        end local 2 // org.apache.commons.math3.geometry.partitioning.Hyperplane original
        end local 1 // org.apache.commons.math3.geometry.partitioning.SubHyperplane sub
        end local 0 // org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    6     0             this  Lorg/apache/commons/math3/geometry/euclidean/twod/Line$LineTransform;
            0    6     1              sub  Lorg/apache/commons/math3/geometry/partitioning/SubHyperplane<Lorg/apache/commons/math3/geometry/euclidean/oned/Euclidean1D;>;
            0    6     2         original  Lorg/apache/commons/math3/geometry/partitioning/Hyperplane<Lorg/apache/commons/math3/geometry/euclidean/twod/Euclidean2D;>;
            0    6     3      transformed  Lorg/apache/commons/math3/geometry/partitioning/Hyperplane<Lorg/apache/commons/math3/geometry/euclidean/twod/Euclidean2D;>;
            1    6     4               op  Lorg/apache/commons/math3/geometry/euclidean/oned/OrientedPoint;
            2    6     5     originalLine  Lorg/apache/commons/math3/geometry/euclidean/twod/Line;
            3    6     6  transformedLine  Lorg/apache/commons/math3/geometry/euclidean/twod/Line;
            5    6     7           newLoc  Lorg/apache/commons/math3/geometry/euclidean/oned/Vector1D;
    Signature: (Lorg/apache/commons/math3/geometry/partitioning/SubHyperplane<Lorg/apache/commons/math3/geometry/euclidean/oned/Euclidean1D;>;Lorg/apache/commons/math3/geometry/partitioning/Hyperplane<Lorg/apache/commons/math3/geometry/euclidean/twod/Euclidean2D;>;Lorg/apache/commons/math3/geometry/partitioning/Hyperplane<Lorg/apache/commons/math3/geometry/euclidean/twod/Euclidean2D;>;)Lorg/apache/commons/math3/geometry/partitioning/SubHyperplane<Lorg/apache/commons/math3/geometry/euclidean/oned/Euclidean1D;>;
    MethodParameters:
             Name  Flags
      sub          final
      original     final
      transformed  final

  public org.apache.commons.math3.geometry.partitioning.Hyperplane apply(org.apache.commons.math3.geometry.partitioning.Hyperplane);
    descriptor: (Lorg/apache/commons/math3/geometry/partitioning/Hyperplane;)Lorg/apache/commons/math3/geometry/partitioning/Hyperplane;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            checkcast org.apache.commons.math3.geometry.partitioning.Hyperplane
            invokevirtual org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform.apply:(Lorg/apache/commons/math3/geometry/partitioning/Hyperplane;)Lorg/apache/commons/math3/geometry/euclidean/twod/Line;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public org.apache.commons.math3.geometry.Point apply(org.apache.commons.math3.geometry.Point);
    descriptor: (Lorg/apache/commons/math3/geometry/Point;)Lorg/apache/commons/math3/geometry/Point;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            checkcast org.apache.commons.math3.geometry.Point
            invokevirtual org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform.apply:(Lorg/apache/commons/math3/geometry/Point;)Lorg/apache/commons/math3/geometry/euclidean/twod/Vector2D;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
Signature: Ljava/lang/Object;Lorg/apache/commons/math3/geometry/partitioning/Transform<Lorg/apache/commons/math3/geometry/euclidean/twod/Euclidean2D;Lorg/apache/commons/math3/geometry/euclidean/oned/Euclidean1D;>;
SourceFile: "Line.java"
NestHost: org.apache.commons.math3.geometry.euclidean.twod.Line
InnerClasses:
  private LineTransform = org.apache.commons.math3.geometry.euclidean.twod.Line$LineTransform of org.apache.commons.math3.geometry.euclidean.twod.Line