Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/prusa3d/PrusaSlicer.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorEnrico Turri <enricoturri@seznam.cz>2019-06-14 11:57:29 +0300
committerEnrico Turri <enricoturri@seznam.cz>2019-06-14 11:57:29 +0300
commit541f58c65617eb1f341fe47105fc57c57ab2b710 (patch)
tree55edeae2cfaf2903065b9b47dbe2aab178515b53 /src
parent1a91add2e60f3a4d22cdd6c8a10e57dc8095e0a2 (diff)
parented4b71eb1535c5773fb789d41c874b13875ee3f2 (diff)
Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_perspective_camera
Diffstat (limited to 'src')
-rw-r--r--src/CMakeLists.txt4
-rw-r--r--src/admesh/CMakeLists.txt2
-rw-r--r--src/boost/CMakeLists.txt2
-rw-r--r--src/libnest2d/include/libnest2d/backends/clipper/CMakeLists.txt4
-rw-r--r--src/libslic3r/CMakeLists.txt3
-rw-r--r--src/slic3r/GUI/GLCanvas3D.cpp22
-rw-r--r--src/slic3r/GUI/ProgressStatusBar.hpp1
7 files changed, 18 insertions, 20 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 2f2483eca..724063466 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -139,7 +139,7 @@ if (MSVC)
target_compile_definitions(PrusaSlicer_app_gui PRIVATE -DSLIC3R_WRAPPER_NOCONSOLE)
add_dependencies(PrusaSlicer_app_gui PrusaSlicer)
set_target_properties(PrusaSlicer_app_gui PROPERTIES OUTPUT_NAME "prusa-slicer")
- target_include_directories(PrusaSlicer_app_gui SYSTEM PUBLIC ${Boost_INCLUDE_DIRS})
+ target_link_libraries(PrusaSlicer_app_gui PRIVATE boost_headeronly)
add_executable(PrusaSlicer_app_console PrusaSlicer_app_msvc.cpp ${CMAKE_CURRENT_BINARY_DIR}/PrusaSlicer.rc)
# Generate debug symbols even in release mode.
@@ -147,7 +147,7 @@ if (MSVC)
target_compile_definitions(PrusaSlicer_app_console PRIVATE -DSLIC3R_WRAPPER_CONSOLE)
add_dependencies(PrusaSlicer_app_console PrusaSlicer)
set_target_properties(PrusaSlicer_app_console PROPERTIES OUTPUT_NAME "prusa-slicer-console")
- target_include_directories(PrusaSlicer_app_console SYSTEM PUBLIC ${Boost_INCLUDE_DIRS})
+ target_link_libraries(PrusaSlicer_app_console PRIVATE boost_headeronly)
endif ()
# Link the resources dir to where Slic3r GUI expects it
diff --git a/src/admesh/CMakeLists.txt b/src/admesh/CMakeLists.txt
index 941a7eeb5..7d0177782 100644
--- a/src/admesh/CMakeLists.txt
+++ b/src/admesh/CMakeLists.txt
@@ -11,4 +11,4 @@ add_library(admesh STATIC
util.cpp
)
-target_include_directories(admesh SYSTEM PRIVATE ${Boost_INCLUDE_DIRS})
+target_link_libraries(admesh PRIVATE boost_headeronly)
diff --git a/src/boost/CMakeLists.txt b/src/boost/CMakeLists.txt
index aae87340b..12fe6b4e5 100644
--- a/src/boost/CMakeLists.txt
+++ b/src/boost/CMakeLists.txt
@@ -19,6 +19,6 @@ add_library(nowide STATIC
nowide/windows.hpp
)
-target_include_directories(nowide SYSTEM PUBLIC ${Boost_INCLUDE_DIRS})
+target_link_libraries(nowide PUBLIC boost_headeronly)
diff --git a/src/libnest2d/include/libnest2d/backends/clipper/CMakeLists.txt b/src/libnest2d/include/libnest2d/backends/clipper/CMakeLists.txt
index e20cbc70d..cf8a37350 100644
--- a/src/libnest2d/include/libnest2d/backends/clipper/CMakeLists.txt
+++ b/src/libnest2d/include/libnest2d/backends/clipper/CMakeLists.txt
@@ -56,12 +56,12 @@ endif()
# Clipper backend is not enough on its own, it still needs some functions
# from Boost geometry
-if(NOT Boost_INCLUDE_DIRS_FOUND)
+if(NOT Boost_FOUND)
find_package(Boost 1.58 REQUIRED)
# TODO automatic download of boost geometry headers
endif()
-target_include_directories(clipperBackend SYSTEM INTERFACE ${Boost_INCLUDE_DIRS} )
+target_link_libraries(clipperBackend INTERFACE Boost::boost )
#target_sources(ClipperBackend INTERFACE
# ${CMAKE_CURRENT_SOURCE_DIR}/geometries.hpp
# ${CMAKE_CURRENT_SOURCE_DIR}/clipper_polygon.hpp
diff --git a/src/libslic3r/CMakeLists.txt b/src/libslic3r/CMakeLists.txt
index 833b1ae62..312a82c4c 100644
--- a/src/libslic3r/CMakeLists.txt
+++ b/src/libslic3r/CMakeLists.txt
@@ -182,13 +182,12 @@ if (SLIC3R_PCH AND NOT SLIC3R_SYNTAXONLY)
endif ()
target_compile_definitions(libslic3r PUBLIC -DUSE_TBB)
-target_include_directories(libslic3r SYSTEM PUBLIC ${Boost_INCLUDE_DIRS})
target_include_directories(libslic3r PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ${LIBNEST2D_INCLUDES} PUBLIC ${CMAKE_CURRENT_BINARY_DIR})
target_link_libraries(libslic3r
libnest2d
admesh
miniz
- ${Boost_LIBRARIES}
+ boost_libs
clipper
nowide
${EXPAT_LIBRARIES}
diff --git a/src/slic3r/GUI/GLCanvas3D.cpp b/src/slic3r/GUI/GLCanvas3D.cpp
index 6980e5267..faee2727d 100644
--- a/src/slic3r/GUI/GLCanvas3D.cpp
+++ b/src/slic3r/GUI/GLCanvas3D.cpp
@@ -63,11 +63,6 @@ static const float GROUND_Z = -0.02f;
static const float GIZMO_RESET_BUTTON_HEIGHT = 22.0f;
static const float GIZMO_RESET_BUTTON_WIDTH = 70.f;
-static const float UNIT_MATRIX[] = { 1.0f, 0.0f, 0.0f, 0.0f,
- 0.0f, 1.0f, 0.0f, 0.0f,
- 0.0f, 0.0f, 1.0f, 0.0f,
- 0.0f, 0.0f, 0.0f, 1.0f };
-
static const float DEFAULT_BG_DARK_COLOR[3] = { 0.478f, 0.478f, 0.478f };
static const float DEFAULT_BG_LIGHT_COLOR[3] = { 0.753f, 0.753f, 0.753f };
static const float ERROR_BG_DARK_COLOR[3] = { 0.478f, 0.192f, 0.039f };
@@ -440,8 +435,7 @@ void GLCanvas3D::LayersEditing::_render_active_object_annotations(const GLCanvas
m_shader.set_uniform("z_texture_row_to_normalized", 1.0f / (float)m_layers_texture.height);
m_shader.set_uniform("z_cursor", m_object_max_z * this->get_cursor_z_relative(canvas));
m_shader.set_uniform("z_cursor_band_width", band_width);
- // The shader requires the original model coordinates when rendering to the texture, so we pass it the unit matrix
- m_shader.set_uniform("volume_world_matrix", UNIT_MATRIX);
+ m_shader.set_uniform("object_max_z", m_object_max_z);
glsafe(::glPixelStorei(GL_UNPACK_ALIGNMENT, 1));
glsafe(::glBindTexture(GL_TEXTURE_2D, m_z_texture_id));
@@ -454,10 +448,10 @@ void GLCanvas3D::LayersEditing::_render_active_object_annotations(const GLCanvas
::glBegin(GL_QUADS);
::glNormal3f(0.0f, 0.0f, 1.0f);
- ::glVertex3f(l, b, 0.0f);
- ::glVertex3f(r, b, 0.0f);
- ::glVertex3f(r, t, m_object_max_z);
- ::glVertex3f(l, t, m_object_max_z);
+ ::glTexCoord2f(0.0f, 0.0f); ::glVertex2f(l, b);
+ ::glTexCoord2f(1.0f, 0.0f); ::glVertex2f(r, b);
+ ::glTexCoord2f(1.0f, 1.0f); ::glVertex2f(r, t);
+ ::glTexCoord2f(0.0f, 1.0f); ::glVertex2f(l, t);
glsafe(::glEnd());
glsafe(::glBindTexture(GL_TEXTURE_2D, 0));
@@ -510,6 +504,7 @@ void GLCanvas3D::LayersEditing::render_volumes(const GLCanvas3D& canvas, const G
GLint z_cursor_id = ::glGetUniformLocation(shader_id, "z_cursor");
GLint z_cursor_band_width_id = ::glGetUniformLocation(shader_id, "z_cursor_band_width");
GLint world_matrix_id = ::glGetUniformLocation(shader_id, "volume_world_matrix");
+ GLint object_max_z_id = ::glGetUniformLocation(shader_id, "object_max_z");
glcheck();
if (z_to_texture_row_id != -1 && z_texture_row_to_normalized_id != -1 && z_cursor_id != -1 && z_cursor_band_width_id != -1 && world_matrix_id != -1)
@@ -536,7 +531,10 @@ void GLCanvas3D::LayersEditing::render_volumes(const GLCanvas3D& canvas, const G
// Render the object using the layer editing shader and texture.
if (! glvolume->is_active || glvolume->composite_id.object_id != this->last_object_id || glvolume->is_modifier)
continue;
- glsafe(::glUniformMatrix4fv(world_matrix_id, 1, GL_FALSE, (const GLfloat*)glvolume->world_matrix().cast<float>().data()));
+ if (world_matrix_id != -1)
+ glsafe(::glUniformMatrix4fv(world_matrix_id, 1, GL_FALSE, (const GLfloat*)glvolume->world_matrix().cast<float>().data()));
+ if (object_max_z_id != -1)
+ glsafe(::glUniform1f(object_max_z_id, GLfloat(0)));
glvolume->render();
}
// Revert back to the previous shader.
diff --git a/src/slic3r/GUI/ProgressStatusBar.hpp b/src/slic3r/GUI/ProgressStatusBar.hpp
index 225b0331e..8c6596475 100644
--- a/src/slic3r/GUI/ProgressStatusBar.hpp
+++ b/src/slic3r/GUI/ProgressStatusBar.hpp
@@ -3,6 +3,7 @@
#include <memory>
#include <functional>
+#include <string>
class wxTimer;
class wxGauge;