�������4 �� � ��! ��"# � ��$% � ��& ��' ��( ��)* � +, -./0/123 �4 �5 �678797: �; �4 <=@$������ �5 �> �?@ �%A �B �%C �%D �%E �F �%G ��H ��IJ �/K �1L �/MN �4 �/.7. �1O �1P �1Q �1RS �<T �/U �/: �1V WXY �B �C �BZ[ �B\ �B] ^_ ��` �/a ��b ��c �%d ��e �f �g ��h �%i �%j7k �%l �%m �%; �%n7o �%p �q �%r �%s ��t �u �v �%w �%xy �z {| �}~ � �h� �h� ��@�@����� �%�@È����� {� �%� �%� �� �� �� �%� �� �� �%�� ^�� �%]���� ^�����InnerClasses��SortToolHeapItems��HeapItem��TriangulationAlgorithm�vertices�Ljava/util/List;� Signature�5Ljava/util/List<LProGAL/geom2d/TriangulationVertex;>;�triangulationFaces�3Ljava/util/List<LProGAL/geom2d/TriangulationFace;>;�pred�.LProGAL/geom3d/predicates/ExactJavaPredicates;�sort�LProGAL/dataStructures/Sorter;�scene�LProGAL/geom2d/viewer/J2DScene;�<init>�O(LProGAL/geom2d/PointSet;LProGAL/geom2d/Triangulation$TriangulationAlgorithm;)V�Code�LineNumberTable�LocalVariableTable�p�LProGAL/geom2d/Point;�i�I�newTriangulationFace�!LProGAL/geom2d/TriangulationFace;�lastTriangulationFace�#LProGAL/geom2d/TriangulationVertex;�q�oppTriangulationFace�r�v�j�u�segA�LProGAL/geom2d/LineSegment;�cont�Z�seg�sz�w�z�prevTriangulationFace�TriangulationFace�segments�LProGAL/dataStructures/Set;�acceptedSegments�incidentSegments�this�LProGAL/geom2d/Triangulation;�points�LProGAL/geom2d/PointSet;� algorithm�4LProGAL/geom2d/Triangulation$TriangulationAlgorithm;�LocalVariableTypeTable�8LProGAL/dataStructures/Set<LProGAL/geom2d/LineSegment;>;�-Ljava/util/List<LProGAL/geom2d/LineSegment;>;� StackMapTable����@3J�K�findTriangulationFace��(LProGAL/geom2d/TriangulationVertex;LProGAL/geom2d/TriangulationVertex;LProGAL/geom2d/TriangulationVertex;)LProGAL/geom2d/TriangulationFace;�findNextTriangulationFace�i(LProGAL/geom2d/TriangulationVertex;LProGAL/geom2d/TriangulationVertex;)LProGAL/geom2d/TriangulationFace;�findPrevTriangulationFace�findLastTriangulationFace�F(LProGAL/geom2d/TriangulationVertex;)LProGAL/geom2d/TriangulationFace;�indx�nextTriangulationFace�findFirstTriangulationFace�legalizeEdge�&(LProGAL/geom2d/TriangulationFace;IZ)V�triangulationFace� recursive�E(LProGAL/geom2d/TriangulationFace;IZLProGAL/geom2d/viewer/J2DScene;)V�oppIndx�inc�D�flip�g(LProGAL/geom2d/TriangulationFace;LProGAL/geom2d/TriangulationFace;Z)[LProGAL/geom2d/TriangulationFace;�t013�t123��(LProGAL/geom2d/TriangulationFace;LProGAL/geom2d/TriangulationFace;ZLProGAL/geom2d/viewer/J2DScene;Z)[LProGAL/geom2d/TriangulationFace;�testing�p0Indx�p2Indx�p0�p1�p2�p3�t012�t023�t01�t12�t23�t30�newFaces�"[LProGAL/geom2d/TriangulationFace;��boundaryFlipOut�g(LProGAL/geom2d/TriangulationVertex;LProGAL/geom2d/TriangulationFace;LProGAL/geom2d/viewer/J2DScene;Z)V�newFace� firstFace�lastFace�nextFace�prevFace�face�a�b�boundaryFlipIn�l(LProGAL/geom2d/TriangulationVertex;LProGAL/geom2d/TriangulationVertex;LProGAL/geom2d/TriangulationVertex;)V�c��(LProGAL/geom2d/TriangulationVertex;LProGAL/geom2d/TriangulationVertex;LProGAL/geom2d/TriangulationVertex;LProGAL/geom2d/viewer/J2DScene;Z)V�abFace�bcFace�getPower�W(LProGAL/geom2d/Point;LProGAL/geom2d/Point;LProGAL/geom2d/Point;LProGAL/geom2d/Point;)D�area�l(LProGAL/geom2d/TriangulationVertex;LProGAL/geom2d/TriangulationVertex;LProGAL/geom2d/TriangulationVertex;)D�plane�LProGAL/geom3d/Plane;�isBig�(LProGAL/geom2d/Point;)Z� isDelaunay�()Z�t�getIndxBurried�$(LProGAL/geom2d/TriangulationFace;)I�faesible��(LProGAL/geom3d/Point;LProGAL/geom3d/Point;LProGAL/geom3d/Point;LProGAL/geom2d/TriangulationFace;LProGAL/geom2d/TriangulationFace;)Z�next�prev�LProGAL/geom3d/Point;�pFace�nFace�forward�print�()V� SourceFile�Triangulation.java���java/util/ArrayList���������,ProGAL/geom3d/predicates/ExactJavaPredicates�����!ProGAL/dataStructures/SorterQuick�������������'ProGAL/dataStructures/SortToolPoint2dXY����������ProGAL/geom2d/Point�!ProGAL/geom2d/TriangulationVertex������������������������ProGAL/geom2d/TriangulationFace���������������������������ProGAL/dataStructures/Set�ProGAL/geom2d/LineSegment������3ProGAL/dataStructures/SortToolLineSegment2dByLength�������������<ProGAL/dataStructures/SortToolLineSegment2dAroundCommonPoint�����������java/lang/StringBuilder���,�����������������������������������������������������������������)This boundaryFlipIn case should not occur�������ProGAL/geom3d/Plane������������ ��������Vertex �� has first TriangulationFace � has no TriangulationFaces.�TriangulationFace � � has neighbors: ��ProGAL/geom2d/Triangulation�java/lang/Object�ProGAL/geom2d/Triangulation$1�-ProGAL/geom2d/Triangulation$SortToolHeapItems�$ProGAL/geom2d/Triangulation$HeapItem�2ProGAL/geom2d/Triangulation$TriangulationAlgorithm�ProGAL/geom2d/PointSet�java/util/Iterator�java/util/List�ProGAL/geom2d/viewer/J2DScene�=$SwitchMap$ProGAL$geom2d$Triangulation$TriangulationAlgorithm�[I�ordinal�()I�ProGAL/dataStructures/Sorter�Sort�>(LProGAL/dataStructures/Set;LProGAL/dataStructures/SortTool;)V�iterator�()Ljava/util/Iterator;�hasNext�()Ljava/lang/Object;�x�()D�y�(DD)V�add�(Ljava/lang/Object;)Z�size�get�(I)Ljava/lang/Object;�setId�(I)V�java/lang/Math�abs�(D)D�setBigPoint�(Z)V�leftTurn�B(LProGAL/geom2d/Point;LProGAL/geom2d/Point;LProGAL/geom2d/Point;)Z�id�corners�$[LProGAL/geom2d/TriangulationVertex;�getIndex�&(LProGAL/geom2d/TriangulationVertex;)I� rightTurn� neighbors�-(LProGAL/geom2d/Point;LProGAL/geom2d/Point;)V�insert�(Ljava/lang/Object;)V� intersects�(LProGAL/geom2d/LineSegment;)Z�reverse�()LProGAL/geom2d/LineSegment;�(LProGAL/geom2d/Point;)V�getSize�getB�()LProGAL/geom2d/Point;�java/lang/System�out�Ljava/io/PrintStream;�append�(I)Ljava/lang/StringBuilder;�-(Ljava/lang/String;)Ljava/lang/StringBuilder;�toString�()Ljava/lang/String;�java/io/PrintStream�println�(Ljava/lang/String;)V�clear� hasVertex�&(LProGAL/geom2d/TriangulationVertex;)Z� getCoords�()[D�incircle�([D[D[D[D)D�setAlive�hide�"(LProGAL/geom2d/viewer/J2DScene;)V�remove�draw� getCorner�&(I)LProGAL/geom2d/TriangulationVertex;�isEmpty�#(LProGAL/geom2d/viewer/J2DScene;Z)V�getLastFace�#()LProGAL/geom2d/TriangulationFace;�getNeighbor�$(I)LProGAL/geom2d/TriangulationFace;�setNeighbor�%(ILProGAL/geom2d/TriangulationFace;)V�getFace�getNextFace�D(LProGAL/geom2d/TriangulationFace;)LProGAL/geom2d/TriangulationFace;� getOppFace�B(LProGAL/geom2d/Point;LProGAL/geom2d/Point;LProGAL/geom2d/Point;)D�ProGAL/math/Constants� bigDouble�inCircle�liftedPoint�B(LProGAL/geom3d/Point;LProGAL/geom3d/Point;LProGAL/geom3d/Point;)V� getNormal�()LProGAL/geom3d/Vector;�ProGAL/geom3d/Vector� isBigFace�EPSILON�circumCircleContains�(Ljava/util/List;D)Z�circumCircle�LProGAL/geom2d/Circle;�java/awt/Color�red�Ljava/awt/Color;�ProGAL/geom2d/Circle�toScene�2(LProGAL/geom2d/viewer/J2DScene;Ljava/awt/Color;)V�burried�uIndx�ProGAL/geom3d/Point�orientation�W(LProGAL/geom3d/Point;LProGAL/geom3d/Point;LProGAL/geom3d/Point;LProGAL/geom3d/Point;)D�getPrevFace�delCount�!�������������������������������������������������������������������������*��*��Y����*��Y����*��Y����*�� Y�� ��**������ ,��.������_��������������d*��+��Y����+��N-�����,-�����:*����Y���������W���>*�������_*���������*������������ ���*���������"��� ���*���������#����*�������*�������*���������$��5��%Y*�������*�������*���������&N��2��%Y*�������*�������*���������&N6��*�������-��'����*��-���W-��(6*�������*�������:*��d�����:��':��)��*`p2:��+�����%Y��&N-��,S��'��-Z��'��'��-��,��'S��'��,-S-��'��,��*`p-S*��-���W-*�����d��(*-��-:��':��)��*`p2:��Z*��d�����:*��.:��)��*`p2:��$�����%Y��&N-��,S��,��*`p-S��'��-Z��'��'��!*��.: -��, S ��,-S-��'*��-���W-*�����d��(*-��-:*��.:��)��*`p2:��W���1��+��:�����-�����:*����Y���������W��ϻ�/Y��0:6*�������Z*�������:��`6*�������)*�������:��1Y��2��3���τ���*����4Y��5����Y��:��6:�����_�����1:6��7�: �����+ �����1: ��8����6��������� ���W�����/Y��0:*����7�:���������:��7�: �����@ �����1: ��9���� ��3�� ��:���� ��;��3���*����<Y��=����>6 ��?��1��@��:6 ��n: ` p��?��1��@��:��A��BY��C ��D��EF��G��D��EF��G��D��E��H��I ��+��* ��J: ������K���*����7�:�����������%:6 ����) 2: ��) `p2:��) `p2:* ��L: ��'�� �� ��'��, `p S��, `p* ��MS��, *��LS� �����e����������n���(���� ��"�%�#�0�)�8�*�\�,�k�-���.���/���0���1�. �4l�5��6��7��8��:��;��<��=�>�?%�@3�A;�BR�D]�Eh�Fn�H��I��J��K��L��M��N��Q��R��S��T��U �V�W#�X:�ZB�[J�\R�]X�_c�`r�ay�b}�c��d��:��g��j��k��l��m�n�o#�p3�qC�oI�lO�t_�uh�v��w��x��y��z��{��|��}�������������5��L��O��a��h��y������������������������������� ��*��8��F��P��d��r������������������t�%�����������i�����i�������������B������ ���������������������������������� ������������3�������4������A�������e������������ ��J�������M������.����� ��g����� |�r�����h������� y�z�������������*�l����� 8�^�����F�P�����P�F����� ������� ��������������h7������������������������������������������ ��������h7������������������3��\���������������1����Q����^��.����������I� ������������������8��S,��J��B����������������������3�������*����3����������!������#��@�� ��������������������,��������,� ������������������������k� �������������������������������������������������������������������� ��������B������������������������������7����������������������������������������������i*����7�:�����,�����%:+��N,��N~-��N~�����л�%Y+,-��&:*�����W*�����d��(���������������!���;���>���J���V���f�������>��!���������i���������i��������i��������i������J����������������/�������������������L*����7�N-�����:-�����%:+��N��#,��N����)+��*`p2,������������������������8���G���J�������*���)��������L���������L��������L������������� ��<�������������������L*����7�N-�����:-�����%:+��N��#,��N����),��*`p2+������������������������8���G���J�������*���)��������L���������L��������L������������� ��<�������������������E+��'M,+��*>,��,`p2���,��,`p2:��M,+��*>,��,`p2:���,���������&� ��������������&���+���.���4���C�������4����E���������E�������@�������:������&�������������������������������n����� +��'+��*=+��'��,`p2���+��'��������� ������ ������� ���� ��������� ������ �������������������������U����� *+��O��������� �������������*���� ��������� �������� �������� ������������������� ���`+��,2:+��)`p2��*`p6*��+��)2��P+��)2��P+��)2��P��)2��P��Q9���*+��RW���������������������D���G���L���_�������R����`���������`��������`��������`��������`�������X�������C������L����������� ���_�������������R����� *+,��R�������������������*���� ��������� �������� �������� ���������������!����+��S�� +��T*��+��U�W,��S�� ,��T*��,��U�W+,��V6,+��V6+��)2:+��)`p2: ,��)2: ,��)`p2:��%Y ��&:*�����W�� ��W��%Y ��&: *�� ���W�� ��W+��,`p2:,��,`p2:,��,`p2:+��,`p2:��,S��, S��,S ��,S ��,S ��,S����,+��VS����,,��VS����,,��V S����,+��V S��'+�� ��' ��',�� ��'+�� ��' ��',�� ��'��'+����',�� ��'+��(��X ,��(��XL M��!�� *��O�� * ��O��%:S S�����������/�������������� ���+���6���=���D���M���Z���c���p������������������������������ (;Nat����������� !"#���������������������������������������������������=�������D�������M�������Z������ �c������ �p���������������o����� ��J�������=�������0�������#����������������p���k� ����������������������&����|�������������������������������*����������q�� ���,+��*6,��S��,-��T*��,��U�W,`p��Y:,`p��Y:*����Z���;��%Y+��&:*�����W*�������X��-��[�R+��':+��\: ,`p��]: ,`p��]: ��3+ ��'��' +��*`p��^+��*`p��^�����+��*`p��Y: �� +��*`p��Y:��%Y+��&:��^��^ ��^��+��*`p��^ �� +��*`p��^*�����W*�������X��'+��'��+��*`p��^��,,+��*`p��^ �� +��*`p��^��,,+��*`p��^�����������&��(�)�*�+�!,�--�9.�E/�S0�_1�m2�z3�}5��6��7��8��9��:��;��<��=��@��ABCD!E)F?GUHaIoJvK|L�M�N�O�R��������S�'��������������I�������C����� ��7����� ��+������������������������������������������������������-�������9�����������^�����c������Z�������������������������:��?�������������������������V����� *+,-��_��������� ���U� V�����*���� ��������� �������� �������� ������������ ��,��`:,��a����%Y+-,��&:��,S+��`:��,S��,S,��*`p��^+��*`p��^+��'*�����W*�����d��(��[��~,��b��m,��`��S��%Y+-,��c:6����,S����+��',��'-��'*�����W*�����d��(��[����Ad��I���������n���Z�[�\�]�$^�*_�3`�;a�Lb�]c�cd�oe�f��g��i��j��k��l��m��n��o��p��q��r��s��ux�����p���m������*�^��������������O���������������������������������������������������������������#������9������������� +,-��e9�����f�,+-��gwo����������������������>���� ��������� �������� �������� ������ ������������������� ������������5+,-��e9�����f���hY+��i,��i-��i��j:��k��l��w������������������(������>����5���������5��������5��������5�����-����(� ���������� ������b�����"+�����m���+�����m���������������������������"���������"�����������@�������������P<*����7�M,�����<,�����%N-��o��(-*���p��rk��s��-��t*����u��v<��������������"���������8��F��H��K��N������ ���,������P��������N���������� �����>���������o�����=��+��)2��w���������������� ����������� ������������������������������ ������������������::6��D��)��x`p2: +,- ��i��y���� ��z:��{��P ��z:�����)��x`p2: +,- ��i��y���� ��a:��{�� ��a:�������6��i���������>�������������!��3��<��Q��b��t��}���������������p��!�0��� �b�0��� ����������������������������������������������������������������������$� ��������'�������"����@�������������*����7�L+�����]+�����M��A��BY��C|��G,��D��E��H��},��'��%��A��BY��C~��G,��'����G��H��I����A���I���*����7�L+�����z+�����%M��A��BY��C���G,��(��E���G,����G���G��H��}>��3,��,2��$��A��BY��C,��,2����G���G��H��}���β�A���������������2�������9��j��m���������������������������*���M��������5��������j��������������������(� �� ����W�������� ����A��.�������������"���������������������������@