�������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����,+��VS����,,��VS����,,��V
S����,+��V
S��'+��
��'	��',��	��'+��
	��'
��',��


��'��'+����',��

��'+��(��X
,��(��XL
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��.�������������"���������������������������@