diff options
author | enricoturri1966 <enricoturri@seznam.cz> | 2021-11-30 14:13:51 +0300 |
---|---|---|
committer | enricoturri1966 <enricoturri@seznam.cz> | 2021-11-30 14:13:51 +0300 |
commit | 18cb91a982f636c5e1c844bc754b580b0b9c58c7 (patch) | |
tree | 9102940fca621af87519512c57dd829eb58570c3 /src/slic3r/GUI/GCodeViewer.hpp | |
parent | 5218570348b2c733abb9842467b06eeae5be650a (diff) | |
parent | ef059404b321fc16d2df45c9b6dff794803c71c2 (diff) |
Fixed conflicts after merge with master
Diffstat (limited to 'src/slic3r/GUI/GCodeViewer.hpp')
-rw-r--r-- | src/slic3r/GUI/GCodeViewer.hpp | 78 |
1 files changed, 1 insertions, 77 deletions
diff --git a/src/slic3r/GUI/GCodeViewer.hpp b/src/slic3r/GUI/GCodeViewer.hpp index 908aa3baf..9e33cb6a8 100644 --- a/src/slic3r/GUI/GCodeViewer.hpp +++ b/src/slic3r/GUI/GCodeViewer.hpp @@ -27,13 +27,9 @@ class GCodeViewer using MultiVertexBuffer = std::vector<VertexBuffer>; using IndexBuffer = std::vector<IBufferType>; using MultiIndexBuffer = std::vector<IndexBuffer>; -#if ENABLE_SEAMS_USING_MODELS using InstanceBuffer = std::vector<float>; using InstanceIdBuffer = std::vector<size_t>; -#endif // ENABLE_SEAMS_USING_MODELS -#if ENABLE_FIX_SEAMS_SYNCH using InstancesOffsets = std::vector<Vec3f>; -#endif // ENABLE_FIX_SEAMS_SYNCH static const std::vector<Color> Extrusion_Role_Colors; static const std::vector<Color> Options_Colors; @@ -107,17 +103,10 @@ class GCodeViewer void reset(); }; -#if ENABLE_SEAMS_USING_MODELS -#if ENABLE_SEAMS_USING_BATCHED_MODELS // buffer containing instances data used to render a toolpaths using instanced or batched models // instance record format: // instanced models: 5 floats -> position.x|position.y|position.z|width|height (which are sent to the shader as -> vec3 (offset) + vec2 (scales) in GLModel::render_instanced()) // batched models: 3 floats -> position.x|position.y|position.z -#else - // buffer containing instances data used to render a toolpaths using instanced models - // instance record format: 5 floats -> position.x|position.y|position.z|width|height - // which is sent to the shader as -> vec3 (offset) + vec2 (scales) in GLModel::render_instanced() -#endif // ENABLE_SEAMS_USING_BATCHED_MODELS struct InstanceVBuffer { // ranges used to render only subparts of the intances @@ -140,7 +129,6 @@ class GCodeViewer void reset(); }; -#if ENABLE_SEAMS_USING_BATCHED_MODELS enum class EFormat : unsigned char { InstancedModel, @@ -148,21 +136,17 @@ class GCodeViewer }; EFormat format; -#endif // ENABLE_SEAMS_USING_BATCHED_MODELS // cpu-side buffer containing all instances data InstanceBuffer buffer; // indices of the moves for all instances std::vector<size_t> s_ids; -#if ENABLE_FIX_SEAMS_SYNCH // position offsets, used to show the correct value of the tool position InstancesOffsets offsets; -#endif // ENABLE_FIX_SEAMS_SYNCH Ranges render_ranges; size_t data_size_bytes() const { return s_ids.size() * instance_size_bytes(); } -#if ENABLE_SEAMS_USING_BATCHED_MODELS size_t instance_size_floats() const { switch (format) { @@ -171,14 +155,10 @@ class GCodeViewer default: { return 0; } } } -#else - size_t instance_size_floats() const { return 5; } -#endif // ENABLE_SEAMS_USING_BATCHED_MODELS size_t instance_size_bytes() const { return instance_size_floats() * sizeof(float); } void reset(); }; -#endif // ENABLE_SEAMS_USING_MODELS // ibo buffer containing indices data (for lines/triangles) used to render a specific toolpath type struct IBuffer @@ -313,17 +293,9 @@ class GCodeViewer { Point, Line, -#if ENABLE_SEAMS_USING_MODELS Triangle, -#if ENABLE_SEAMS_USING_BATCHED_MODELS InstancedModel, BatchedModel -#else - Model -#endif // ENABLE_SEAMS_USING_BATCHED_MODELS -#else - Triangle -#endif // ENABLE_SEAMS_USING_MODELS }; ERenderPrimitiveType render_primitive_type; @@ -332,22 +304,18 @@ class GCodeViewer VBuffer vertices; std::vector<IBuffer> indices; -#if ENABLE_SEAMS_USING_MODELS struct Model { GLModel model; Color color; InstanceVBuffer instances; -#if ENABLE_SEAMS_USING_BATCHED_MODELS GLModel::InitializationData data; -#endif // ENABLE_SEAMS_USING_BATCHED_MODELS void reset(); }; // contain the buffer for model primitive types Model model; -#endif // ENABLE_SEAMS_USING_MODELS std::string shader; std::vector<Path> paths; @@ -396,7 +364,6 @@ class GCodeViewer } size_t max_indices_per_segment_size_bytes() const { return max_indices_per_segment() * sizeof(IBufferType); } -#if ENABLE_SEAMS_USING_MODELS bool has_data() const { switch (render_primitive_type) { @@ -405,23 +372,14 @@ class GCodeViewer case ERenderPrimitiveType::Triangle: { return !vertices.vbos.empty() && vertices.vbos.front() != 0 && !indices.empty() && indices.front().ibo != 0; } -#if ENABLE_SEAMS_USING_BATCHED_MODELS case ERenderPrimitiveType::InstancedModel: { return model.model.is_initialized() && !model.instances.buffer.empty(); } case ERenderPrimitiveType::BatchedModel: { return model.data.vertices_count() > 0 && model.data.indices_count() && !vertices.vbos.empty() && vertices.vbos.front() != 0 && !indices.empty() && indices.front().ibo != 0; } -#else - case ERenderPrimitiveType::Model: { return model.model.is_initialized() && !model.instances.buffer.empty(); } -#endif // ENABLE_SEAMS_USING_BATCHED_MODELS default: { return false; } } } -#else - bool has_data() const { - return !vertices.vbos.empty() && vertices.vbos.front() != 0 && !indices.empty() && indices.front().ibo != 0; - } -#endif // ENABLE_SEAMS_USING_MODELS }; // helper to render shells @@ -590,36 +548,24 @@ class GCodeViewer int64_t gl_multi_lines_calls_count{ 0 }; int64_t gl_multi_triangles_calls_count{ 0 }; int64_t gl_triangles_calls_count{ 0 }; -#if ENABLE_SEAMS_USING_MODELS int64_t gl_instanced_models_calls_count{ 0 }; -#if ENABLE_SEAMS_USING_BATCHED_MODELS int64_t gl_batched_models_calls_count{ 0 }; -#endif // ENABLE_SEAMS_USING_BATCHED_MODELS -#endif // ENABLE_SEAMS_USING_MODELS // memory int64_t results_size{ 0 }; int64_t total_vertices_gpu_size{ 0 }; int64_t total_indices_gpu_size{ 0 }; -#if ENABLE_SEAMS_USING_MODELS int64_t total_instances_gpu_size{ 0 }; -#endif // ENABLE_SEAMS_USING_MODELS int64_t max_vbuffer_gpu_size{ 0 }; int64_t max_ibuffer_gpu_size{ 0 }; int64_t paths_size{ 0 }; int64_t render_paths_size{ 0 }; -#if ENABLE_SEAMS_USING_MODELS int64_t models_instances_size{ 0 }; -#endif // ENABLE_SEAMS_USING_MODELS // other int64_t travel_segments_count{ 0 }; int64_t wipe_segments_count{ 0 }; int64_t extrude_segments_count{ 0 }; -#if ENABLE_SEAMS_USING_MODELS int64_t instances_count{ 0 }; -#if ENABLE_SEAMS_USING_BATCHED_MODELS int64_t batched_count{ 0 }; -#endif // ENABLE_SEAMS_USING_BATCHED_MODELS -#endif // ENABLE_SEAMS_USING_MODELS int64_t vbuffers_count{ 0 }; int64_t ibuffers_count{ 0 }; @@ -645,40 +591,28 @@ class GCodeViewer gl_multi_lines_calls_count = 0; gl_multi_triangles_calls_count = 0; gl_triangles_calls_count = 0; -#if ENABLE_SEAMS_USING_MODELS gl_instanced_models_calls_count = 0; -#if ENABLE_SEAMS_USING_BATCHED_MODELS gl_batched_models_calls_count = 0; -#endif // ENABLE_SEAMS_USING_BATCHED_MODELS -#endif // ENABLE_SEAMS_USING_MODELS } void reset_sizes() { results_size = 0; total_vertices_gpu_size = 0; total_indices_gpu_size = 0; -#if ENABLE_SEAMS_USING_MODELS total_instances_gpu_size = 0; -#endif // ENABLE_SEAMS_USING_MODELS max_vbuffer_gpu_size = 0; max_ibuffer_gpu_size = 0; paths_size = 0; render_paths_size = 0; -#if ENABLE_SEAMS_USING_MODELS models_instances_size = 0; -#endif // ENABLE_SEAMS_USING_MODELS } void reset_others() { travel_segments_count = 0; wipe_segments_count = 0; - extrude_segments_count = 0; -#if ENABLE_SEAMS_USING_MODELS + extrude_segments_count = 0; instances_count = 0; -#if ENABLE_SEAMS_USING_BATCHED_MODELS batched_count = 0; -#endif // ENABLE_SEAMS_USING_BATCHED_MODELS -#endif // ENABLE_SEAMS_USING_MODELS vbuffers_count = 0; ibuffers_count = 0; } @@ -693,12 +627,10 @@ public: GLModel m_model; Vec3f m_world_position; Transform3f m_world_transform; -#if ENABLE_FIX_SEAMS_SYNCH // for seams, the position of the marker is on the last endpoint of the toolpath containing it // the offset is used to show the correct value of tool position in the "ToolPosition" window // see implementation of render() method Vec3f m_world_offset; -#endif // ENABLE_FIX_SEAMS_SYNCH float m_z_offset{ 0.5f }; bool m_visible{ true }; @@ -708,9 +640,7 @@ public: const BoundingBoxf3& get_bounding_box() const { return m_model.get_bounding_box(); } void set_world_position(const Vec3f& position); -#if ENABLE_FIX_SEAMS_SYNCH void set_world_offset(const Vec3f& offset) { m_world_offset = offset; } -#endif // ENABLE_FIX_SEAMS_SYNCH bool is_visible() const { return m_visible; } void set_visible(bool visible) { m_visible = visible; } @@ -764,13 +694,9 @@ public: Endpoints endpoints; Endpoints current; Endpoints last_current; -#if ENABLE_SEAMS_USING_MODELS Endpoints global; -#endif // ENABLE_SEAMS_USING_MODELS Vec3f current_position{ Vec3f::Zero() }; -#if ENABLE_FIX_SEAMS_SYNCH Vec3f current_offset{ Vec3f::Zero() }; -#endif // ENABLE_FIX_SEAMS_SYNCH Marker marker; GCodeWindow gcode_window; std::vector<unsigned int> gcode_ids; @@ -847,9 +773,7 @@ public: GCodeViewer(); ~GCodeViewer() { reset(); } -#if ENABLE_SEAMS_USING_MODELS void init(); -#endif // ENABLE_SEAMS_USING_MODELS // extract rendering data from the given parameters void load(const GCodeProcessorResult& gcode_result, const Print& print, bool initialized); |