OrcaSlicer latest
OrcaSlicer
Loading...
Searching...
No Matches
UVEditorCanvas.cpp File Reference
#include "UVEditorCanvas.hpp"
#include <Eigen/Core>
#include <algorithm>
#include <cmath>
#include <cstdlib>
#include <cstdint>
#include "libslic3r/Point.hpp"
#include <cstddef>
#include <limits>
#include <string>
#include <math.h>
#include "slic3r/GUI/GLModel.hpp"
#include <unordered_map>
#include <glad/gl.h>
#include <vector>
#include <utility>
#include <wx/colour.h>
#include <wx/dcbuffer.h>
#include <wx/gdicmn.h>
#include <wx/glcanvas.h>
#include <wx/event.h>
#include <wx/dcclient.h>
#include <wx/image.h>
#include <wx/panel.h>
#include <wx/sizer.h>
#include <wx/spinctrl.h>
#include <wx/statbmp.h>
#include <wx/window.h>
#include <wx/utils.h>
#include <wx/string.h>
#include <wx/stattext.h>
#include <wx/tglbtn.h>
#include "3DScene.hpp"
#include "BitmapCache.hpp"
#include "GLCanvas3D.hpp"
#include "GLShader.hpp"
#include "GUI_App.hpp"
#include "I18N.hpp"
#include "OpenGLManager.hpp"
#include "Plater.hpp"
#include "wxExtensions.hpp"
#include "Widgets/CheckBox.hpp"
#include "Widgets/SpinInput.hpp"
#include "libslic3r/AppConfig.hpp"
Include dependency graph for UVEditorCanvas.cpp:

Go to the source code of this file.

Classes

struct  Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::PaneColors
class  Slic3r::GUI::UVToolButton

Namespaces

namespace  Slic3r
 |/ Copyright (c) Prusa Research 2020 - 2023 Enrico Turri @enricoturri1966 |/ |/ PrusaSlicer is released under the terms of the AGPLv3 or higher |/
namespace  Slic3r::GUI
namespace  Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}

Enumerations

enum  : int {
  Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::ID_UV_FRAME = wxID_HIGHEST + 4200 , Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::ID_UV_SNAP , Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::ID_UV_AVG_SCALE , Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::ID_UV_CUT ,
  Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::ID_UV_JOIN , Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::ID_UV_UNJOIN , Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::ID_UV_UNWRAP , Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::ID_UV_MARK_SEAMS ,
  Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::ID_UV_SEAM_PATH , Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::ID_UV_CLEAR_SEAMS , Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::ID_UV_CLEAR_EDITS , Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::ID_UV_SELECT_ISLAND ,
  Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::ID_UV_SELECT_VERTEX , Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::ID_UV_SELECT_EDGE , Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::ID_UV_BG_HEIGHT , Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::ID_UV_BG_CHECKER ,
  Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::ID_UV_BG_DISTORTION , Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::ID_UV_PICK_TEXTURE
}

Functions

wxSize Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::gl_drawable_size (const wxWindow *win, const wxSize &logical_size)
std::vector< int > Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::gl_attrib_list ()
void Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::set_line_width (float width)
uint64_t Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::undirected_edge_key (int a, int b)
bool Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::point_in_triangle (const Vec2f &p, const Vec2f &a, const Vec2f &b, const Vec2f &c)
float Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::angle_delta (float from, float to)
Transform3d Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::to_transform3d (const UVEditorCanvas::IslandTransform &m)
wxBitmap Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::pane_icon (wxWindow *win, const std::string &name, int size_dip)
wxSize Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::drawn_size (const wxBitmap &bmp)
wxBitmap Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::faded (const wxBitmap &bmp, double alpha)
wxColour Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::mix (const wxColour &a, const wxColour &b, double t)

Variables

const ColorRGBA Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::UV_COLOR_BG = { 0.16f, 0.16f, 0.16f, 1.f }
const ColorRGBA Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::UV_COLOR_OUTSIDE = { 0.16f, 0.16f, 0.16f, 0.72f }
const ColorRGBA Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::UV_COLOR_GRID = { 1.f, 1.f, 1.f, 0.08f }
const ColorRGBA Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::UV_COLOR_HALO = { 0.06f, 0.06f, 0.07f, 1.f }
const ColorRGBA Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::UV_COLOR_TILE_OUTLINE = { 0.70f, 0.70f, 0.72f, 1.f }
const ColorRGBA Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::UV_COLOR_WIRE = { 1.f, 1.f, 1.f, 0.30f }
const ColorRGBA Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::UV_COLOR_WIRE_SHADOW = { 0.f, 0.f, 0.f, 0.35f }
const ColorRGBA Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::UV_COLOR_BOUNDARY = { 0.93f, 0.93f, 0.94f, 1.f }
const ColorRGBA Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::UV_COLOR_HOVER = { 0.72f, 0.98f, 0.93f, 1.f }
const ColorRGBA Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::UV_COLOR_HOVER_FILL = { 1.f, 1.f, 1.f, 0.12f }
const ColorRGBA Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::UV_COLOR_FILL = { 1.f, 1.f, 1.f, 0.f }
const ColorRGBA Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::UV_COLOR_SEL_FILL = { 0.15f, 0.85f, 0.75f, 0.24f }
const ColorRGBA Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::UV_COLOR_SEL_WIRE = { 0.55f, 1.f, 0.92f, 0.55f }
const ColorRGBA Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::UV_COLOR_SEL_BOUNDARY = { 0.16f, 0.90f, 0.78f, 1.f }
const ColorRGBA Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::UV_COLOR_DIAL = { 1.f, 0.85f, 0.2f, 0.9f }
constexpr float Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::SNAP_PIXELS = 28.f