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) 2012-2015 GeometryFactory Sarl (France) // All rights reserved. // // This file is part of CGAL (www.cgal.org). // // $URL: https://github.com/CGAL/cgal/blob/v6.1/Three/include/CGAL/Three/TextRenderer.h $ // $Id: include/CGAL/Three/TextRenderer.h b26b07a1242 $ // SPDX-License-Identifier: GPL-3.0-or-later OR LicenseRef-Commercial // // // Author(s) : Laurent RINEAU, Maxime Gimeno #ifndef TEXTRENDERER_H #define TEXTRENDERER_H #include #include #include #include #include #include class QVector3D; namespace CGAL{ namespace Three{ class Scene_item; } } //!A TextItem is a string with properties, like coordinates, font and color, that is //! to be rendered in the viewer. class VIEWER_EXPORT TextItem{ public : /*! * \brief The default constructor. */ TextItem() {} /*! * \brief The constructor for the TextItem * \param p_x, p_y, p_z the coordinates of the TextItem. * \param p_text the text to render. * \param p_3D * If true : the TextRenderer will convert the coordinates into world coordinates. * If false : the TextRenderer will display the text in screen coordinates, and ignore p_z * \param font the font used for the rendering. * \param p_color the color of the text. * \param always_visible overrides Viewer_interface::testDisplayId() if true; */ TextItem(float p_x, float p_y, float p_z, QString p_text, bool p_3D = true, QFont font = QFont(), QColor p_color = Qt::black, bool always_visible = false) :x(p_x), y(p_y), z(p_z),_3D(p_3D), _is_always_visible(always_visible), m_text(p_text), m_font(font), m_color(p_color) { QFontMetrics fm(m_font); _width = float(fm.horizontalAdvance(m_text)+2); _height = float(fm.height()); } //!\brief Accessor for the string //! //! @returns the item's string QString text()const {return m_text;} //!\brief The center of the item //! //!@returns the position of the center of the text, in world coordinates. QVector3D position(){return QVector3D(x,y,z);} //!The text's width in pixels float width(){return _width;} //!The text's height in pixels float height(){return _height;} //!Accessor for the text's font QFont font(){return m_font;} //!Accessor for the text's color QColor color() {return m_color;} //!Specifies if the item's coordinates are World or Screen coordinates //! @returns true if they are World coordinates //! @returns false if they are Screen coordinates bool is_3D()const{return _3D;} //!Specifies if the item may be hidden //! @returns true if it may not //! @returns false if it may bool is_always_visible(){return _is_always_visible;} private: float x; float y; float z; float _width; float _height; bool _3D; bool _is_always_visible; QString m_text; QFont m_font; QColor m_color; };//end class TextItem //! This is a list of TextItems associated with a CGAL::Three::Scene_item. class VIEWER_EXPORT TextListItem{ public: //!\brief The Constructor //! \param pItem the CGAL::Three::Scene_item associated to the list. TextListItem(CGAL::Three::Scene_item* pItem) { _list = QList(); _item = pItem; } //!The associated CGAL::Three::Scene_item. CGAL::Three::Scene_item* item()const {return _item;} //!The list of TextItems QList textList()const {return _list;} //!Adds a `ti` to the list. void append(TextItem* ti) {_list.append(ti);} //!Clears the list of all the TextItems. void clear(){_list.clear();} //!Tells if the list there is any TextItem in the list. //! \returns true if there is no TextItem in the list //! \returns false if there is any TextItem in the list bool isEmpty()const {return _list.empty();} //!The size of the list std::size_t size()const{return _list.size();} private: CGAL::Three::Scene_item* _item; QList _list; }; /*! * The TextRender projects each TextItem from the world coordinates to the Screen coordinates * and draws it. */ class VIEWER_EXPORT TextRenderer : public QObject{ Q_OBJECT public: TextRenderer() : max_textItems(10000) { } //!Draws all the `TextItem`s void draw(CGAL::Three::Viewer_interface* viewer, const QVector3D &scaler); //!\brief Adds a single TextItem to TextRenderer::local_textItems //! //! @see addText(float p_x, float p_y, float p_z, QString p_text, bool p_3D = true, QFont font = QFont(), QColor p_color = Qt::black) void addText(TextItem*); //!\brief creates a new TextItem in TextRenderer::local_textItems //! //!This is a version of addText(TextItem*) that creates the TextItem on the fly. //! @see addText(TextItem*) void addText(float p_x, float p_y, float p_z, QString p_text, bool p_3D = true, QFont font = QFont(), QColor p_color = Qt::black); //!\brief Adds a TextListItem to TextRenderer::textItems //! void addTextList(TextListItem*); //!Removes a `textItem` from TextRenderer::local_textItems //! @attention the memory of the TextItem is not de-allocated. //! @see addText(TextItem*) void removeText(TextItem* textItem); //!Removes a TextItemList from TextRenderer::textItems //! //! @attention the memory of the TextItems is not de-allocated. void removeTextList(TextListItem*); //!The local TextListItem. QList getLocalTextItems(){return local_textItems;} //!The global list of `TextListItem`s. QList items() const{return textItems;} //!Gives the renderer a Scene. void setScene(CGAL::Three::Scene_interface* p_scene){scene = p_scene;} //! The maximum `TextItem`s that can be displayed at once. //! @see setMax() int getMax_textItems()const{return max_textItems;} //!Sets the maximum `TextItem`s that can be displayed at once. //! @see getMax_textItems() void setMax(int max){max_textItems = max;} Q_SIGNALS: //!Emit this to print `message` on the viewer for `ms_delay` ms. void sendMessage(QString message, int ms_delay =2000); protected: //!\brief list of `TextListItem`s //! //! It holds lists of correlated `TextItem`s that are associated to a //! CGAL::Three::Scene_item, like primitiveIds. QList textItems; //!\brief List of `TextItem`s //! //! Usually fed by the viewer, it holds the text information from the //! viewer that are displayed directly on the screen, like the fps, //! the distances, etc. QList local_textItems; private: CGAL::Three::Scene_interface *scene; int max_textItems; };//end class TextRenderer #endif // TEXTRENDERER_H