From c8aa6e447d477703b8313222b99a69b00e605aa4 Mon Sep 17 00:00:00 2001 From: Andreas Fabri Date: Wed, 6 Nov 2024 17:03:30 +0000 Subject: [PATCH] Move demo in the Polygon_repair directory --- .../Boolean_2.cpp | 4 +- .../Boolean_2.qrc | 0 .../Boolean_2.ui | 0 .../demo/Polygon_repair/CMakeLists.txt | 35 +++++++++++ .../about_Boolean_2.html | 0 .../Polygon_repair/icons/circumcenter.pdf | 57 ++++++++++++++++++ .../Polygon_repair/icons/circumcenter.png | Bin 0 -> 3862 bytes .../Polygon_repair/icons/conflict_zone.pdf | Bin 0 -> 2939 bytes .../Polygon_repair/icons/conflict_zone.png | Bin 0 -> 7715 bytes .../icons/constrained_triangulation.pdf | Bin 0 -> 1857 bytes .../icons/constrained_triangulation.png | Bin 0 -> 6800 bytes ...trained_triangulation_show_constraints.pdf | Bin 0 -> 2182 bytes ...trained_triangulation_show_constraints.png | Bin 0 -> 8076 bytes ...nstrained_triangulation_show_in_domain.pdf | Bin 0 -> 1915 bytes ...nstrained_triangulation_show_in_domain.png | Bin 0 -> 6988 bytes .../Polygon_repair/icons/moving_point.pdf | Bin 0 -> 2956 bytes .../Polygon_repair/icons/moving_point.png | Bin 0 -> 8074 bytes .../Polygon_repair/icons/triangulation.pdf | Bin 0 -> 2905 bytes .../Polygon_repair/icons/triangulation.png | Bin 0 -> 7547 bytes 19 files changed, 93 insertions(+), 3 deletions(-) rename GraphicsView/demo/{Triangulation_2 => Polygon_repair}/Boolean_2.cpp (98%) rename GraphicsView/demo/{Triangulation_2 => Polygon_repair}/Boolean_2.qrc (100%) rename GraphicsView/demo/{Triangulation_2 => Polygon_repair}/Boolean_2.ui (100%) create mode 100644 GraphicsView/demo/Polygon_repair/CMakeLists.txt rename GraphicsView/demo/{Triangulation_2 => Polygon_repair}/about_Boolean_2.html (100%) create mode 100644 GraphicsView/demo/Polygon_repair/icons/circumcenter.pdf create mode 100644 GraphicsView/demo/Polygon_repair/icons/circumcenter.png create mode 100644 GraphicsView/demo/Polygon_repair/icons/conflict_zone.pdf create mode 100644 GraphicsView/demo/Polygon_repair/icons/conflict_zone.png create mode 100644 GraphicsView/demo/Polygon_repair/icons/constrained_triangulation.pdf create mode 100644 GraphicsView/demo/Polygon_repair/icons/constrained_triangulation.png create mode 100644 GraphicsView/demo/Polygon_repair/icons/constrained_triangulation_show_constraints.pdf create mode 100644 GraphicsView/demo/Polygon_repair/icons/constrained_triangulation_show_constraints.png create mode 100644 GraphicsView/demo/Polygon_repair/icons/constrained_triangulation_show_in_domain.pdf create mode 100644 GraphicsView/demo/Polygon_repair/icons/constrained_triangulation_show_in_domain.png create mode 100644 GraphicsView/demo/Polygon_repair/icons/moving_point.pdf create mode 100644 GraphicsView/demo/Polygon_repair/icons/moving_point.png create mode 100644 GraphicsView/demo/Polygon_repair/icons/triangulation.pdf create mode 100644 GraphicsView/demo/Polygon_repair/icons/triangulation.png diff --git a/GraphicsView/demo/Triangulation_2/Boolean_2.cpp b/GraphicsView/demo/Polygon_repair/Boolean_2.cpp similarity index 98% rename from GraphicsView/demo/Triangulation_2/Boolean_2.cpp rename to GraphicsView/demo/Polygon_repair/Boolean_2.cpp index 1b0c6c05d55..7caa9c0ce29 100644 --- a/GraphicsView/demo/Triangulation_2/Boolean_2.cpp +++ b/GraphicsView/demo/Polygon_repair/Boolean_2.cpp @@ -176,9 +176,7 @@ MainWindow::processInput(CGAL::Object o) } } if((! mpwhA.is_empty()) && (! mpwhB.is_empty())){ - Boolean boolean; - boolean.insert(mpwhA, mpwhB); - mpwhC = boolean([](bool a, bool b){ return a && b;}); + mpwhC = CGAL::Polygon_repair::join(mpwhA, mpwhB); } Q_EMIT( changed()); } diff --git a/GraphicsView/demo/Triangulation_2/Boolean_2.qrc b/GraphicsView/demo/Polygon_repair/Boolean_2.qrc similarity index 100% rename from GraphicsView/demo/Triangulation_2/Boolean_2.qrc rename to GraphicsView/demo/Polygon_repair/Boolean_2.qrc diff --git a/GraphicsView/demo/Triangulation_2/Boolean_2.ui b/GraphicsView/demo/Polygon_repair/Boolean_2.ui similarity index 100% rename from GraphicsView/demo/Triangulation_2/Boolean_2.ui rename to GraphicsView/demo/Polygon_repair/Boolean_2.ui diff --git a/GraphicsView/demo/Polygon_repair/CMakeLists.txt b/GraphicsView/demo/Polygon_repair/CMakeLists.txt new file mode 100644 index 00000000000..afdc5237e1c --- /dev/null +++ b/GraphicsView/demo/Polygon_repair/CMakeLists.txt @@ -0,0 +1,35 @@ +# Created by the script cgal_create_cmake_script +# This is the CMake script for compiling a CGAL application. + +cmake_minimum_required(VERSION 3.12...3.29) +project(Triangulation_2_Demo) + +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTOUIC ON) +set(CMAKE_AUTORCC ON) +set(CMAKE_INCLUDE_CURRENT_DIR TRUE) + +find_package(CGAL REQUIRED OPTIONAL_COMPONENTS Qt6) +find_package(Qt6 QUIET COMPONENTS Widgets) + +if(NOT CGAL_Qt6_FOUND OR NOT Qt6_FOUND) + message("NOTICE: This demo requires CGAL and Qt6, and will not be compiled.") + return() +endif() + +add_definitions(-DQT_NO_KEYWORDS) +set(CMAKE_INCLUDE_CURRENT_DIR ON) + + +qt_add_executable( + Boolean_2 Boolean_2.cpp + Boolean_2.ui Boolean_2.qrc) +target_link_libraries(Boolean_2 PRIVATE CGAL::CGAL CGAL::CGAL_Qt6 + Qt6::Widgets) + +add_to_cached_list(CGAL_EXECUTABLE_TARGETS Boolean_2) + +include(${CGAL_MODULES_DIR}/CGAL_add_test.cmake) + +cgal_add_compilation_test(Boolean_2) + diff --git a/GraphicsView/demo/Triangulation_2/about_Boolean_2.html b/GraphicsView/demo/Polygon_repair/about_Boolean_2.html similarity index 100% rename from GraphicsView/demo/Triangulation_2/about_Boolean_2.html rename to GraphicsView/demo/Polygon_repair/about_Boolean_2.html diff --git a/GraphicsView/demo/Polygon_repair/icons/circumcenter.pdf b/GraphicsView/demo/Polygon_repair/icons/circumcenter.pdf new file mode 100644 index 00000000000..51a15a41082 --- /dev/null +++ b/GraphicsView/demo/Polygon_repair/icons/circumcenter.pdf @@ -0,0 +1,57 @@ +%PDF-1.3 +3 0 obj << +/Length 385 /Filter /FlateDecode >> +stream +x}SN1 +RSDNc  BPl$ZQ7~dྎ_}k \OSpFCS-LΝm8.mp\=?oH|]HڂSK&Q0TQ-v`*M2m>ggFZmM@A @0qJݘ2XLgh6,κ+ղiT)DZ4Dؿf;QMJ]T'g:O]j7~w¶w1Cqs]iSJ㭄+HP}M}lCk/ L> +/MediaBox [ 0 0 595 842] +/CropBox [204.765 238.4 261.6 291.541] +/ArtBox [204.765 238.4 261.6 291.541] +/Parent 2 0 R +>> endobj +1 0 obj << +/Type /Ipe +/Length 322 /Filter /FlateDecode >> +stream +xڵn0 <&|L])6j Qg@]vZ倉َlS0(i,C9+[_rf!jȹ QU8bHĂst}}+X#mA`Q60]yheC;ҸS l,{=ܨOKޞH7<1py©4B(ݘF6Φ5*1q:ÓT83Mc ]A,L݌;P3ucy'q:.5Vb!c SL4_-OR P +endstream endobj +2 0 obj << +/Type /Pages +/Count 1 +/Kids [ 4 0 R ] +>> endobj +5 0 obj << +/Type /Catalog +/Pages 2 0 R +>> endobj +6 0 obj << +/Creator (Ipe 6.0 preview 28) +/Producer (Ipe 6.0 preview 28) +/CreationDate (D:20080609193922) +/ModDate (D:20080609193922) +>> endobj +xref +0 7 +0000000000 00000 f +0000000671 00000 n +0000001076 00000 n +0000000009 00000 n +0000000466 00000 n +0000001135 00000 n +0000001184 00000 n +trailer +<< +/Size 7 +/Root 5 0 R +/Info 6 0 R +>> +startxref +1327 +%%EOF diff --git a/GraphicsView/demo/Polygon_repair/icons/circumcenter.png b/GraphicsView/demo/Polygon_repair/icons/circumcenter.png new file mode 100644 index 0000000000000000000000000000000000000000..f743b7a64cacc527a5562ce0ae76d641675ad423 GIT binary patch literal 3862 zcmXAs2{=^W8^^~!$UY)uxqpNq+t^xcjjghqP6TNz*!RPtx9Q%_|2+rrx8#d-NT zD#_?F%TuF{=}i1g?F_8UDAao%3vSxq{z-SPMWt3sBSTH@Z=Lo-i(iHv&26t;yEbg6 zq^dd?^IL38UN{1AO+&tFe0AZJ|rYW z62b=s1xY}(iKd892nql|&?Nx-ZF2sjs-8Otc`(jZ`t14h=Ov-nH`Zu4sHnKOSQ08q z7t@Kh@#xCV&cxHG!2v=?73Ki(t=G{F4at2h62#QJ6JgZYfUZ-8g~N2^PAcD@9Z0h{+w=7DFPYb_p8^`y9X?(OaV z4IS*g#B|r1zCL1O;p-fWU|yQR?ZXNeUmDZXop4X$j`V?%T>@lyUg&L_Cs%gTuq~1wj4LsXHSxnI!yY;1>$lD-bZ{=8)oXCY?U#~oh}t)fkxZ!Ar>-xg5x&DDluRZ(%yC|wj7)OaIocenl2(nPIa>q(sN zAKI`|N!b2qjaP3D;V6JWNc`LtxdI}a)@_t75GZ1C;@DhO2krulO2wu6tH8@+()gXt zrJ0U&ujBGCL#Lg*i+DHlL|nrcCf~;F??r7jfkXkRqPp3=XI7vcbQcFq^UI9hk*3;3x_Hb?zk|NUh< zT@@4rSy_{H4R3CF(;jN&vFQd`YtngwN{M>3+f8K+zfa{yYA~gW&drfNjUqA2ErXyG z_|mgHEeYbB!r`VPYlELAk7IlwMmjpqe@oJL(055%(h8hvxyitC`7N*?2(h~BF;fht z_0_zO>*5X=+jReSCcnnBhv;F2IHRwxk2wO(4p+8B{qrovy(8`D$?N6o6Ng1%oW6)& z7IbV3gI(vbuk`M9zHOS{zg?954xew*ye`3wsBlt4RDBp59UWEf77u<;mixD$Gjs4% z^COmQ$dBzM=N^JMDBcSz{4ixJP>=w_xYd{r)7wj~4gA)cxG$istZIbCVxO^zyG6Lf zexVzrXQoc|Jw9`b^XPpl2I<)nOUJ-`h&z;zHeohY{Ne>vP2U_au`_NDTeUu5GUuPk z{kEKZ54f`U^-btvJ}EL{jW&D^hlmHL9hth=fuSGd$1*3HsIIMXoLAc%8)ao*-Hq7Q zck9kh>64fMX5U)=-t8B`HBnguAmzb9n!L&rqQ3$GDA9FaB zq?$s_y_w11e!*Od+3VA6R6HI@c>H*5(e%-YYtKn}?rv^wcj&p%h@)&94p;Ps`LSl^ zFaerVx>@i1>=>i|z7tK3=H-L&`(@O2v83^u&wQ^B-**2!`Glk)rWv6NE_N`2E2}@@ zm@u&=pjo*3R0QuDQm!ceIws%{>8klB!Sf#>DRm%Y2*_<>5X zM&01cQkS1~_vdb?^8ROe#SS!P;7^cQ{;BZg*$>q^*sHU_4FKY@x_|e;rv4FGJGkh- zK52ta9=Ch>3dSx?fM{*$>Tpk#{mAY*O)8CjU>ezMHPITbO0O#-)BlaA=J)Bxg2iuf zyt`%9hA;crNOV8hT=c?M;Abq`#Ju8KWo(x?WZwU619XVzWn-#meB|&D_W@Uwp73nbYp>rK#Kt+Fj zt`G~xtDHb##C7{X5m)v3U?E4(y6nXBvJu8%H@ua-zKVyy5wq`T{gLtkV2DV*J&=ra z5KBq>ALL8?*k_S(eB*ofLr`sYg6X3E71HmGjX)fmnoM;HnAoL(%%(KFzW8T%-IP)N zP>;g)5=&mzWXvrRD|2GvH2uKX*ucPmm6>4aAy~CT7xK2m1Tt4weKJB4wx$|=eVc#& zgo=?{`8v+3RI&@A)(5U3XASM`p`ke{%+udPcVMy0Q6{~uu)cj2G!ir9yZ9X>HYZK- zeoY=VOCDVh|B$w1p8sLzVsQK`-`?Ni64REqx<*uc5Z9vcKL2!JDrNAT z0WU8(3WVZ=W9CGB9#nx^rt}I3v^;Cb(SSvL#fFJ{!>&lw?6YTXF52ye_0!b93MHPc zS}OH|&z41bWkqN!@jj?*c08rKj4+(EYEZmhh7k9*v9ZaNj_urfwo4LH)-^Y`R7#<1 z?Y>l{&-fvTZ?dmNf-DP3;Uh`HTo~cyU!eE|c)I3d^WS(fziQ4d6lKtDu<7Bqu~p$@ ztj3qfys;wD(Yt(Qts*^sr9{>|P@6L>)_*###H(DJUI4?T-U3YnJ)%PziwRDS9+?Vp zqSPUU7tvIK9E%*Al2Q&f7~a9dd>S0FO9$Lv1U(AS*8ik+?4%KNQ`oEN%i-fmGODP+ zg6B|dVOP1@Y+oUTMqPYgs<)Mmp9)N!l6>c5b*=^0sJbh;v-Q5i&p~>X_Uo*l@E9w! ztAwzHx#`Fo-9cAi+s*Yz({ZEtO9f?UGZvn>x6y&~Ey~zZf@WQDNs4o=(uKZhTj|UD zO0Hyvde`?!9K>Z^<#W4fxUS6T+4rAnWA7rkk3NC;8H}Pty2@#v#W<^xhh+Rjr$WS& z(=2kDXBNKL<^}Wz;HzCFNF?1#P07}tVi zY6dEt6KIEzqohqr368Hreh!qdufUn%{MIRSzjN_rE&nj?htd9dy7_*v9AT1{vv*!} zi|kL*K|d(jp%Hvg#EB?fiyU6;uw`OAD`eVRIn9Ta%k*&UN}?s97o?@{sGw)3emtc!wjTed_Z}f)e1@ri zQ}|j(<9wQ7sbd$I4W4#;t=^0{l)>j=pz`Cs)VXY>+j&7VH?6Ha?k2rx8cRUL71=S{ zUp?D{t>tXgXk+{(Fy2Ff$&8gzv=Q(Fy(I%H!4m{24(*&oIcjX>QzJPEe4>%}zRDvRl9PM{q3MnBs+ z=V58|zTPtzoHsp;JQlYx~IskG99epQg5JpGst=!)VMC2`qKz6Cm zU}T_-={R1d8ia){L*-_JNd~55H{vn)1Zc;qba#VUlaTgK;o+eF$6@QQrbw21^|n!U z_A0BZtHC$e`o_k_vF**O%F0S^!tnjnmiV8ZvWOv$SIM27v*_8)@GzJhwOATPP&lZ$ zE#CxlP*$nD4R2ul{16jpIhX-vbsd<=%|#AJ@t)k<1*1Ek8N6To*UT;{4U_Z(?(knY o=(WTfhkeW-OVL)OQbtm#3(XEzem5j{cgWM?)UY)Ue9?x=bZ2Bob$)~IZ%6Z3q6EB3W5UQ z0L421FfxL`Y)IrYbUy%rKp+8_g?}KOL<8S}L^{cwtC4T@}GTPeZ3qp^rU?tjP(VtAttRe=EM?5$)uRTj#ZBA$xIJkVA+ir z05Yzl&0(v-OarWpWvO9HRlUfj_RP{A7F)zrC!wH%rpT(0o!PtlWcEOQQCI8YRhsMC zs}^;E*U`!*@5Jbo?eoQRF4C*PS$>(Gmt^Ej$DrGR-C3F4Hu2-<5{VjKzrm%QrJeLD z6_m)~+z+`nh#`x%t_U+PY4dpG!mAmQEdo(iWYn+A zajM&rv^Z)RRAVQFb>gOjvTSB;CzjLfoK$8D4Wao~nrKtPE1*rvXfvCrhRZQRg?N?h zcbpiN`%~y!nt7+rT_A-?n%hXxN|mHDg`k1TZ80ht9P{N|)6s&*2`0A)on9~933>6S z2Y&D+8^O))iItOZ|omZslib%_ujbXN{<@pKMdLu+`Nf%%6MQnFQIF(giv1;f> zG6s$t9q@b4GHH#FH~tXyh?#!;z`HFMu#a1quB;-(;o=tQpB)2(pNg6F)^}9ky?qhV z8K1oDLuZiDRh5M6=fWd;E_X)U8Y!A?40<(QGkx6S=GIo7%@6#k?enSGvKNLj3e{}) zxr(XlTqr^>AcpN7=N)cF4=53ZWqz^hz2ynp0%mjp)}2M(C$fgn zWA>Z%_#??`LCPwK1J7lG+kL4=+b(wWdIOq0EjQi_lBN_H;R+)k+|dV4HYPiVJeApI zI3U!y=d5wjPklViF?+7)qp`_#T9Y0vPs@z7{?p+1}||mt5Rg$ zRxJD_9Vy7I*9whQJUG(Eo_MJ6aGhl-JTZQN`&F(sPba|vP5it?>dhu zM~IGk{?WK=4NB0m%KaigJ;qlX_FLpP#v)vn*Ydmc9~7)=_()8Ao-CYr5b~(7|16-vwm2bv0&w0en5P71Y?-Vy$lb77khs$Tns1o2a~$;>hROTSfypkspE% zU*y#bR7;zMnu4)z5E9w?IP zO!GLleg?CXd9+5|rs%1xQ*R#nI4HMlb$IZ$Li{Ek`Y=nht}*C~`;NO!v-5=yJAMp} zamxr&{iS}sny|yBQ*ZAV&!?Fkqqv1*s!`R^w?8ve{kvbko0v65bLZT5ULzs}_k#?a zPfAY2*4pB8))rXlzSgMvp>xyk#5K!+7)-+2>y>_~u%yM8dfnt1Ze+u!+J(E3PHCzu zOo*4sm4amZ&pwZI&%_g~UO1r+m&TGIIaA#_GOVr@_-1}@!ljPfYI&}O^fpSDM zU-(*2*s{6P_2XWp)gmL3t%?pXMR}84^ERs+7U>X6^bI{R7a0i>&RgD(s5t4s9F(z? zXuC}Re$y-J3vzJCu0)mY2y)KB%tcI2hs+b$k$Dl9)%EpI3I8IhrG#GD$aM0}u&n`I z@@B`&OeW?|eH2QVvV;5@zv=M3XU_!sD_S1VJ!MhNdik@NOIDlEL7uC7@f=DuT>P=} zPMCz>p6_+{j}I4y*KFR?ZUeuky;+G(8*)KYix*n86Nu6mLI_u`a!$gBe`+tR>ybF0 z9DE$n%Ipo)v^m_{zI=sko!YmxOhwz|?RzBG!@AF& zs)>9pICfv=tfs;Z%%K2b=~@q*N=2nK3%XWn?s1J&6Vhn1Pg$!SVLfmWIbN4H<8P7O zdFhaS;3?hJlUm+#H=plSM@Q7>$%2swh8*p}y1QC)gne-2*$OYdp9Vo&qQzoYY2K&> z&rkzWTO^l~$iiRdy1H7pjmp~giEAiQZ)UXNN*1)({#84N`byYic4Lm5>3y4i9`8c0 zRAXN2xfYLdbG+<40z^;C&9WZtIKo@JZne3e?N`jt>T!YzsCMj<(-w^Ivp-uR9sA?q z7jF@+ETlPQmW)PfU8~JM!@|?iulE{%HynPXF|KBooAjQ4Wa%C5^Q^`g<2yAeUfSgb zMeEV4Z&6Qch<3Y4hU;zfWv-LfsFd28mDUl8@eR+E%PIT@)FJ&J^TRqiMdM=d`^y~} zsm27ArkAO$jD^HkjQ9`XYLZ8KhD=LZkWqf+m_Y_3Or<2x@`t0MB@rHrXxf6(tNk%c z$;}0A`Co*V@1BVLmVO)H_+vf$i+&*+_zMNOf`GuR{e43~mTh3t0fgLNjKO@9YDT0J z11V=9UkMuW4U`Q2mS6^Md2|X5&<42#80fj0je6@hn z!0#FY4afejk^j(;Xe>CijRX9tfgkvPY6t`#oZ0`zAu%YB%>UGI@V_)Vjp!dpqCqy+ yWk>%A5?CJ0fkL4J8`B2=LRRF{6kubJ4qzwXvP`7WzxIK|B2f@1^zbnY$bSIerS13t literal 0 HcmV?d00001 diff --git a/GraphicsView/demo/Polygon_repair/icons/conflict_zone.png b/GraphicsView/demo/Polygon_repair/icons/conflict_zone.png new file mode 100644 index 0000000000000000000000000000000000000000..5fd4d5b4ce6920cb7982cc7c6f564ca4f3105231 GIT binary patch literal 7715 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 literal 0 HcmV?d00001 diff --git a/GraphicsView/demo/Polygon_repair/icons/constrained_triangulation.pdf b/GraphicsView/demo/Polygon_repair/icons/constrained_triangulation.pdf new file mode 100644 index 0000000000000000000000000000000000000000..5138901d4978cd2987230d6a4715feba9ebafe46 GIT binary patch literal 1857 zcma)72~ZPf6xNDL77y;yI))zwBoLEqvLQrhG!SDsq9I5HEJs2%fI>ny8x5fGglGk; zgI2|g2q*{+h*Ho33ROfADGCUPQf~o8@TwPRH?&qpI@A8MGyCQp|Gf9j|9#IvED+9y zX)K5Z7(gXk20T0_L)m{=Ueh<~gUM+Io4N{#{^4^rb8Dvg7**OJq# zlt!@e#<#1XUd!`0ZL>rPp*wbM%KkQYal%jod)jPXN2`x^FkwQwC&&Dahb})p=l7g1 zIBh;5sjaDx^({3HcaN+ZT9SP{X~Dfp%{RR6x7u-mHKh@St=@XI$;4)V%2pqzB}v`k z;R_S=>09+J(A2_hQPuO6_15Iv(Ds>Ns?>k{7~acA`06uZA)9Y@nTG4XyIf*2=cU8A zqUXNUNy6m7FAsa1O0;_5bsnC}m)9OGXtQ6Wf9RNf+vfCQnso)4$1j#F97r}hTtEHp z4I?0bMMOLLs`BN{ORNTn!AEOCY)gRjV{uB&s%m z4~Q&G6&ZlyU@2h=gaCvRP6Bee2$jc3JylvFFq>ic*jzSnLztn&m6$4iID)v*5H^Pc zm<%qB2{QrALTGFjU~&-}i^C=|`56BH62(%CXc91od*tyx3F+1QL0td) z$+YgipzLIrru6F|&zDWty{-JG#L*Ly!=Q87ady|h1!Z$yzc|c`%WpoUFbVHA+oe+I zipu9dY`UsheYqt#+gR$z-_qD|py$|KGSAsh+<7wY)+xJJT2966Ui5h3ou|~-gX_#> zU)M{VH{Pf61JgghIOEli=6rNLnViude5^ae8oF@(<<(zwTIcDO52Egs?^#-bMYmcd zgb&6Cd+vNd?Mr_sj&nJBy{%7SQ|Df;Th^=Vj`gn?eAr}F78d8@KF`UKeH!_BugzTY zDw_=~T~BzAW!j7Fp_6L=sJs~17JDu9S(R0wb%511#ZojNednD6GW||WO)moHN>z|6<%ZKLpmWj5{%GZEo5s63b8&j2M z=~95Kr^-a!0>$@{$`hWcBtPzgd#TI~l!Kcn8%U86+atv0)Qm`BTCvw;>r=Mp)>gNX zl4y2?T{|z5hn$O3)+J9^5ReiOQJ`4sZO^{r=HqOmx1c&m=grF6`W%O*^-bRvM0#(_ zq6l>xUPK4)@4g?|IA!0*fu=hkx~+8lXQkZ!Bl!b5b`hV+IDB9 zp5zcD8YnW(vC9*9-nO^QU&J}ztfe~6%RIbk+8$H-GWm={o6Xmg#@dJmPOK2L^yAF& z_!2p(HY7Btv3OT*M6|6(J&uLU! z)t)2S4_3IT-;2xFR8;I8GOA%LuNkcf1~PpR*^i2#Hb{bo;2I3kePiTmg5L(|kPyWG z$UF9^QZFekja5ZK!>XblMO4=j1zv<$<0=d|5nKhXGzN&r&=oQ0O2BlZ5cQZ!u8AZ> z{@=sH#W5tH({6#|OPc^d0)Bpeg literal 0 HcmV?d00001 diff --git a/GraphicsView/demo/Polygon_repair/icons/constrained_triangulation.png b/GraphicsView/demo/Polygon_repair/icons/constrained_triangulation.png new file mode 100644 index 0000000000000000000000000000000000000000..3a49172fa17b5d09511f331faf39f6c6ab637ed5 GIT binary patch literal 6800 zcmV;B8gJ!^P)+jvyU3KbI)#>W0vx;+$*I@OAA>AgR(;y-n0Pg_iIp^-^Ha-0T26dZ& zPJxIF6_GChvwl8R{{|kFCtd~_fw1k0QLnYi^xeLvPzCi7OYa8 z6_IsCA=araP#=r zz_!2ybI&gM!+@^3-X1O6%^r;EtYW~lB*;G7%K7jQW66yUt;K46ci%v-%@hXOOr z{|}{3l%M21+ttIjTLz9#01Ldb&j9c0_V}#wOaOc!`o{Z{|0m#W z1?nH_)q6{z%=6~?oh@)}0^AUwTg%q3GfDZbKu&*! zLiu$53fQ>Y<2WFh09X(B4(UzbQs7)*-3mDE31VqZ*#}M8nI+md2$<#3{4e0xZjb4J zVFGm1_oZmy{2lmJ!1y+BTcOV{bIKmD65uxWrp^9B?bJX}2f1Uo!#lK~#L} zFRAwcyS9n@B#)ssDNtvTsdH_GHuokixm*MsPo%BwuU9uFe@|4q=TH68i^)~kE9n%I4 zyO2DYIA95I3NX0aliqPAKzGvLLsho^pqvA&Q*(QhOdAVI)_u~{ozf;9LxD3%Z+0I9 zcI@`VcZ3O0b?%o*OWJzT<5lgOrf4~~OYwOn>wngxvuz;|us!f+Zw!_JXW{8NRv9Kh z4LLpx%m^&~lYpHYWIU@USV0A?pZDfoToYY`(NoZ3Z#@^MDI9n)rqhF zq2|qUBTN9SfgX1jdL8HmehR$4qn$|W3BJ%KzHfMYi^eu^z|p8~#E#=^3Lb4c&IHj? zb~LI>_c{1Z0;<{$F@e<+R1)-f_=b}_W&CHu^lt$CGBBpU0M_p}On{0-9|#coC~#0W zCg0Fz^#s4D3Fn^-&gVMRk3)cGz44t7e7LJj0K5^nF);aa(G5;lC1Ajb-sfnen(*%L z^>>F3^=Dn+$AR(w4KTK&Ob{(mKOkw0>3~;ILC2cioP0y4)e}5YGj4n2yt%{uI)Jo- zZ6WZf#+d-!^!*3vBg{(RCrxo<#esT@M`Nv@CE#L%yQd5N8wGrqq|r;f|0=BRF3bez zrtcWwAAzOlcHm9jp7g*VO)@n8s{#D$kvw&Lu1o#g9o>8REAoltn8Ovh#5sqEj0S!W z>_8HhM2$a+?g3^;OfmzQ?wos>E`f-QK=t*5qg&@X=f2WFJ5zw|qJO73=eDf7je>Lx z2Tn(i<~F#<{lIa~xkoGGj+o$NR1aPj;?Kk~lwn>*KO+m!UF|$n@G=W^`onBW`08TF7^ z2zt>C=TdZ8TZA&s3#h1h4t=Z6)4Gy1O=T^VC0*cH`zgATS0 z-SRwY1d$lfD7?$-QQyGLP+9mGU?WtgFdAi?HBmkPP`VQ+s~24^m!dk2m*`t{=Ao<3 zvnb;{4b1SDR1w)6m}YJr=A65samouoG!MrE|Ba4y3{Rq~!XI;SL`*OS9SG2~Xb(D> zF)Ri4be==b(zS zS@dm^=XRLJ1c=BRQ03D*%xwq!5ID8fCO&3@!Dxr$o%UL&-g{?LwigvtTvjLXMIibH zjz<~i98^94I#KtbtIj&;xq1X@%04)SsCj66)oB+*LxC+(y~tG3f-`$9AuY}8)U_gFnitSh)MV7O{W?_Ad3wYMzGKfE;Qfg{ zo6cWn3Vzrdm;*^$&CaBPdsv$j)R>;Yw6Q@nh`#TD-+za(mqb^XJyBKrsc6i^Yk<4Z zct|tQH~SUzbmPBRoxUC*vXii#zsM9gIWRbz1-NPvux*DJ;LTp!b?XUY>u6tRvK%#; zpC1^=JKAh>Br2sn81=n42e=%#1znk+h~C^6BPOhS)%k#PE^%a=ZGNXhy*lS+h{!nL zAzIKeha206F zpP&WaozU;7|AtHk4m9OXG0(0g`9`Kz&Hi+urgB*;$ac;pKL`7ohkq)7{4CPnwd)${ zNZbAd9=i8-1Llh1JY%PjrhuK9Mo`@uz%{&jeeQ?HC$P#@|3q zZFiCa?O21>$|sX(MLC0XRI(oQbC9x*Mr99nQ#cllOJM77*6m66Xg-;=G0;jhh(`SX z-LIDSIvW>QMnQLKV8_6qz5u+TrVjaWhf3QuplAP&kPax}P$$_;0}bFkrtB1R|0Q$3 zv@3fqbR`imeWA1$`#RL%&`^FWv)k8NUzA;JBjvfB`;D+W(^$74F4l?lR9_jj`k-nqmsQwImUPP{S0Th{`?y zwBb*H?wmtr+|L0Yqo73&@R+IlPIG@FkG79=Y4X=19PeQs#tSQ&AG>Ko!C{GBOO z$@u}5Quze^xFW7=430wn1ks?JjUMGJ4U5su?5Gm$Z))4e1j3A-+l^OSuIv@Z=cqtG zdx6UXWw*62LgJZM@G?{IvuzOfDbmN1`-;AO29Nb8xGJaYAmEdz8Js^TKc|9MRD>_a zb6Z9~Z95%_XNcN#+~xJtp~Ad9GwOWYl)Ir76P#rVp4BFydj`1lIbef=_5HX*nR^sq zKU6g956XSC;ri{ZL_v9g$EdZqvggqBK2-GV_x0DUUNVxF(_d}H1U5*+Wi=2yhGfK0 z7j+;vbUZ4-jOzsB4xx&kkYmgoli&#&T4gK_u3f({5H_nMHsXTPv@=BRa}gF09Go%nV}S$oP@VD1kA zzCb$I^-6R zd@AUpSH{mza9(u(Ad<(m_?kq?<7`1%Z9khdfq;NnG8v}x}@OIkOv5Y_uP893rF)80b`>-@pg zspQIz+7`?SF#LmLB=snWcbdVqOA#ipe);<}IM8d74g>2?xc}_pytlF@+AcBeo?Woc z-X6WBT-ni$uK)Hg2R`3sU)J+hlhn%-s$|c`M|WVrZ)q{{@pT)pebclUnygFsJ|*he zBjqgx>uf&OKkE?JU^U{QgU*K!^#RHNQKO zQQSFqD*74nVHxTc-${6<`8~-wx2#0nuc2=oz%UUxK2%6V#)`<3=&8ca!PCIz&bhP8 z5S#-8g9#$Lxm^N}b_8a3IK92~;JK|#Md#c?R1+J+Nq(8g1AHdBIgX(h)$ecaoO`BB zn+3o!!JmUA0^g9g)AtRzzeC?(o2asvWE??<%I6!;M~EKvth%*yczRS^ZD}7H-CrO0 zJLzx#Y+&n#`m>p7X8{>v^iahKreZL8R0G6XiQ6OS3gsulT8X++HA%-_roEYM;IT1` zuS6YLLIxi{Y`8xkH0`Cdpsko-xT%<%9jpdIcku@2AoJ`;fj6hIfdl@_wDY4j@YuMD zAxq!qX+X*upyPbg<~Iv7K~&i~TGS?w&uGgESyFL_P`7J;Apg(=bCR?ouAJfywQ33- zb$fxIH9h$mW1AUZJgc(R%{LjE-cLt&ZbrGiNoO;kMU6%r=r=p2Wd#*o>`;x}-2nzz zNCBJ18v8Stq}@Sgs=h1)H=D|bG)U-$rkxeQ@D^pqk&XfUG8Lnl2k?K$;H{(yMBT|k z1|O~}Q?=2bH<`9u8t7()oaxjt@mTZw9_Pg+vf!MHUFYo)Y!vXIh;C1 z=67NFfQameii;2O9^Hz5lVj*~u&dq7@1T(ARmfOMj-ziWxxAs}%KH9S@h3Qqw8G`4 zinMHJa4eueyk_(Tx|;N|znCbsA4y{l2khR#&w-Um?A@|#1_G;exV-@a$9WTYLPb0W zlXkaylJZ6uUo`c9RiJ#9!N>3Ywn^?|?(Pr+jG|8?8^?Go%>+9b!XImZNShS9Wgg=K zxV9#3f42Y)xl*0Q*e;f6BNp0ToV6zfw%R_g5@vto@E()OreCq2WijhM$Gn1dzR*0IZ7); zlMJF-Z0XUsh;}d_UhT;5-r1LPJA7B&ntOxymk0qHiIliXRMwU0=X9ic>$+}v! zV;zY8Sfoy?Al0=Bj6`H4>Yo_HrS0Nu1!CJ8zh}#ey<@S$F_m1735kHrJw~zS%-!1*TA7R*hAZKhf1_Nn6&@?O4Q@n zdPRjyy=PIuu%rbo*1CFXL;bbk1wK@$P77p57-ZMiK%Dg_xVsY!;I)5gV3PgMMSLY9 zeAGz8=e#y*&3TAA4_S-nLV1!}A+#dTzqCo*VcsCuqWP;p#|h*|5}ns1eI#Whl?_)i zaBpdF&o5f9)t;bbaLbbLO^eq#_qR6jRRZVSg=ng|6`{wdo@Aqj>AS=Hu0#82p}5k> zKr1GggT6HY8%N>rOG9KSyp6e4CD&3dAR=o3UnQJ;V+kr0Y8vbYaUBskFtcQND8DI$ z?9V~8yx7gsxQa_uZF+(>m&$`khuZV66~GZ4pv78K-&Z4Ey8(W89iIcJ=a_h~`Q7o9 zF_FQ?jcA(sQRdMi)Jy1Eb8j$kP2?HWB>b=Wy=$~WwFM$F3=IMvLv1U84Fyx$4V+*e6&7;kKlu3;o4nr+30if~$K?DSG~a}fW~ATAw`kYwDU zT$N_c1O4;B#J&O?no<6Jq-_%(qlVBo8SPo`?>RN#v&YX;n%TV1LFE&Ii0tImIjv0n zsvsgei^xCG7=JdE&F|53dGM3uock@XJ?eoJ!`8sFBI1X@uLDjuzc&_<9oxiL*rqTA zIox$DecV;bUY?A&Lk++Emk>7iDC}ZS*fybu0ujP0&}*}@7jk89fy;*S*`rk59K;70 z#D$}ala4!dei@=F48XRe{TE&IMr0a%k*bsKTC%dE;dNr>UrxzSSRQg4 zo-Jr_kx|c&JJgt-01Z*^t9+LM|6T*`kZr;hHPY^9WiMo;62P;+!SQhE`Z>tgHppKt zK~&><0@UMnMqrXAQ)5UQ)HcCqvInTiR*+;A_h}Vz{D;ADNv%u}HL%Dukh`>!wxW4U z0}OBmX`_+K1|J35+l92UX)g7IlR4VMJGKIj>rMSnG{FRR!;zc$jAXd{T3y@Gv~!_Y zhEGvZqFJKt4N0q;7X!Q1fZH-yX@^ykCVSg8!31}h23qcrN#`dxvBpW5NI0cS+k%!7 zGz=k~Kw~BF@iy^V!_dN?-Kg$3Q}@-pMs+j66{eAomFP?@dIEIwGZiXs34ml9k;2a>zJt*%xhGt?E;P1-TrS{l&eKg031m;rOQvc zJ?R>EYNvv6e$gP*mA+{P$8ge8Iu{LaDKTgl z7-0nPs7Lqmvg1H<6P{}xMvJ^gbu)pr&7Yf5W|Aqhu)-j|hp@rNwKNpdDUOc4r1i8zYsXI6@aPe|lyTYbJjPMQGNFPix zT~JGX4K4B-)yf1>V>Ywsrrt9@k8vU81=$84xB84W&@SL`(lU)g>4Q;Si2bCrN^X^z z*Qg05u(oTvd(Z4dPAZ7+%D~%FDy2(*zff29MP46Y0LJIk^HTC#ZKre@s2A!4>yO9%1fr#p%*vi} zWhW=EQ7O6#62FgWa8h*7hMB$ED?gsF!AC7AT?X<6>_LI_!KmumZk~@Z&vNq`HNgbd z(Qz7m%9D6!I>wa!8exNv%IDZs?Lq}`^Sm)yj2B0mWLEa6=6-Hoqb8VOq(`ik8%&AH zWEp%+CnF-*>U^OIHXbJZve-A?W^I2pD?7<#oELS338IF5B}sf8O18nrIo%%Y{(g}R z3lv}HndkPidr5TfrqE}i6HG8UKr|Ne!xW>)DG0a1P(PN+YOj2BI}9BsH#CNR%dX|J%yU^ zJ!NjM4ZP0$ZzHR=?VM|-D~8TE0^H1tKgh_8Q4lh zZb3g0KG=Dvg$bnSY9b>0qV{Y95ghuxt-@HfGNyAb4gr)4B61GN@HRed;+&gX6kldL zWj-k)atykYU5=g%)H;e$$2?=uAfWzAJl8q5NgV{0VuI4hMTU^g zAg!3EXqlqVhBem7?!jZuxozt}RAx_58k}=0P|km)$#(J}%EepG$s;1p=~SX~ z$vN_VyXi`ia=BhbDR~unq|_N9dl$9b2m$il`a@g3cxFQ&*ZYagNDQA?w*RwH?2^{Jl)}0bg9t1 zLOLE3C(G^rw8umk8v9eCIa963$}D5uuDcsC1=}=82T1J~;;q21G9L9f&qvJ^VMxug z?^_OQH_vyD1?g3sITY+acs$yMwr+5#Ry4V&K1MTPw48nLIA1Y*{zF8ZsZLVHWp-JP zN{xDW*ND|(!^Q%~*vT~Ql#gYNso^H?Tijlpr0;oHG;;@2>xF#tE+j#`LDW+7Thpaw zXrg-esm8g&@HY#-GlyS==GAOIr}|1fp0n)n^DK6&!Z878i!G5lp-{lutLwCmle_yv zWv8u9bz6hB2dmzCv!_twq8s2Y^{Ti*1+fbbRC_Rz3C)%b(oG%(A*7v;`(w!k`t9^wZkhMb`}#<9VT^0|1rmcH=uml!$u=IP zke!8xs-#kNQ|{$^wl;pf-n>@VI&S{F7QTCv>iptde(jWlX*??|E1@f;_@$h_`OK&8 z@deD~{`&FY2=Ip%+`HtzA56>{>(%1)Evdh_5={<~ny?9!RyVfwv$H;^ezdDyW+EgQ z^H4dg$4Ea`6j_zpD$nu5(yamD&!aSh> zlr$|9z%yY162#}g0!jCR=qWzJafXH95p-+G06}*YM0*x*4|{T1=7T5j5!NJS6M*LQAI?$9(EsP$)2mIqUTABqI07)AZSS+eIBoIAhs1aQ4ZrxS_JB>i zCpltA4-2~4lWea|$HwI8Q-Pze)%v#;Ssdy5Xyxo3uNIvuv)91;Tz1RFFi|dK=Ks1f zW+8T9u>W0UZc1Bma!bYV)CNYJD$Xu%Yg&cO0ecVKgaJ2OnGV@dkxz|x(=R6u`)CNn zML|mwE(SgiAN3%lTPH`_^S_;}nHwyR)_LUCqt%t!bMSaoNpBm}V0bIS_ieR7dl>TK${XluiCJ3Tb+udMvic-0uEspi+54=JRwzkD#{fetP#2Czz#? zmB7xYcg5Wkw?9)7WHW`oVzY5wO;=-B7eL>sjY)f&+o}@!2g<^9;>{A-I3oTcXF8h*Nwwz{S zq}5q7n^K=76>`ltWLJ?%qEw_Nx#Yc9d_qSeX;zHmLgQ1iLzO#|hV$V~i~0 z)Hiu@L(iev*eE&hL2H3h`N6xH4dN||wxwwU?(z%^`}pYlHa?EWct7NPaNU2#$XT9B zQuXL;wbWI_$|y=hX#;`cxZIa-*uYrvKNZg3yj}X&V{L2e{=63>R_CZv2bi46DvM;QQoR*}+S3 z;|6N2(?`>4aQ`^kb^2rd=U|VWvxsRmb$O`JAZ0m2kncA;mvfUluPbYA>h-Mh#DCU$+&X;C)cWigix!K z>UUKTNMs=habJNL+ITrF5amLK8`tSF0M4OuB)I9Q+)Pl)hA zZIrJdMGpc4`0zTi#DuCdV}eTa(tB7PAc_5vV~3PAr|;K~m40#`8_4K0vlfxK0WKqa7={}DsK=xZGf8ih$pQs9KwATDI4+Q!9Zn z<^td|U@+K~;5K!({`$HxrbE3Dww;xoa!p{2`6Vz8X9O_V6=99{cM%|LGX%T@^bwII zxu$b_DLd6jV2nA$81oqL9(5JqvvXkbTfoUcBcLhpJ77A{5cFBWxxi<}m_EjspuuD3 zD8+wSS|1X@FQLKM)=4V_{*?KM7RL|2trT)6PD?Q%)P3fzd$2eD}lmQVD>c08a)8 ze>QM-viAnSL|@QfLZVm=>%Cy4|LiO0nQHe!V42hAr@*iB-6!80B>-Atw|iBNAeI8% zfr3=;KMxhYpl^lQ?(>hK)_*<_CMThx1u!LG>KO+#$#);^v`PRp1g-$qIGw){7==CS zPl=-ooK@`!xE!P-{M@Z`BYf;D!85Qi4NZRlzH;c95BxUY{k7960ni3m;BLS z6P(w;OTJ*=g_=}#2f$>%?kuQ{K=*FIjaXB(ru#AA2l?*T9YP6!y}Y4ybHEo>l5WwL z3f@pBf+OKysp_5yMGMt7vM-E?$j5QO42OpmK)ZYkc)L{s?+dyLSnG7$24FU^BH$XJ(&1?;uz$VAU9Y}lFFGC)WVB5p2bwJO23p?*h0Gy6JdUfah7lEVWYNtIMzTOjN z4M=zRbJ%zP1y#QCjDpv);MD;Aypc`w`Wo<)d<(tal>qoD@N9taX8^y8yFJHFP#NXj ztKkLz-8Y~*2Hp?G9%pO5%Yi}Jtao-8B>?sY?haTve*<*Jb7+Yh96Q1NQQrL%v|ORK zmEECJOnp(pwufHt0zb>Q0^~#qus$0@fij2b^}sNoajuvd0C)QW{1OtQGx*x>gXL;H zu_VTR`62MM(hZ-I{j=Kbe^BkO~aE{>g`YZi;m_n^jCgsb84*gGBe1Rf07A&t%D zNSPBQ!20UH5Fq>yfivrq5p5@UG>M%cER2SCGF@Co?7y=EM$UP_>D#>$U>z)-&!`ap$ za~&`QXjGrV_u(3N(N}Y!sAfp;~WQbb1n$@HSk5iPU@U`R|4P|Zwq%eo@o^8 zn%)Ii9I)t{K%R{y+DUJn6uyYiQ?2Hg+XZ2ZxNy%^XAT2kTz&BboPf2U>i%91w8@zgV7GT~cq>%h za3VnX?*qTdxA1*%;t9Tq6Zcs7+{gVSl+`C+ScBAXwvDBDmJID0>6GBy0AULt2Bam( z39#lwxV5e0&Ye$i?F2nzcIapizt!8$E_oRFusg7~9l5Lpy2aIo5fO|rV?3=ZB%n0K zI`;Xc66=(|1`=x_Q3jjKVABRD-w5lZy9pL;f_c?2yCHlsIp+BP8;$vBxE(tA zKiJetq;Z`10bVku@?1Mta|66LLgeJQ+elZ8F$F+>tOH9^_2^Zgmxz3o4SqjoQ3b(4 zyMWgNsx$@;uuy=7BA^NO5ahrh90_2JF{}Yu1BrD|QwE#YL&XNzP!4M4gicXf5UDAw~PpdSQntr zY%6jL445o(xBvViV-9Wx$2EeZn!uq=;D9Eu&+gE2ci4RoXxsuCw1lFTV158*_l#6E zTB*XC?ACy+g<5aasakKRtM%oux&pqdgl{Tgeg%A11~Xq0Ss#RNk}*sA!u|kLU`02P zed~dZl*JgcANIiReD&`t;CkRz5vd7$F$kAZf`(X&)>T-af0{$(E715Pukw0e43v%& z>5?h&9gS&O2*)*spErWT8pDB2VZWxZXEWHNIW%bwyS0F#y`W%EFfFK`82U0`wN)Hn zc{ZMCyUOz+#MPgFUO+NBw&icHuZ96b_euW6UYo zp#|WnUNC(qO#HDoLev6d;p1yW(&Yh)t&B0IXfYgH1jpg6zUG3XUO;^pKVM{356U?4q zn%4sl3G9Tf7Rj~i>~vMR5jJe}7RlwXWD_i?fX~;%%&8*FQsFhmoP+h%)Qj`A*f6?; z2Sr#<=<`M7JqT8UBJA8!04x%b9|N>CX3t_+bTMq1*8c<555RGcipb)by-ZgX)ZLn|gX;Bm zYrfIjny=abD?f$97Qyk~f+-J1Rg3j$I8sD52Ied>#w-K&!^Q(N(sSN;W9AKn!~NCc zT#&KQVT#D(aWb5&ylzbO8Q#`*6ufes$RFdxZ;UwuxE=5OL6?cZrQYx3VZk7g!vMw@ zQ}7KOT?EH?qs}2s;73hi?`F`V88mC|O;;_T(4VfF#7THSIUc(>NU>n)C?bz0Q-TkG z6TLt85s{Vp`8CEoHxkbGnOFr}2jlM&xgrMIla}tr^m)Lph*=I?11+bhxhqTL-oN)&VJZx7rIQuvmFF<%tTc=>3Mt!{87jE3&H^3~P*MFo5WzQG%hAU=4?G+#e$(5iA_;D&F z7^W)sPSs$0IQS)~)Qa#TR2IWQaWZy2e5mkOWT^mWVY7|sPN~HvqS()=`wLa)^>%Rl zCXbFvkaloPzJ=~X8)$qx%&YR~+X!+L)(GhEDZqd&JSOR+&g!M>(luTTh4;b|tq3!r zwllPfi@{ITFgytE%~1G9VUtz5U&Zuf)1LD|3=cvRz zT9?E4Rf?E$Y_iB~7=2E~6NF77;qlP`8}j8ETh;+rk|qlo)(O-Pn_r0+%u)=6U#XF) zk2gZpH*|wG+ODyYPdBP3V}5t_;-^uG>jCYwYgPhe9DJDxqn+UQzGKG* zkoFp2?@OOrvO@qzu5Y;-O!=#QUD1|j41a~Yp`q!QJ|4GEyKddXb|9)5f ztOU-FBa}TVl)xYVt)iy|WHrdJWJ7&j59Yuquv8tO^YLVqG@>&!Emb~%0`fN0bbyn? zyzj;n^h{yP#~MfOr*1+i0p^h50@WEwwn;Scno{y?LfON@NO*Ov>JI^V1*$qFN$G=4 z|L6OOE=tO0iVk>Hb->}-5Pu8ItWkt7ghUVTpduCMyhCp$2^GgWK3&7Mu@I|(%YdQ` z72wC|ro>??-XV@q_GHirPJPkYhL?eihBwmiaF*iX$xM{sA%)<~Y#A9053W~CtOFSY z52kwOO||H`23`uFu`RI35&mZE*?(59=Rj|TGtk|<1GLnO;2!oYK2`-73eV_pc>$RY z)g{&nn2v`Liif08S*Z}*q!7fyTp#GCSJgEjHzrx__fmO>yy)QOind>2?_1?G7JfO%O)w+ui7Yl>lFviZFo9GEE>j4G#Kl}!IQ3oU zP~$;ZeV()K&})f1;cJhk1F)-IHy+|+V$3RvwNkG0a95HdQn)uL;7Taf zb{WB@;p+w^5&7^#;A>K?>rx>&Uv=_badohW&;fqnYWb_M`4VsS-U*KIw?EY&t!TNK$IAUgXY^ofe zhm^S*QXx4}A$dB^PWItWn4eG#&w)f&Xm>Nr@c;LWHFPX>gkOpE!Ecrex;%yR+Zvp% z{tfV+Pj9B7?3cq`da4xcX=E>T#vhS~V#ULKnJU443dy^<=xh;TI84`2l&qFmx*9Zx@+QWVizzY2_RD(=_MS2~S0S|vsJoLy^ z2@2SH)*jn}CkQTsQQtaqpn!Z*SNQJ%r{>udBXGY3WRd$PY!YA;)(B^?-9`JH81|f*2d4UvG&ofQwb zLjgRV?^isx5BuI|D44Il>VYsms9s;V>J#VdUjT`I@Rt~QI7adC-?a79Ak!(=ei;XW zsbGS#6KMDlYCFJL^`r!T4xt1Qzsfscu21vdVZDCV8JgY!^EWHL5?JHYC2&a0JoHd< zORHSzklm$_U69MpZv)Nsx?lnoUIZJQOMGs^=AXa;AOvq-uChi^@Ur$QysSvWH3CFLnRoX z_`Nw39IwD8pWa*GgR$_5R%QWt0?ImO7(5!151r-Y;B1wkW44_V7POsUm~v$43>WJ; zv=(G6e37Hh)2?S{W`biFJmu3`;|TvdkgHP|a$@44iQ3&P5A{wOglDQwDa{q(yrKI`4N;JI{qK(8_iASO+p3{x8?USA1Nl z_y~30kPcxJg)k?%{My5jzMY^3q;s0QL)XCv)vA-{L!tyOjiK{yQM~q#`u+%b&2{(? zkToDBIZQtnz=ys-G}MkN3{u}ob3-nOzDd~$UJQBeemOj#JA5t30Qg&$ou||E9TE1u z&TyLR@Ua%V_xJxE5#S4vLnZi1@sal0pRh`xgETTe%T5NL*A43myrDD*x6U0(}$P!{Lv?IxYMPkelJtGm|*84uDa9-ETm8<@kmZtXsV=tI)fq zFo^po#KYqv_-^>x@1Tc6#1n*p!SL)xC8QM~m%{C7_&Zkd_jXX7%VFXo=j(qTYD>}t z>xu}UsN>?RB82p1s06D$J~jip#i;~33TILr#JYBZo-in`j_3&^mMGj+Aj4DSO#rS| z{EgPn+QR`;U}eI=Hx3q@71EdRR+#C(I~B@vr~rp4K0b)_ZV2SZE96t-AXwW8-iqmd z0u3FY)kluOW+E&N8n&q$U$Mn$r61hV zPa*f+EmwQE?Z)?o#0#Q#uLO1XF}24uv9C;N7gr? zmB(8v)p1Yvg<+pLU;kW4^oESg8b2ZbzXFKeMBQ=&yevBrb!y<81#fSm5J-G^X8< zl8;WQ^J?VxLpJhM(Bdg7Xgk5wEb|U!0-d4b94Bu=m7@Tqu8dV%cs+g<|+0_o!JwmROn|&Sl%LDKqnEm=>cF z{7uOxvKwI7yogKH@B4>*r%oAU%soeXNwVjH+#%986Fk`zV~qJ3+<$Dq4KGU}vD*6P z<*fV%{^kFEmUaG!tDK~Me?RiuAvLWXTQw~s*Jy1gNEV5lOXvWtUJ1zXp92{$GU3c5ucZ zcvR<2SPyb#1PfeL(4p*;VQCCXpgp28iWv>t&`(rDX@ePD&~}0_d57YH_V8=>z-TSV z2xmU-0fWAB@+RC2vvWaHAL!?|^BviTvI9evY%)qA5VoO4s-Xo@8gT6dnMT=0g{$D% z<<8gts^{>LL}5;U$5}9z!kRWYhOy#e|MZkrora8Q`cUvZe{-`Y|2sz{ILC6GQ40rN@KH> z#)WpAd@D`fp*Ue6lrC|;{x_32e5ByhjE9BVayZxKO^7WYQ5QJ0TunV)lVl$YLF@iX zCXw?^W}*Zys|G`T8QM3Kn2Lq41-v&f=7Kk zA4Rx81Dmqnmq+L=a8^p-HSGK2CC%^OWm`Kz#D!~HPaHF6)+D?$^We~;C@D}*g&G1nQYcI)?;W(ik z9P=ONPKT#pL(~jplVGv`{uEddLJp1C>i4-STRx&H!GBX}UqC!Td@1X1(< z1LivTz`fGtDcG<*T|1WyZiHFxoetfhU)cBmtB%))r&)Ldmq*#I$E^gnrCN+Qc7hkf z;_U?Iz2*$7%R#QnVUns`z#u5qscOn1j9??-RsX$dX+qh7N28wJ#;F8@RO46aX90GC zP$t+BFwM>IF%>G?!zuX|Y9`PF1}r4poemn>!+z`3BC~sn=xE?eC5KR#dc~;(ZB*lR zjybiR;4b(o1k;Dn;1^G;xIDr7^o`E)*mHY^+nqZdKKJf)NLF88Kz>Dlc^DX_ zWDrX4$kyCGTSCaRonSzcgPbeiv1QKJ|2kB6Ns}35XMiE_e7WL#B}l&{c@xro zP{4~y2|{l}V^ac;h~*vun}GstCkP6*Yy(F;svIbUEf+d{9QHz|odNp5NPRL`1u`-q zZ$d{nwo=vU-L99i=40jU8w0AgTMWb2%VwT z4Cfg99$4aj3_2;+Ez0ZJnT}(N-N-}HI!(sJMpr363ErxJ_;WPgysAhWP1gr5dn=+qZR z<-4P|cjyn}-Mk4`!?RuBTtAe(45YQa=g`l>zJVC;f{dyFgYbeM3$PhJ3PEmHOw@u* zhHo!Qa!va#*cQ4%yU!ipgxg@=zf=J2kh=Z@)8lMEiUORh&Isy&0eOcl7di!AF1-s< zLwh*dHKHw1it)zQ$YTM<#@V*<1e~@QV{TE}*DcFljcLUxLkym2Hze@>r amH!9i;pMz`AROBO0000(Vb?sxuk{_ni+`+VPf`QGO>ac4Q2lPo9@ z1;7CH+YD@MAfhWG3c>_{LZ$$sqc9jl#P~m$k0C6?9}Pf&ogE~>#0WnG3h%zUw$e?7 zr19+4yfcL2x`qh@H`_ky(ya#t`Q7^{`YoLawl?2J(`7qnX>YUA z+IW|H;^@(2uNCvUl9W7aZ|Y~=R=uE-tKBMztB+fqvCQ2$qg()@Tr>6e*v{W?Xs=8# zwr#IIo{}QlN|Zfs{jfY{p3$+|B;OzN$(!r5jkmS=hidllz?+O=)e!Drurx23*SPc1|2uW``Y&|%?YRfan%IK>$4N~i?=<|>ue=v&NM8DAAVK`ph z^}d){trRaXVMB;0;IC`~e213+qJCD2wGp8RAiDE|5Qyl2iZDckNr0kO9uUz3k)Tqs zKO#{S4d7N{)Sri7z#HGP90Bmbg?Oom93()@}!S;c2hx-rUm63ipTWv zsnMy7|9)!nb+<%4u=drluhn`TBr7~w%+jj^3nB@6Nf+Y;F~*gg>MDl_%||Mn!&&Cr z@|*@557U!}LRzg#r9PXe(sWb%4Cg!fk}yGqS$TXiG^agG@gFs!KUIK>fund|rSD>kn( zVff*a_>}Bn_Cz9YASZXLc1coR=aDfVX;WeE`%dpQ2%m9o6-l1Gh1D+;Y)NGD2oDzSOp98%q!8p0b;-)#7V&$D03 zwvHZ2^ILV$(cPt(;3Rk5+NkNZhqRM0Sd_gc5H6TYLSVjznXZP*u2qu8qT%gDHML`W z4efV!d4swxL%j0r*0T@f+Uo?XsR%>WRj%Qy>)fR0K%vzt#E4sKKC+UZHbx1;zFtf6+oQ%DAbd7r3$D z+WI%U4XUj(+;_=U`sURLiU=w040X+?w>4iII%qnvR=2fSgSXOZ^d(+v~D+S!WwW-m$Cc&I@%#EI;76+%C&il=aq<-AYgcH9I zNIIwH9!Y=jbYw=xI?t@)Djj(gzdq^GsN4SjwwW>(+;-vnx(Gv^Mr>17Uz%U@P<4g> zg!SEq51Inm@Hc_-^6`nrlO??mk9HLPdcjytxv@B8=%{Nhttuz&qIbEMCvArlLs@eE zzKTi0?7{Lxzw7G8f5;?JEwDkqMfGb`4cBd6r>=CW%U=Q^+`;g9c2~F<~l&PWa6Ka4`}H z!GI3Ie=jh(1A$;lW=W!dl!>Nf_$7>g%5WHSnv4qLIa4g~2}^^gpGTwNiJ7v)#C%~e zB8C*>k|&HraQBEFD2f3^wsCHD76qa}kw_0b5`0?n#n@yVBugd}GBH`jb%g!|U9{(Y literal 0 HcmV?d00001 diff --git a/GraphicsView/demo/Polygon_repair/icons/constrained_triangulation_show_in_domain.png b/GraphicsView/demo/Polygon_repair/icons/constrained_triangulation_show_in_domain.png new file mode 100644 index 0000000000000000000000000000000000000000..cd4be89b1abfef93500bd95864a76997716c1792 GIT binary patch literal 6988 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 It&9fabEP)fQi=HSuO9k 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