4  # 4 # #@ @ !TD- #@!TD-       ?(\)  @ # # # - - - -    :    #radDsegmentLProGAL/geom3d/LineSegment;.(LProGAL/geom3d/Point;LProGAL/geom3d/Point;D)VCodeLineNumberTableLocalVariableTablethis LProGAL/geom3d/volumes/Cylinder;p1LProGAL/geom3d/Point;p2r(LProGAL/geom3d/LineSegment;D)Vsgm getSegment()LProGAL/geom3d/LineSegment; getLength()D getRadius getVolumegetSurfaceArea setSegment(LProGAL/geom3d/LineSegment;)V inCylinder(LProGAL/geom3d/Point;)Zp StackMapTableintersectionParameter((LProGAL/geom3d/Line;)Ljava/lang/Double;tlLProGAL/geom3d/Line;dLProGAL/geom3d/Vector;mnmdndddnnmnakcbdiscrt0main([Ljava/lang/String;)Vargs[Ljava/lang/String;cyltoString()Ljava/lang/String;(I)Ljava/lang/String;decI toConsole(I)V getCenter()LProGAL/geom3d/Point;$createBoundingCylinder_CovarianceFit;(LProGAL/geom3d/PointList;)LProGAL/geom3d/volumes/Cylinder;pointsLProGAL/geom3d/PointList;covMatrLProGAL/math/Matrix3x3; eigenVecs[LProGAL/geom3d/Vector;diriCyl#LProGAL/geom3d/volumes/InfCylinder;retoverlaps!(LProGAL/geom3d/volumes/Volume;)ZvolLProGAL/geom3d/volumes/Volume;clone"()LProGAL/geom3d/volumes/Cylinder;()Ljava/lang/Object; Exceptions ()LProGAL/geom3d/volumes/Volume; SourceFile Cylinder.javaProGAL/geom3d/LineSegment L LW L HI JK [\java/lang/Math  I ProGAL/geom3d/LineProGAL/geom3d/Point LProGAL/geom3d/Vector LProGAL/geom3d/volumes/Cylinder LM fg  java/lang/StringBuilderCylinder[%s,rad=%.  f] java/lang/Object       java/lang/Error)Cannot create cylinder enclosing 0 points L    \  Not implemented Z ProGAL/geom3d/volumes/VolumeProGAL/math/Matrix3x3$java/lang/CloneNotSupportedException-(LProGAL/geom3d/Point;LProGAL/geom3d/Point;)V()V getDistance(LProGAL/geom3d/Point;)DgetAToB()LProGAL/geom3d/Vector;getAgetPvectorTo-(LProGAL/geom3d/Point;)LProGAL/geom3d/Vector;getDirdot(LProGAL/geom3d/Vector;)Dabs(D)DProGAL/math/ConstantsEPSILONjava/lang/DoublevalueOf(D)Ljava/lang/Double;sqrt(DDD)V.(LProGAL/geom3d/Point;LProGAL/geom3d/Vector;)Vjava/lang/SystemoutLjava/io/PrintStream;java/io/PrintStreamprintln(Ljava/lang/Object;)Vappend-(Ljava/lang/String;)Ljava/lang/StringBuilder;(I)Ljava/lang/StringBuilder;java/lang/Stringformat9(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;(Ljava/lang/String;)V getMidPointProGAL/geom3d/PointListsize()Iget(I)Ljava/lang/Object; getCovariance()LProGAL/math/Matrix3x3;getEigenvectors()[LProGAL/geom3d/Vector;length!ProGAL/geom3d/volumes/InfCylinder!createMinRadCylinderFromDirectionT(LProGAL/geom3d/PointList;LProGAL/geom3d/Vector;)LProGAL/geom3d/volumes/InfCylinder; capWithDiscs!#4GHIJKLMN[*Y+,)O P*QRSTUTVILWNY**(*+O P QRXKVIYZN/*OP QR[\N6 * kOP  QR]\N/*OP QR^\N= *k*k* kOP QR_\N=*k** ckOP QR`aN:*+O!PQRXKbcNU*+*O#PQRdTe@fgN *:*+:+:99 9  c  c 9 9  k  kg9**kg9 kkg9@ w oI  g oII(( k kg9kkg9wgoIwgo\I9( kc- w oI(k( kckcQ(( kc ?  g oI ckg( gk( kckc(I(O#' ()*(+1,:.M/b0k1t234579:;=>@AB DE*F6H?IFK`LmNyOQSTPhIhI hIQRijhI klmlnl(oI1pI :wqI kFrI t=sI0tIuIvIwIxI*yIe M z{|||Sz{|||z{||| z{|||"1z{||| / }~N MYY Y!"L#YY$Y$&(M),+*+OXYAZL[P M/ijA RN0*,O^P QRNi5-Y./012034Y*5SY*S6OaP5QR5N@ )*,7OeP QR N2*8OhP QR N?*9 :Y;<*9"#Y*=>*=>(*9"#Y*=>*=>(*?L+@M,2N,2A-A,2N,2A-A,2N*-B:*C:O. lm8n_pdqismtuwxyP>d?i:m6l Re&&|N> :YD<O}P QR N=#Y*E*OP QRAN/*FO P QRAN/*FO P QR