mirror of
https://github.com/SoftFever/OrcaSlicer.git
synced 2026-03-05 18:14:54 -07:00
* Add read support for Google's Draco (.drc) format. * Fix build on Linux * Use boost instead of fstat. * Switch to boost memory-mapped file to save RAM and potentially improve performance. * Trim trailing whitespace. * Initial Draco write support. Currently always exports with 16-bit precision and speed 0 (best compression). The back-end function does have arguments to specify them, it's just not hooked into the GUI. * Add Draco to the About dialogue. * Fix Linux compile (hopefully) * Add an option to associate DRC files on Windows. * Implement a Preferences option to set Draco position quantization bits * Update src/slic3r/GUI/Preferences.cpp Co-authored-by: Ian Bassi <ian.bassi@outlook.com> * Some slight changes to ianalexis's suggestion. * Implement a create_item_spinctrl() function for numeric inputs, and use that instead of create_item_input(). * Move "bits" to inside the spinctrl box. * Refactor following yw4z's feedback * Update src/slic3r/GUI/Preferences.cpp Co-authored-by: Ian Bassi <ian.bassi@outlook.com> * Change to 0 bits as the default setting for Draco export precision. * Change to a lossy checkbox and a bits field with a range of 8-30. * Proper SpinInput code from yw4z * Revert "Proper SpinInput code from yw4z" This reverts commit7e9c85f31a. * Revert "Change to a lossy checkbox and a bits field with a range of 8-30." This reverts commitd642c9bcc0. * Redo preferences based on SoftFever's feedback * Refactor to minimize code duplication * Fix padding * Improve Draco export quality level tooltip clarity Clarify that 0 means lossless compression (not uncompressed), document the valid lossy range (8-30), and better explain the tradeoff between file size and geometric detail. --------- Co-authored-by: SoftFever <softfeverever@gmail.com> Co-authored-by: Noisyfox <timemanager.rick@gmail.com> Co-authored-by: Ian Bassi <ian.bassi@outlook.com>
26 lines
795 B
CMake
26 lines
795 B
CMake
set(_q "")
|
|
if(${CMAKE_FIND_PACKAGE_NAME}_FIND_QUIETLY)
|
|
set(_q QUIET)
|
|
set(_quietly TRUE)
|
|
endif()
|
|
find_package(${CMAKE_FIND_PACKAGE_NAME} ${${CMAKE_FIND_PACKAGE_NAME}_FIND_VERSION} CONFIG ${_q})
|
|
|
|
if (NOT ${CMAKE_FIND_PACKAGE_NAME}_FOUND)
|
|
include(CheckIncludeFileCXX)
|
|
add_library(draco INTERFACE)
|
|
target_include_directories(draco INTERFACE include)
|
|
|
|
if (_quietly)
|
|
set(CMAKE_REQUIRED_QUIET ON)
|
|
endif()
|
|
CHECK_INCLUDE_FILE_CXX("draco/draco_features.h" HAVE_DRACO_H)
|
|
|
|
if (NOT HAVE_DRACO_H)
|
|
if (${CMAKE_FIND_PACKAGE_NAME}_FIND_REQUIRED)
|
|
message(FATAL_ERROR "Draco library not found. Please install the dependency.")
|
|
elseif(NOT _quietly)
|
|
message(WARNING "Draco library not found.")
|
|
endif()
|
|
endif ()
|
|
endif()
|
|
|