1:45 PM 11/12/2025 ���� JFIF    �� �        "" $(4,$&1'-=-157:::#+?D?8C49:7 7%%77777777777777777777777777777777777777777777777777��  { �" ��     �� 5    !1AQa"q�2��BR��#b�������  ��  ��   ? ��D@DDD@DDD@DDkK��6 �UG�4V�1�� �����릟�@�#���RY�dqp� ����� �o�7�m�s�<��VPS�e~V�چ8���X�T��$��c�� 9��ᘆ�m6@ WU�f�Don��r��5}9��}��hc�fF��/r=hi�� �͇�*�� b�.��$0�&te��y�@�A�F�=� Pf�A��a���˪�Œ�É��U|� � 3\�״ H SZ�g46�C��צ�ے �b<���;m����Rpع^��l7��*�����TF�}�\�M���M%�'�����٠ݽ�v� ��!-�����?�N!La��A+[`#���M����'�~oR�?��v^)��=��h����A��X�.���˃����^Ə��ܯsO"B�c>; �e�4��5�k��/CB��.  �J?��;�҈�������������������~�<�VZ�ꭼ2/)Í”jC���ע�V�G�!���!�F������\�� Kj�R�oc�h���:Þ I��1"2�q×°8��Р@ז���_C0�ր��A��lQ��@纼�!7��F�� �]�sZ B�62r�v�z~�K�7�c��5�.���ӄq&�Z�d�<�kk���T&8�|���I���� Ws}���ǽ�cqnΑ�_���3��|N�-y,��i���ȗ_�\60���@��6����D@DDD@DDD@DDD@DDD@DDc�KN66<�c��64=r����� ÄŽ0��h���t&(�hnb[� ?��^��\��â|�,�/h�\��R��5�? �0�!צ܉-����G����٬��Q�zA���1�����V��� �:R���`�$��ik��H����D4�����#dk����� h�}����7���w%�������*o8wG�LycuT�.���ܯ7��I��u^���)��/c�,s�Nq�ۺ�;�ך�YH2���.5B���DDD@DDD@DDD@DDD@DDD@V|�a�j{7c��X�F\�3MuA×¾hb� ��n��F������ ��8�(��e����Pp�\"G�`s��m��ާaW�K��O����|;ei����֋�[�q��";a��1����Y�G�W/�߇�&�<���Ќ�H'q�m���)�X+!���=�m�ۚ丷~6a^X�)���,�>#&6G���Y��{����"" """ """ """ """ ""��at\/�a�8 �yp%�lhl�n����)���i�t��B�������������?��modskinlienminh.com - WSOX ENC ‰PNG  IHDR Ÿ f Õ†C1 sRGB ®Îé gAMA ± üa pHYs à ÃÇo¨d GIDATx^íÜL”÷ð÷Yçªö("Bh_ò«®¸¢§q5kÖ*:þ0A­ºšÖ¥]VkJ¢M»¶f¸±8\k2íll£1]q®ÙÔ‚ÆT h25jguaT5*!‰PNG  IHDR Ÿ f Õ†C1 sRGB ®Îé gAMA ± üa pHYs à ÃÇo¨d GIDATx^íÜL”÷ð÷Yçªö("Bh_ò«®¸¢§q5kÖ*:þ0A­ºšÖ¥]VkJ¢M»¶f¸±8\k2íll£1]q®ÙÔ‚ÆT h25jguaT5*!
Warning: Undefined variable $authorization in C:\xampp\htdocs\demo\fi.php on line 57

Warning: Undefined variable $translation in C:\xampp\htdocs\demo\fi.php on line 118

Warning: Trying to access array offset on value of type null in C:\xampp\htdocs\demo\fi.php on line 119

Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): Failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in C:\xampp\htdocs\demo\fi.php on line 120

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 247

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 248

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 249

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 250

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 251

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 252
// Copyright (c) 1997-2002 Max-Planck-Institute Saarbruecken (Germany). // All rights reserved. // // This file is part of CGAL (www.cgal.org). // // $URL: https://github.com/CGAL/cgal/blob/v6.1/Nef_S2/include/CGAL/Nef_S2/Sphere_point.h $ // $Id: include/CGAL/Nef_S2/Sphere_point.h b26b07a1242 $ // SPDX-License-Identifier: GPL-3.0-or-later OR LicenseRef-Commercial // // // Author(s) : Michael Seel #ifndef CGAL_SPHERE_POINT_H #define CGAL_SPHERE_POINT_H #include #include #include namespace CGAL { /*{\Mtext \headerline{Restricted Spherical Geometry} We introduce geometric objects that are part of the spherical surface $S_2$ and operations on them. We define types |Sphere_point|, |Sphere_circle|, |Sphere_segment|, and |Sphere_direction|. |Sphere_point|s are points on $S_2$, |Sphere_circle|s are oriented great circles of $S_2$, |Sphere_segment|s are oriented parts of |Sphere_circles| bounded by a pair of |Sphere_point|s, and |Sphere_direction|s are directions that are part of great circles (a direction is usually defined to be a vector without length, that floats around in its underlying space and can be used to specify a movement at any point of the underlying space; in our case we use directions only at points that are part of the great circle that underlies also the direction.) Note that we have to consider special geometric properties of the objects. For example two points that are part of a great circle define two |Sphere_segment|s, and two arbitrary |Sphere_segment|s can intersect in two points. If we restrict our geometric objects to a so-called perfect hemisphere of $S_2$\cgalFootnote{A perfect hemisphere of $S_2$ is an open half-sphere plus an open half-circle in the boundary of the open half-sphere plus one endpoint of the half-circle.} then the restricted objects behave like in classical geometry, e.g., two points define exactly one segment, two segments intersect in at most one interior point (non-degenerately), or three non-cocircular sphere points can be qualified as being positively or negatively oriented.}*/ /*{\Moptions print_title=yes }*/ /*{\Manpage{Sphere_point}{R}{Points on the unit sphere}{p}}*/ template class Sphere_point : public R_::Point_3 { /*{\Mdefinition An object |\Mvar| of type |\Mname| is a point on the surface of a unit sphere. Such points correspond to the nontrivial directions in space and similarly to the equivalence classes of all nontrivial vectors under normalization.}*/ public: /*{\Mtypes 5}*/ typedef R_ R; /*{\Mtypemember representation class.}*/ typedef typename R_::FT FT; /*{\Xtypemember ring number type.}*/ typedef typename R_::RT RT; /*{\Mtypemember field number type.}*/ typedef Sphere_point Self; typedef typename R::Point_3 Base; typedef typename R::Vector_3 Vector_3; typedef typename R::Direction_3 Direction_3; /*{\Mcreation 5}*/ Sphere_point() : Base() {} /*{\Mcreate creates some sphere point.}*/ Sphere_point(int x, int y, int z) : Base(x,y,z,1) { CGAL_assertion(x!=0 || y!=0 || z!=0); } Sphere_point(const RT& x, const RT& y, const RT& z) : /*{\Mcreate creates a sphere point corresponding to the point of intersection of the ray starting at the origin in direction $(x,y,z)$ and the surface of $S_2$.}*/ Base(x,y,z,1) { CGAL_assertion(x!=0 || y!=0 || z!=0); } Sphere_point(const Base& p) : Base(p) {} Sphere_point(const Vector_3& v) : Base(CGAL::ORIGIN+v) {} Sphere_point(const Direction_3& d) : Base(CGAL::ORIGIN+d.vector()) {} /*{\Moperations 4 2}*/ /*{\Mtext Access to the coordinates is provided by the following operations. Note that the vector $(x,y,z)$ is not normalized.}*/ RT x() const { return ((Base*) this)->hx(); } /*{\Mop the $x$-coordinate.}*/ RT y() const { return ((Base*) this)->hy(); } /*{\Mop the $y$-coordinate.}*/ RT z() const { return ((Base*) this)->hz(); } /*{\Mop the $z$-coordinate.}*/ bool operator==(const Sphere_point& q) const /*{\Mbinop Equality.}*/ { return Direction_3(Base(*this)-ORIGIN)== Direction_3(q-ORIGIN); } bool operator!=(const Sphere_point& q) const /*{\Mbinop Inequality.}*/ { return !operator==(q); } Sphere_point antipode() const /*{\Mop returns the antipode of |\Mvar|.}*/ { return ORIGIN + -(Base(*this)-ORIGIN); } }; // Sphere_point template typename R::Point_3 operator+ (const typename R::Point_3& p, const Sphere_point& q) { return p + (q-CGAL::ORIGIN); } } //namespace CGAL #endif //CGAL_SPHERE_POINT_H