Srat Refactoring To Santoku

This commit is contained in:
Dark98
2026-01-30 04:28:58 +00:00
parent 5f2f0829dd
commit d692d3e061
140 changed files with 1117 additions and 1117 deletions
@@ -535,7 +535,7 @@ void GCodeProcessorResult::reset() {
}
const std::vector<std::pair<GCodeProcessor::EProducer, std::string>> GCodeProcessor::Producers = {
{ EProducer::SliceBeam, "generated by Slice Beam" },
{ EProducer::Santoku, "generated by Santoku" },
{ EProducer::PrusaSlicer, "generated by PrusaSlicer" },
{ EProducer::Slic3rPE, "generated by Slic3r Prusa Edition" },
{ EProducer::Slic3r, "generated by Slic3r" },
@@ -619,7 +619,7 @@ void GCodeProcessor::apply_config(const PrintConfig& config)
m_binarizer.set_enabled(config.binary_gcode);
m_result.is_binary_file = config.binary_gcode;
m_producer = EProducer::SliceBeam;
m_producer = EProducer::Santoku;
m_flavor = config.gcode_flavor;
m_result.backtrace_enabled = is_XL_printer(config);
@@ -1124,7 +1124,7 @@ void GCodeProcessor::process_ascii_file(const std::string& filename, GCodeReader
// if the gcode was produced by PrusaSlicer,
// extract the config from it
if (m_producer == EProducer::SliceBeam || m_producer == EProducer::PrusaSlicer || m_producer == EProducer::Slic3rPE || m_producer == EProducer::Slic3r) {
if (m_producer == EProducer::Santoku || m_producer == EProducer::PrusaSlicer || m_producer == EProducer::Slic3rPE || m_producer == EProducer::Slic3r) {
DynamicPrintConfig config;
config.apply(FullPrintConfig::defaults());
// Silently substitute unknown values by new ones for loading configurations from PrusaSlicer's own G-code.
@@ -1231,7 +1231,7 @@ void GCodeProcessor::process_binary_file(const std::string& filename, GCodeReade
auto producer_it = std::find_if(file_metadata_block.raw_data.begin(), file_metadata_block.raw_data.end(),
[](const std::pair<std::string, std::string>& item) { return item.first == "Producer"; });
if (producer_it != file_metadata_block.raw_data.end() && boost::starts_with(producer_it->second, std::string(SLIC3R_APP_NAME)))
m_producer = EProducer::SliceBeam;
m_producer = EProducer::Santoku;
else
m_producer = EProducer::Unknown;
res = read_next_block_header(*file.f, file_header, block_header, cs_buffer.data(), cs_buffer.size());
@@ -1892,7 +1892,7 @@ void GCodeProcessor::process_tags(const std::string_view comment, bool producers
return;
}
if (!producers_enabled || m_producer == EProducer::PrusaSlicer || m_producer == EProducer::SliceBeam) {
if (!producers_enabled || m_producer == EProducer::PrusaSlicer || m_producer == EProducer::Santoku) {
// height tag
if (boost::starts_with(comment, reserved_tag(ETags::Height))) {
if (!parse_number(comment.substr(reserved_tag(ETags::Height).size()), m_forced_height))
@@ -2011,7 +2011,7 @@ bool GCodeProcessor::process_producers_tags(const std::string_view comment)
case EProducer::Slic3rPE:
case EProducer::Slic3r:
case EProducer::SuperSlicer:
case EProducer::SliceBeam:
case EProducer::Santoku:
case EProducer::PrusaSlicer: { return process_prusaslicer_tags(comment); }
case EProducer::Cura: { return process_cura_tags(comment); }
case EProducer::Simplify3D: { return process_simplify3d_tags(comment); }
@@ -3669,8 +3669,8 @@ void GCodeProcessor::process_T(const std::string_view command)
else {
unsigned char id = static_cast<unsigned char>(eid);
if (m_extruder_id != id) {
if (((m_producer == EProducer::SliceBeam || m_producer == EProducer::PrusaSlicer || m_producer == EProducer::Slic3rPE || m_producer == EProducer::Slic3r) && id >= m_result.extruders_count) ||
((m_producer != EProducer::SliceBeam && m_producer != EProducer::PrusaSlicer && m_producer != EProducer::Slic3rPE && m_producer != EProducer::Slic3r) && id >= m_result.extruder_colors.size()))
if (((m_producer == EProducer::Santoku || m_producer == EProducer::PrusaSlicer || m_producer == EProducer::Slic3rPE || m_producer == EProducer::Slic3r) && id >= m_result.extruders_count) ||
((m_producer != EProducer::Santoku && m_producer != EProducer::PrusaSlicer && m_producer != EProducer::Slic3rPE && m_producer != EProducer::Slic3r) && id >= m_result.extruder_colors.size()))
BOOST_LOG_TRIVIAL(error) << "GCodeProcessor encountered an invalid toolchange, maybe from a custom gcode (" << command << ").";
else {
unsigned char old_extruder_id = m_extruder_id;
@@ -544,7 +544,7 @@ namespace Slic3r {
enum class EProducer
{
Unknown,
SliceBeam,
Santoku,
PrusaSlicer,
Slic3rPE,
Slic3r,
+2 -2
View File
@@ -1,7 +1,7 @@
#ifndef __SLIC3R_VERSION_H
#define __SLIC3R_VERSION_H
#define SLIC3R_APP_NAME "Slice Beam"
#define SLIC3R_APP_KEY "SliceBeam"
#define SLIC3R_APP_NAME "Santoku"
#define SLIC3R_APP_KEY "Santoku"
#endif /* __SLIC3R_VERSION_H */
@@ -5,8 +5,8 @@
///|/
///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
///|/
#ifndef SLICEBEAM_GUI_GLSHADER_HPP
#define SLICEBEAM_GUI_GLSHADER_HPP
#ifndef SANTOKU_GUI_GLSHADER_HPP
#define SANTOKU_GUI_GLSHADER_HPP
#include <array>
#include <string>
@@ -107,4 +107,4 @@ public:
} // namespace Slic3r
#endif /* SLICEBEAM_GUI_GLSHADER_HPP */
#endif /* SANTOKU_GUI_GLSHADER_HPP */
@@ -103,33 +103,33 @@ extern "C" {
staticVM = vm;
sliceListenerClass = env->FindClass("ru/ytkab0bp/slicebeam/slic3r/SliceListener");
sliceListenerClass = env->FindClass("com/dark98/santoku/slic3r/SliceListener");
sliceListenerOnProgress = env->GetMethodID(sliceListenerClass, "onProgress", "(ILjava/lang/String;)V");
shadersManagerClass = static_cast<jclass>(env->NewGlobalRef(env->FindClass("ru/ytkab0bp/slicebeam/slic3r/GLShadersManager")));
shadersManagerClass = static_cast<jclass>(env->NewGlobalRef(env->FindClass("com/dark98/santoku/slic3r/GLShadersManager")));
shadersManagerGetCurrent = env->GetStaticMethodID(shadersManagerClass, "getCurrentShaderPointer", "()J");
return JNI_VERSION_1_6;
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_set_1svg_1path_1prefix(JNIEnv *env, jclass, jstring path) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_set_1svg_1path_1prefix(JNIEnv *env, jclass, jstring path) {
const char* chars = env->GetStringUTFChars(path, JNI_FALSE);
Slic3r::svg_path_prefix = std::string(chars);
env->ReleaseStringUTFChars(path, chars);
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_get_1print_1config_1def(JNIEnv *env, jclass, jobject def) {
jclass printConfigDefClass = env->FindClass("ru/ytkab0bp/slicebeam/slic3r/PrintConfigDef");
jmethodID printConfigAddOption = env->GetMethodID(printConfigDefClass, "addOption", "(Ljava/lang/String;Lru/ytkab0bp/slicebeam/slic3r/ConfigOptionDef;)V");
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_get_1print_1config_1def(JNIEnv *env, jclass, jobject def) {
jclass printConfigDefClass = env->FindClass("com/dark98/santoku/slic3r/PrintConfigDef");
jmethodID printConfigAddOption = env->GetMethodID(printConfigDefClass, "addOption", "(Ljava/lang/String;Lcom/dark98/santoku/slic3r/ConfigOptionDef;)V");
jmethodID printConfigResolveEnum = env->GetStaticMethodID(printConfigDefClass, "resolveEnum", "(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;");
jclass configOptionDefClass = env->FindClass("ru/ytkab0bp/slicebeam/slic3r/ConfigOptionDef");
jclass configOptionDefClass = env->FindClass("com/dark98/santoku/slic3r/ConfigOptionDef");
jmethodID configOptionDefCtr = env->GetMethodID(configOptionDefClass, "<init>", "()V");
jfieldID keyField = env->GetFieldID(configOptionDefClass, "key", "Ljava/lang/String;");
jfieldID typeField = env->GetFieldID(configOptionDefClass, "type", "Lru/ytkab0bp/slicebeam/slic3r/ConfigOptionDef$ConfigOptionType;");
jfieldID guiTypeField = env->GetFieldID(configOptionDefClass, "guiType", "Lru/ytkab0bp/slicebeam/slic3r/ConfigOptionDef$GUIType;");
jfieldID typeField = env->GetFieldID(configOptionDefClass, "type", "Lcom/dark98/santoku/slic3r/ConfigOptionDef$ConfigOptionType;");
jfieldID guiTypeField = env->GetFieldID(configOptionDefClass, "guiType", "Lcom/dark98/santoku/slic3r/ConfigOptionDef$GUIType;");
jfieldID labelField = env->GetFieldID(configOptionDefClass, "label", "Ljava/lang/String;");
jfieldID fullLabelField = env->GetFieldID(configOptionDefClass, "fullLabel", "Ljava/lang/String;");
jfieldID printerTechField = env->GetFieldID(configOptionDefClass, "printerTechnology", "Lru/ytkab0bp/slicebeam/slic3r/ConfigOptionDef$PrinterTechnology;");
jfieldID printerTechField = env->GetFieldID(configOptionDefClass, "printerTechnology", "Lcom/dark98/santoku/slic3r/ConfigOptionDef$PrinterTechnology;");
jfieldID categoryField = env->GetFieldID(configOptionDefClass, "category", "Ljava/lang/String;");
jfieldID tooltipField = env->GetFieldID(configOptionDefClass, "tooltip", "Ljava/lang/String;");
jfieldID sidetextField = env->GetFieldID(configOptionDefClass, "sidetext", "Ljava/lang/String;");
@@ -140,7 +140,7 @@ extern "C" {
jfieldID widthField = env->GetFieldID(configOptionDefClass, "width", "I");
jfieldID minField = env->GetFieldID(configOptionDefClass, "min", "F");
jfieldID maxField = env->GetFieldID(configOptionDefClass, "max", "F");
jfieldID modeField = env->GetFieldID(configOptionDefClass, "mode", "Lru/ytkab0bp/slicebeam/slic3r/ConfigOptionDef$ConfigOptionMode;");
jfieldID modeField = env->GetFieldID(configOptionDefClass, "mode", "Lcom/dark98/santoku/slic3r/ConfigOptionDef$ConfigOptionMode;");
jfieldID defaultValueField = env->GetFieldID(configOptionDefClass, "defaultValue", "Ljava/lang/String;");
jfieldID enumLabelsField = env->GetFieldID(configOptionDefClass, "enumLabels", "[Ljava/lang/String;");
jfieldID enumValuesField = env->GetFieldID(configOptionDefClass, "enumValues", "[Ljava/lang/String;");
@@ -291,15 +291,15 @@ extern "C" {
}
jobject keyValue = env->NewStringUTF(key.c_str());
jobject typeValue = resolveEnum((char*) "ru/ytkab0bp/slicebeam/slic3r/ConfigOptionDef$ConfigOptionType", (char*) typeStr);
jobject guiTypeValue = resolveEnum((char*) "ru/ytkab0bp/slicebeam/slic3r/ConfigOptionDef$GUIType", (char*) guiTypeStr);
jobject typeValue = resolveEnum((char*) "com/dark98/santoku/slic3r/ConfigOptionDef$ConfigOptionType", (char*) typeStr);
jobject guiTypeValue = resolveEnum((char*) "com/dark98/santoku/slic3r/ConfigOptionDef$GUIType", (char*) guiTypeStr);
jobject labelValue = env->NewStringUTF(nCfgDef->label.c_str());
jobject fullLabelValue = env->NewStringUTF(nCfgDef->full_label.c_str());
jobject printerTechValue = resolveEnum((char*) "ru/ytkab0bp/slicebeam/slic3r/ConfigOptionDef$PrinterTechnology", (char*) techStr);
jobject printerTechValue = resolveEnum((char*) "com/dark98/santoku/slic3r/ConfigOptionDef$PrinterTechnology", (char*) techStr);
jobject categoryValue = env->NewStringUTF(nCfgDef->category.c_str());
jobject tooltipValue = env->NewStringUTF(nCfgDef->tooltip.c_str());
jobject sidetextValue = env->NewStringUTF(nCfgDef->sidetext.c_str());
jobject modeValue = resolveEnum((char*) "ru/ytkab0bp/slicebeam/slic3r/ConfigOptionDef$ConfigOptionMode", (char*) modeStr);
jobject modeValue = resolveEnum((char*) "com/dark98/santoku/slic3r/ConfigOptionDef$ConfigOptionMode", (char*) modeStr);
env->SetObjectField(cfgDef, keyField, keyValue);
env->SetObjectField(cfgDef, typeField, typeValue);
@@ -365,7 +365,7 @@ extern "C" {
}
}
JNIEXPORT jlong JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_model_1read_1from_1file(JNIEnv *env, jclass, jstring path, jstring base_name) {
JNIEXPORT jlong JNICALL Java_com_dark98_santoku_slic3r_Native_model_1read_1from_1file(JNIEnv *env, jclass, jstring path, jstring base_name) {
const char* chars = env->GetStringUTFChars(path, JNI_FALSE);
const char* baseChars = env->GetStringUTFChars(base_name, JNI_FALSE);
@@ -375,7 +375,7 @@ extern "C" {
ref->model = Model::read_from_file(std::string(chars), nullptr, nullptr, Model::LoadAttribute::AddDefaultInstances);
ref->base_name = std::string(baseChars);
} catch (const Slic3r::RuntimeError& e) {
env->ThrowNew(env->FindClass("ru/ytkab0bp/slicebeam/slic3r/Slic3rRuntimeError"), e.what());
env->ThrowNew(env->FindClass("com/dark98/santoku/slic3r/Slic3rRuntimeError"), e.what());
return 0;
} catch (const std::exception& e) {
env->ThrowNew(env->FindClass("java/lang/RuntimeException"), e.what());
@@ -388,12 +388,12 @@ extern "C" {
return (jlong) (intptr_t) ref;
}
JNIEXPORT jlong JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_model_1create(JNIEnv *env, jclass) {
JNIEXPORT jlong JNICALL Java_com_dark98_santoku_slic3r_Native_model_1create(JNIEnv *env, jclass) {
ModelRef* ref = new ModelRef();
return (jlong) (intptr_t) ref;
}
JNIEXPORT jlong JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_models_1merge(JNIEnv* env, jclass, jlongArray ptrsArr) {
JNIEXPORT jlong JNICALL Java_com_dark98_santoku_slic3r_Native_models_1merge(JNIEnv* env, jclass, jlongArray ptrsArr) {
ModelRef* ref = new ModelRef();
jlong* ptrs = env->GetLongArrayElements(ptrsArr, JNI_FALSE);
@@ -407,23 +407,23 @@ extern "C" {
return (jlong) (intptr_t) ref;
}
JNIEXPORT jint JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_model_1get_1objects_1count(JNIEnv* env, jclass, jlong ptr) {
JNIEXPORT jint JNICALL Java_com_dark98_santoku_slic3r_Native_model_1get_1objects_1count(JNIEnv* env, jclass, jlong ptr) {
ModelRef* model = (ModelRef *) (intptr_t) ptr;
return model->model.objects.size();
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_model_1add_1object_1from_1another(JNIEnv* env, jclass, jlong ptr, jlong fromPtr, jint i) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_model_1add_1object_1from_1another(JNIEnv* env, jclass, jlong ptr, jlong fromPtr, jint i) {
ModelRef* model = (ModelRef *) (intptr_t) ptr;
ModelRef* from = (ModelRef *) (intptr_t) fromPtr;
model->model.add_object(*from->model.objects[i]);
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_model_1delete_1object(JNIEnv* env, jclass, jlong ptr, jint i) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_model_1delete_1object(JNIEnv* env, jclass, jlong ptr, jint i) {
ModelRef* model = (ModelRef *) (intptr_t) ptr;
model->model.delete_object(i);
}
JNIEXPORT jdoubleArray JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_model_1get_1rotation(JNIEnv* env, jclass, jlong ptr, jint object_index) {
JNIEXPORT jdoubleArray JNICALL Java_com_dark98_santoku_slic3r_Native_model_1get_1rotation(JNIEnv* env, jclass, jlong ptr, jint object_index) {
ModelRef* model = (ModelRef *) (intptr_t) ptr;
ModelObject* obj = model->model.objects[object_index];
jdoubleArray arr = env->NewDoubleArray(3);
@@ -431,7 +431,7 @@ extern "C" {
return arr;
}
JNIEXPORT jdoubleArray JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_model_1get_1mirror(JNIEnv* env, jclass, jlong ptr, jint object_index) {
JNIEXPORT jdoubleArray JNICALL Java_com_dark98_santoku_slic3r_Native_model_1get_1mirror(JNIEnv* env, jclass, jlong ptr, jint object_index) {
ModelRef* model = (ModelRef *) (intptr_t) ptr;
ModelObject* obj = model->model.objects[object_index];
jdoubleArray arr = env->NewDoubleArray(3);
@@ -439,7 +439,7 @@ extern "C" {
return arr;
}
JNIEXPORT jdoubleArray JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_model_1get_1scale(JNIEnv* env, jclass, jlong ptr, jint object_index) {
JNIEXPORT jdoubleArray JNICALL Java_com_dark98_santoku_slic3r_Native_model_1get_1scale(JNIEnv* env, jclass, jlong ptr, jint object_index) {
ModelRef* model = (ModelRef *) (intptr_t) ptr;
ModelObject* obj = model->model.objects[object_index];
jdoubleArray arr = env->NewDoubleArray(3);
@@ -447,7 +447,7 @@ extern "C" {
return arr;
}
JNIEXPORT jdoubleArray JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_model_1get_1translation(JNIEnv* env, jclass, jlong ptr, jint object_index) {
JNIEXPORT jdoubleArray JNICALL Java_com_dark98_santoku_slic3r_Native_model_1get_1translation(JNIEnv* env, jclass, jlong ptr, jint object_index) {
ModelRef* model = (ModelRef *) (intptr_t) ptr;
ModelObject* obj = model->model.objects[object_index];
Vec3d offset = obj->bounding_box_exact().center();
@@ -456,17 +456,17 @@ extern "C" {
return arr;
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_model_1translate(JNIEnv* env, jclass, jlong ptr, jint i, jdouble x, jdouble y, jdouble z) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_model_1translate(JNIEnv* env, jclass, jlong ptr, jint i, jdouble x, jdouble y, jdouble z) {
ModelRef* model = (ModelRef *) (intptr_t) ptr;
model->model.objects[i]->translate(x, y, z);
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_model_1ensure_1on_1bed(JNIEnv* env, jclass, jlong ptr, jint i) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_model_1ensure_1on_1bed(JNIEnv* env, jclass, jlong ptr, jint i) {
ModelRef* model = (ModelRef *) (intptr_t) ptr;
model->model.objects[i]->ensure_on_bed(false);
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_model_1scale(JNIEnv* env, jclass, jlong ptr, jint i, jdouble x, jdouble y, jdouble z) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_model_1scale(JNIEnv* env, jclass, jlong ptr, jint i, jdouble x, jdouble y, jdouble z) {
ModelRef* model = (ModelRef *) (intptr_t) ptr;
Vec3d factor(x, y, z);
ModelVolumePtrs ptrs = model->model.objects[i]->volumes;
@@ -476,12 +476,12 @@ extern "C" {
model->model.objects[i]->invalidate_bounding_box();
}
JNIEXPORT jboolean JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_model_1is_1left_1handed(JNIEnv* env, jclass, jlong ptr, jint i) {
JNIEXPORT jboolean JNICALL Java_com_dark98_santoku_slic3r_Native_model_1is_1left_1handed(JNIEnv* env, jclass, jlong ptr, jint i) {
ModelRef* model = (ModelRef *) (intptr_t) ptr;
return model->model.objects[i]->volumes[0]->is_left_handed();
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_model_1rotate(JNIEnv* env, jclass, jlong ptr, jint i, jdouble x, jdouble y, jdouble z) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_model_1rotate(JNIEnv* env, jclass, jlong ptr, jint i, jdouble x, jdouble y, jdouble z) {
ModelRef* model = (ModelRef *) (intptr_t) ptr;
Vec3d vec(x, y, z);
ModelVolumePtrs ptrs = model->model.objects[i]->volumes;
@@ -505,7 +505,7 @@ extern "C" {
model->model.objects[i]->invalidate_bounding_box();
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_model_1flatten_1rotate(JNIEnv* env, jclass, jlong ptr, jint i, jlong surface_ptr) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_model_1flatten_1rotate(JNIEnv* env, jclass, jlong ptr, jint i, jlong surface_ptr) {
ModelRef* model = (ModelRef *) (intptr_t) ptr;
GLModelRef* surface = (GLModelRef*) (intptr_t) surface_ptr;
@@ -521,12 +521,12 @@ extern "C" {
model->model.objects[i]->invalidate_bounding_box();
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_model_1translate_1global(JNIEnv* env, jclass, jlong ptr, jdouble x, jdouble y, jdouble z) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_model_1translate_1global(JNIEnv* env, jclass, jlong ptr, jdouble x, jdouble y, jdouble z) {
ModelRef* model = (ModelRef *) (intptr_t) ptr;
model->model.translate(x, y, z);
}
JNIEXPORT jdoubleArray JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_model_1get_1bounding_1box_1approx(JNIEnv* env, jclass, jlong ptr, jint i) {
JNIEXPORT jdoubleArray JNICALL Java_com_dark98_santoku_slic3r_Native_model_1get_1bounding_1box_1approx(JNIEnv* env, jclass, jlong ptr, jint i) {
ModelRef* ref = (ModelRef*) (intptr_t) ptr;
jdoubleArray arr = env->NewDoubleArray(6);
jdouble* elements = new jdouble[6];
@@ -540,7 +540,7 @@ extern "C" {
return arr;
}
JNIEXPORT jdoubleArray JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_model_1get_1bounding_1box_1exact(JNIEnv* env, jclass, jlong ptr, jint i) {
JNIEXPORT jdoubleArray JNICALL Java_com_dark98_santoku_slic3r_Native_model_1get_1bounding_1box_1exact(JNIEnv* env, jclass, jlong ptr, jint i) {
ModelRef* ref = (ModelRef*) (intptr_t) ptr;
jdoubleArray arr = env->NewDoubleArray(6);
jdouble* elements = new jdouble[6];
@@ -554,7 +554,7 @@ extern "C" {
return arr;
}
JNIEXPORT jdoubleArray JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_model_1get_1bounding_1box_1approx_1global(JNIEnv* env, jclass, jlong ptr) {
JNIEXPORT jdoubleArray JNICALL Java_com_dark98_santoku_slic3r_Native_model_1get_1bounding_1box_1approx_1global(JNIEnv* env, jclass, jlong ptr) {
ModelRef* ref = (ModelRef*) (intptr_t) ptr;
jdoubleArray arr = env->NewDoubleArray(6);
jdouble* elements = new jdouble[6];
@@ -568,7 +568,7 @@ extern "C" {
return arr;
}
JNIEXPORT jdoubleArray JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_model_1get_1bounding_1box_1exact_1global(JNIEnv* env, jclass, jlong ptr) {
JNIEXPORT jdoubleArray JNICALL Java_com_dark98_santoku_slic3r_Native_model_1get_1bounding_1box_1exact_1global(JNIEnv* env, jclass, jlong ptr) {
ModelRef* ref = (ModelRef*) (intptr_t) ptr;
jdoubleArray arr = env->NewDoubleArray(6);
jdouble* elements = new jdouble[6];
@@ -582,7 +582,7 @@ extern "C" {
return arr;
}
JNIEXPORT jlongArray JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_model_1create_1flatten_1planes(JNIEnv* env, jclass, jlong ptr, jint i) {
JNIEXPORT jlongArray JNICALL Java_com_dark98_santoku_slic3r_Native_model_1create_1flatten_1planes(JNIEnv* env, jclass, jlong ptr, jint i) {
ModelRef* ref = (ModelRef*) (intptr_t) ptr;
const ModelObject* mo = ref->model.objects[i];
TriangleMesh ch;
@@ -813,31 +813,31 @@ extern "C" {
return arr;
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_model_1auto_1orient(JNIEnv* env, jclass, jlong ptr, jint i) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_model_1auto_1orient(JNIEnv* env, jclass, jlong ptr, jint i) {
ModelRef* model = (ModelRef*) (intptr_t) ptr;
ModelObject* obj = model->model.objects[i];
orientation::orient(obj);
}
JNIEXPORT jboolean JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_model_1is_1big_1object(JNIEnv* env, jclass, jlong ptr, jint i) {
JNIEXPORT jboolean JNICALL Java_com_dark98_santoku_slic3r_Native_model_1is_1big_1object(JNIEnv* env, jclass, jlong ptr, jint i) {
ModelRef* model = (ModelRef*) (intptr_t) ptr;
ModelObject* obj = model->model.objects[i];
return obj->volumes.size() == 1 && obj->volumes.front()->mesh().its.indices.size() >= 500000;
}
JNIEXPORT jint JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_model_1get_1extruder(JNIEnv* env, jclass, jlong ptr, jint i) {
JNIEXPORT jint JNICALL Java_com_dark98_santoku_slic3r_Native_model_1get_1extruder(JNIEnv* env, jclass, jlong ptr, jint i) {
ModelRef* model = (ModelRef*) (intptr_t) ptr;
ModelObject* obj = model->model.objects[i];
return obj->config.has("extruder") ? obj->config.opt_int("extruder") : -1;
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_model_1set_1extruder(JNIEnv* env, jclass, jlong ptr, jint i, jint extruder) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_model_1set_1extruder(JNIEnv* env, jclass, jlong ptr, jint i, jint extruder) {
ModelRef* model = (ModelRef*) (intptr_t) ptr;
ModelObject* obj = model->model.objects[i];
obj->config.set("extruder", extruder);
}
JNIEXPORT jlong JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_model_1slice(JNIEnv* env, jclass, jlong ptr, jstring configPath, jstring path, jobject listener) {
JNIEXPORT jlong JNICALL Java_com_dark98_santoku_slic3r_Native_model_1slice(JNIEnv* env, jclass, jlong ptr, jstring configPath, jstring path, jobject listener) {
try {
ModelRef* model = (ModelRef*) (intptr_t) ptr;
@@ -854,14 +854,14 @@ extern "C" {
std::string err = config.validate();
if (!err.empty()) {
env->ThrowNew(env->FindClass("ru/ytkab0bp/slicebeam/slic3r/Slic3rRuntimeError"), err.c_str());
env->ThrowNew(env->FindClass("com/dark98/santoku/slic3r/Slic3rRuntimeError"), err.c_str());
return 0;
}
print.apply(model->model, config);
err = print.validate();
if (!err.empty()) {
env->ThrowNew(env->FindClass("ru/ytkab0bp/slicebeam/slic3r/Slic3rRuntimeError"), err.c_str());
env->ThrowNew(env->FindClass("com/dark98/santoku/slic3r/Slic3rRuntimeError"), err.c_str());
return 0;
}
@@ -897,12 +897,12 @@ extern "C" {
return (jlong) (intptr_t) resultRef;
} catch (const std::exception& e) {
env->ThrowNew(env->FindClass("ru/ytkab0bp/slicebeam/slic3r/Slic3rRuntimeError"), e.what());
env->ThrowNew(env->FindClass("com/dark98/santoku/slic3r/Slic3rRuntimeError"), e.what());
return 0;
}
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_model_1export_13mf(JNIEnv* env, jclass, jlong ptr, jstring configPath, jstring path) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_model_1export_13mf(JNIEnv* env, jclass, jlong ptr, jstring configPath, jstring path) {
auto model = reinterpret_cast<ModelRef*>(ptr);
try {
@@ -916,16 +916,16 @@ extern "C" {
Slic3r::store_3mf(pathChars, &model->model, &config, false, nullptr, false);
env->ReleaseStringUTFChars(path, pathChars);
} catch (const std::exception& e) {
env->ThrowNew(env->FindClass("ru/ytkab0bp/slicebeam/slic3r/Slic3rRuntimeError"), e.what());
env->ThrowNew(env->FindClass("com/dark98/santoku/slic3r/Slic3rRuntimeError"), e.what());
}
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_model_1release(JNIEnv* env, jclass, jlong ptr) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_model_1release(JNIEnv* env, jclass, jlong ptr) {
ModelRef* model = (ModelRef*) (intptr_t) ptr;
delete model;
}
JNIEXPORT jlong JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_gcoderesult_1load_1file(JNIEnv* env, jclass, jstring path, jstring name) {
JNIEXPORT jlong JNICALL Java_com_dark98_santoku_slic3r_Native_gcoderesult_1load_1file(JNIEnv* env, jclass, jstring path, jstring name) {
GCodeResultRef* ref = new GCodeResultRef();
GCodeProcessor processor;
@@ -949,7 +949,7 @@ extern "C" {
}
}
JNIEXPORT jstring JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_gcoderesult_1get_1recommended_1name(JNIEnv* env, jclass, jlong ptr) {
JNIEXPORT jstring JNICALL Java_com_dark98_santoku_slic3r_Native_gcoderesult_1get_1recommended_1name(JNIEnv* env, jclass, jlong ptr) {
GCodeResultRef* ref = (GCodeResultRef*) (intptr_t) ptr;
return env->NewStringUTF(ref->name.c_str());
}
@@ -1007,26 +1007,26 @@ extern "C" {
return gRole;
}
JNIEXPORT jdouble JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_gcoderesult_1get_1used_1filament_1mm(JNIEnv* env, jclass, jlong ptr, jint role) {
JNIEXPORT jdouble JNICALL Java_com_dark98_santoku_slic3r_Native_gcoderesult_1get_1used_1filament_1mm(JNIEnv* env, jclass, jlong ptr, jint role) {
GCodeResultRef* ref = (GCodeResultRef*) (intptr_t) ptr;
std::pair<double, double> info = ref->result.print_statistics.used_filaments_per_role.find(mapGCodeRole(role))->second;
return info.first * 1000.0 / 25.4;
}
JNIEXPORT jdouble JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_gcoderesult_1get_1used_1filament_1g(JNIEnv* env, jclass, jlong ptr, jint role) {
JNIEXPORT jdouble JNICALL Java_com_dark98_santoku_slic3r_Native_gcoderesult_1get_1used_1filament_1g(JNIEnv* env, jclass, jlong ptr, jint role) {
GCodeResultRef* ref = (GCodeResultRef*) (intptr_t) ptr;
std::pair<double, double> info = ref->result.print_statistics.used_filaments_per_role.find(mapGCodeRole(role))->second;
return info.second;
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_gcoderesult_1release(JNIEnv* env, jclass, jlong ptr) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_gcoderesult_1release(JNIEnv* env, jclass, jlong ptr) {
GCodeResultRef* ref = (GCodeResultRef*) (intptr_t) ptr;
delete ref;
}
JNIEXPORT jlong JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_shader_1init_1from_1texts(JNIEnv* env, jclass, jstring name, jstring fsText, jstring vsText) {
JNIEXPORT jlong JNICALL Java_com_dark98_santoku_slic3r_Native_shader_1init_1from_1texts(JNIEnv* env, jclass, jstring name, jstring fsText, jstring vsText) {
const char* nameChars = env->GetStringUTFChars(name, JNI_FALSE);
const char* fsChars = env->GetStringUTFChars(fsText, JNI_FALSE);
const char* vsChars = env->GetStringUTFChars(vsText, JNI_FALSE);
@@ -1043,18 +1043,18 @@ extern "C" {
return (jlong) (intptr_t) ref;
}
JNIEXPORT jlong JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_glmodel_1create(JNIEnv* env, jclass) {
JNIEXPORT jlong JNICALL Java_com_dark98_santoku_slic3r_Native_glmodel_1create(JNIEnv* env, jclass) {
GLModelRef* ref = new GLModelRef();
return (jlong) (intptr_t) ref;
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_glmodel_1init_1raycast_1data(JNIEnv* env, jclass, jlong ptr) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_glmodel_1init_1raycast_1data(JNIEnv* env, jclass, jlong ptr) {
GLModelRef* ref = (GLModelRef*) (intptr_t) ptr;
ref->emesh = new AABBMesh(ref->mesh, true);
ref->normals = its_face_normals(ref->mesh.its);
}
JNIEXPORT jdoubleArray JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_glmodel_1raycast_1closest_1hit(JNIEnv* env, jclass, jlong ptr, jdoubleArray pointArr, jdoubleArray directionArr) {
JNIEXPORT jdoubleArray JNICALL Java_com_dark98_santoku_slic3r_Native_glmodel_1raycast_1closest_1hit(JNIEnv* env, jclass, jlong ptr, jdoubleArray pointArr, jdoubleArray directionArr) {
GLModelRef* ref = (GLModelRef*) (intptr_t) ptr;
jdouble* point = env->GetDoubleArrayElements(pointArr, JNI_FALSE);
jdouble* direction = env->GetDoubleArrayElements(directionArr, JNI_FALSE);
@@ -1078,31 +1078,31 @@ extern "C" {
return arr;
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_glmodel_1init_1from_1model(JNIEnv* env, jclass, jlong ptr, jlong model) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_glmodel_1init_1from_1model(JNIEnv* env, jclass, jlong ptr, jlong model) {
GLModelRef* ref = (GLModelRef*) (intptr_t) ptr;
ModelRef* mRef = (ModelRef*) (intptr_t) model;
ref->mesh = mRef->model.mesh();
ref->model.init_from(ref->mesh.its);
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_glmodel_1init_1from_1model_1object(JNIEnv* env, jclass, jlong ptr, jlong model, jint i) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_glmodel_1init_1from_1model_1object(JNIEnv* env, jclass, jlong ptr, jlong model, jint i) {
GLModelRef* ref = (GLModelRef*) (intptr_t) ptr;
ModelRef* mRef = (ModelRef*) (intptr_t) model;
ref->mesh = mRef->model.objects[i]->mesh();
ref->model.init_from(ref->mesh.its);
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_glmodel_1set_1color(JNIEnv* env, jclass, jlong ptr, jfloat red, jfloat green, jfloat blue, jfloat alpha) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_glmodel_1set_1color(JNIEnv* env, jclass, jlong ptr, jfloat red, jfloat green, jfloat blue, jfloat alpha) {
GLModelRef* ref = (GLModelRef*) (intptr_t) ptr;
ref->model.set_color(ColorRGBA(red, green, blue, alpha));
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_glmodel_1stilized_1arrow(JNIEnv* env, jclass, jlong ptr, jfloat tip_radius, jfloat tip_length, jfloat stem_radius, jfloat stem_length) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_glmodel_1stilized_1arrow(JNIEnv* env, jclass, jlong ptr, jfloat tip_radius, jfloat tip_length, jfloat stem_radius, jfloat stem_length) {
GLModelRef* ref = (GLModelRef*) (intptr_t) ptr;
ref->model.init_from(stilized_arrow(16, tip_radius, tip_length, stem_radius, stem_length));
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_glmodel_1init_1background_1triangles(JNIEnv* env, jclass, jlong ptr) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_glmodel_1init_1background_1triangles(JNIEnv* env, jclass, jlong ptr) {
GLModelRef* ref = (GLModelRef*) (intptr_t) ptr;
ref->model.reset();
@@ -1124,7 +1124,7 @@ extern "C" {
ref->model.init_from(std::move(init_data));
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_glmodel_1init_1bounding_1box(JNIEnv* env, jclass, jlong ptr, jlong modelPtr, jint i) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_glmodel_1init_1bounding_1box(JNIEnv* env, jclass, jlong ptr, jlong modelPtr, jint i) {
GLModelRef* ref = (GLModelRef*) (intptr_t) ptr;
ModelRef* modelRef = (ModelRef*) (intptr_t) modelPtr;
@@ -1208,12 +1208,12 @@ extern "C" {
}
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_glmodel_1render(JNIEnv* env, jclass, jlong ptr) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_glmodel_1render(JNIEnv* env, jclass, jlong ptr) {
GLModelRef* ref = (GLModelRef*) (intptr_t) ptr;
ref->model.render();
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_glmodel_1reset(JNIEnv* env, jclass, jlong ptr) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_glmodel_1reset(JNIEnv* env, jclass, jlong ptr) {
GLModelRef* ref = (GLModelRef*) (intptr_t) ptr;
ref->model.reset();
ref->mesh.clear();
@@ -1221,28 +1221,28 @@ extern "C" {
ref->normals.clear();
}
JNIEXPORT jboolean JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_glmodel_1is_1initialized(JNIEnv* env, jclass, jlong ptr) {
JNIEXPORT jboolean JNICALL Java_com_dark98_santoku_slic3r_Native_glmodel_1is_1initialized(JNIEnv* env, jclass, jlong ptr) {
GLModelRef* ref = (GLModelRef*) (intptr_t) ptr;
return ref->model.is_initialized();
}
JNIEXPORT jboolean JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_glmodel_1is_1empty(JNIEnv* env, jclass, jlong ptr) {
JNIEXPORT jboolean JNICALL Java_com_dark98_santoku_slic3r_Native_glmodel_1is_1empty(JNIEnv* env, jclass, jlong ptr) {
GLModelRef* ref = (GLModelRef*) (intptr_t) ptr;
return ref->model.is_empty();
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_glmodel_1release(JNIEnv* env, jclass, jlong ptr) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_glmodel_1release(JNIEnv* env, jclass, jlong ptr) {
GLModelRef* ref = (GLModelRef*) (intptr_t) ptr;
ref->model.reset();
delete ref;
}
JNIEXPORT jint JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_shader_1get_1id(JNIEnv* env, jclass, jlong ptr) {
JNIEXPORT jint JNICALL Java_com_dark98_santoku_slic3r_Native_shader_1get_1id(JNIEnv* env, jclass, jlong ptr) {
ShaderRef* shader = (ShaderRef*) (intptr_t) ptr;
return shader->program.get_id();
}
JNIEXPORT jint JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_shader_1get_1uniform_1location(JNIEnv* env, jclass, jlong ptr, jstring name) {
JNIEXPORT jint JNICALL Java_com_dark98_santoku_slic3r_Native_shader_1get_1uniform_1location(JNIEnv* env, jclass, jlong ptr, jstring name) {
const char* chars = env->GetStringUTFChars(name, JNI_FALSE);
ShaderRef* shader = (ShaderRef*) (intptr_t) ptr;
if (shader) {
@@ -1253,7 +1253,7 @@ extern "C" {
return 0;
}
JNIEXPORT jint JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_shader_1get_1attrib_1location(JNIEnv* env, jclass, jlong ptr, jstring name) {
JNIEXPORT jint JNICALL Java_com_dark98_santoku_slic3r_Native_shader_1get_1attrib_1location(JNIEnv* env, jclass, jlong ptr, jstring name) {
const char *chars = env->GetStringUTFChars(name, JNI_FALSE);
ShaderRef *shader = (ShaderRef *) (intptr_t) ptr;
if (shader) {
@@ -1264,22 +1264,22 @@ extern "C" {
return 0;
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_shader_1start_1using(JNIEnv* env, jclass, jlong ptr) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_shader_1start_1using(JNIEnv* env, jclass, jlong ptr) {
ShaderRef* shader = (ShaderRef*) (intptr_t) ptr;
shader->program.start_using();
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_shader_1stop_1using(JNIEnv* env, jclass, jlong ptr) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_shader_1stop_1using(JNIEnv* env, jclass, jlong ptr) {
ShaderRef* shader = (ShaderRef*) (intptr_t) ptr;
shader->program.stop_using();
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_shader_1release(JNIEnv* env, jclass, jlong ptr) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_shader_1release(JNIEnv* env, jclass, jlong ptr) {
ShaderRef* shader = (ShaderRef*) (intptr_t) ptr;
delete shader;
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_utils_1calc_1view_1normal_1matrix(JNIEnv* env, jclass, jdoubleArray view_matrix, jdoubleArray world_matrix, jdoubleArray normal_matrix) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_utils_1calc_1view_1normal_1matrix(JNIEnv* env, jclass, jdoubleArray view_matrix, jdoubleArray world_matrix, jdoubleArray normal_matrix) {
jdouble* viewMatrix = env->GetDoubleArrayElements(view_matrix, JNI_FALSE);
jdouble* worldMatrix = env->GetDoubleArrayElements(world_matrix, JNI_FALSE);
@@ -1293,7 +1293,7 @@ extern "C" {
env->ReleaseDoubleArrayElements(world_matrix, worldMatrix, JNI_ABORT);
}
JNIEXPORT jlong JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_utils_1config_1create(JNIEnv* env, jclass, jstring config) {
JNIEXPORT jlong JNICALL Java_com_dark98_santoku_slic3r_Native_utils_1config_1create(JNIEnv* env, jclass, jstring config) {
ConfigRef* ref = new ConfigRef();
const char* config_ini = env->GetStringUTFChars(config, JNI_FALSE);
ref->config.load_from_ini_string(config_ini, ForwardCompatibilitySubstitutionRule::Disable);
@@ -1306,12 +1306,12 @@ extern "C" {
return (jlong) (intptr_t) ref;
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_utils_1config_1release(JNIEnv* env, jclass, jlong ptr) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_utils_1config_1release(JNIEnv* env, jclass, jlong ptr) {
ConfigRef* ref = (ConfigRef*) (intptr_t) ptr;
delete ref;
}
JNIEXPORT jboolean JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_utils_1config_1check_1compatibility(JNIEnv* env, jclass, jlong ptr, jstring cond) {
JNIEXPORT jboolean JNICALL Java_com_dark98_santoku_slic3r_Native_utils_1config_1check_1compatibility(JNIEnv* env, jclass, jlong ptr, jstring cond) {
ConfigRef* ref = (ConfigRef*) (intptr_t) ptr;
const char* condition = env->GetStringUTFChars(cond, JNI_FALSE);
@@ -1327,7 +1327,7 @@ extern "C" {
return value;
}
JNIEXPORT jstring JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_utils_1config_1eval(JNIEnv* env, jclass, jlong ptr, jstring cond) {
JNIEXPORT jstring JNICALL Java_com_dark98_santoku_slic3r_Native_utils_1config_1eval(JNIEnv* env, jclass, jlong ptr, jstring cond) {
ConfigRef *ref = (ConfigRef *) (intptr_t) ptr;
const char *condition = env->GetStringUTFChars(cond, JNI_FALSE);
@@ -1339,12 +1339,12 @@ extern "C" {
} catch (const std::runtime_error &err) {
env->ReleaseStringUTFChars(cond, condition);
env->ThrowNew(env->FindClass("ru/ytkab0bp/slicebeam/slic3r/Slic3rRuntimeError"), err.what());
env->ThrowNew(env->FindClass("com/dark98/santoku/slic3r/Slic3rRuntimeError"), err.what());
return nullptr;
}
}
JNIEXPORT jdoubleArray JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_utils_1unproject(JNIEnv* env, jclass, jdoubleArray view_matrix, jdoubleArray projection_matrix, jint screen_width, jint screen_height, jdouble screen_x, jdouble screen_y) {
JNIEXPORT jdoubleArray JNICALL Java_com_dark98_santoku_slic3r_Native_utils_1unproject(JNIEnv* env, jclass, jdoubleArray view_matrix, jdoubleArray projection_matrix, jint screen_width, jint screen_height, jdouble screen_x, jdouble screen_y) {
jdouble* viewMatrix = env->GetDoubleArrayElements(view_matrix, JNI_FALSE);
jdouble* projectionMatrix = env->GetDoubleArrayElements(projection_matrix, JNI_FALSE);
@@ -1365,7 +1365,7 @@ extern "C" {
return arr;
}
JNIEXPORT jlong JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_bed_1create(JNIEnv* env, jclass, jlongArray data) {
JNIEXPORT jlong JNICALL Java_com_dark98_santoku_slic3r_Native_bed_1create(JNIEnv* env, jclass, jlongArray data) {
BedRef* ref = new BedRef();
GLModelRef* refs = new GLModelRef[3];
refs[0] = GLModelRef();
@@ -1382,7 +1382,7 @@ extern "C" {
return (jlong) (intptr_t) ref;
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_bed_1configure(JNIEnv* env, jclass, jlong ptr, jstring config_path) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_bed_1configure(JNIEnv* env, jclass, jlong ptr, jstring config_path) {
BedRef* ref = (BedRef*) (intptr_t) ptr;
const char* chars = env->GetStringUTFChars(config_path, JNI_FALSE);
@@ -1395,7 +1395,7 @@ extern "C" {
ref->contour = ExPolygon(Polygon::new_scale(bed_shape));
const BoundingBox bbox = ref->contour.contour.bounding_box();
if (!bbox.defined) {
env->ThrowNew(env->FindClass("ru/ytkab0bp/slicebeam/slic3r/Slic3rRuntimeError"), "Invalid bed shape");
env->ThrowNew(env->FindClass("com/dark98/santoku/slic3r/Slic3rRuntimeError"), "Invalid bed shape");
return;
}
@@ -1409,7 +1409,7 @@ extern "C" {
bed_util_init_contourlines(ref->contour, ref->contourlines);
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_bed_1init_1triangles_1mesh(JNIEnv* env, jclass, jlong ptr, jlong triangles_ptr) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_bed_1init_1triangles_1mesh(JNIEnv* env, jclass, jlong ptr, jlong triangles_ptr) {
auto ref = reinterpret_cast<BedRef*>(ptr);
auto tRef = reinterpret_cast<GLModelRef*>(triangles_ptr);
@@ -1422,7 +1422,7 @@ extern "C" {
bed_util_init_triangles_its(contour, &tRef->mesh.its);
}
JNIEXPORT jboolean JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_bed_1arrange(JNIEnv* env, jclass, jlong ptr, jlong model) {
JNIEXPORT jboolean JNICALL Java_com_dark98_santoku_slic3r_Native_bed_1arrange(JNIEnv* env, jclass, jlong ptr, jlong model) {
BedRef* ref = (BedRef*) (intptr_t) ptr;
ModelRef* mRef = (ModelRef*) (intptr_t) model;
@@ -1489,7 +1489,7 @@ extern "C" {
return arranged;
}
JNIEXPORT jdoubleArray JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_bed_1get_1bounding_1volume(JNIEnv* env, jclass, jlong ptr) {
JNIEXPORT jdoubleArray JNICALL Java_com_dark98_santoku_slic3r_Native_bed_1get_1bounding_1volume(JNIEnv* env, jclass, jlong ptr) {
BedRef* ref = (BedRef*) (intptr_t) ptr;
jdoubleArray arr = env->NewDoubleArray(6);
jdouble* elements = new jdouble[6];
@@ -1503,22 +1503,22 @@ extern "C" {
return arr;
}
JNIEXPORT jint JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_bed_1get_1bounding_1volume_1max_1size(JNIEnv* env, jclass, jlong ptr) {
JNIEXPORT jint JNICALL Java_com_dark98_santoku_slic3r_Native_bed_1get_1bounding_1volume_1max_1size(JNIEnv* env, jclass, jlong ptr) {
BedRef* ref = (BedRef*) (intptr_t) ptr;
return ref->build_volume.bounding_volume().max_size();
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_bed_1release(JNIEnv* env, jclass, jlong ptr) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_bed_1release(JNIEnv* env, jclass, jlong ptr) {
BedRef* ref = (BedRef*) (intptr_t) ptr;
delete ref;
}
JNIEXPORT jlong JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_vgcode_1create(JNIEnv* env, jclass) {
JNIEXPORT jlong JNICALL Java_com_dark98_santoku_slic3r_Native_vgcode_1create(JNIEnv* env, jclass) {
GCodeViewerRef* ref = new GCodeViewerRef();
return (jlong) (intptr_t) ref;
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_vgcode_1set_1colors(JNIEnv* env, jclass, jlong ptr, jintArray colorsArr) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_vgcode_1set_1colors(JNIEnv* env, jclass, jlong ptr, jintArray colorsArr) {
GCodeViewerRef* ref = (GCodeViewerRef*) (intptr_t) ptr;
jint* colors = env->GetIntArrayElements(colorsArr, JNI_FALSE);
@@ -1532,7 +1532,7 @@ extern "C" {
env->ReleaseIntArrayElements(colorsArr, colors, JNI_ABORT);
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_vgcode_1render(JNIEnv* env, jclass, jlong ptr, jfloatArray viewMatrixArr, jfloatArray projectionMatrixArr) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_vgcode_1render(JNIEnv* env, jclass, jlong ptr, jfloatArray viewMatrixArr, jfloatArray projectionMatrixArr) {
GCodeViewerRef* ref = (GCodeViewerRef*) (intptr_t) ptr;
jfloat* viewMatrix = env->GetFloatArrayElements(viewMatrixArr, JNI_FALSE);
jfloat* projectionMatrix = env->GetFloatArrayElements(projectionMatrixArr, JNI_FALSE);
@@ -1548,19 +1548,19 @@ extern "C" {
env->ReleaseFloatArrayElements(projectionMatrixArr, projectionMatrix, JNI_ABORT);
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_vgcode_1init(JNIEnv* env, jclass, jlong ptr) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_vgcode_1init(JNIEnv* env, jclass, jlong ptr) {
GCodeViewerRef* ref = (GCodeViewerRef*) (intptr_t) ptr;
if (ref->initialized) return;
ref->viewer.init(reinterpret_cast<const char*>(glGetString(GL_VERSION)));
ref->initialized = true;
}
JNIEXPORT jboolean JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_vgcode_1is_1initialized(JNIEnv* env, jclass, jlong ptr) {
JNIEXPORT jboolean JNICALL Java_com_dark98_santoku_slic3r_Native_vgcode_1is_1initialized(JNIEnv* env, jclass, jlong ptr) {
GCodeViewerRef* ref = (GCodeViewerRef*) (intptr_t) ptr;
return ref->initialized;
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_vgcode_1load(JNIEnv* env, jclass, jlong ptr, jlong resultPtr) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_vgcode_1load(JNIEnv* env, jclass, jlong ptr, jlong resultPtr) {
GCodeViewerRef* ref = (GCodeViewerRef*) (intptr_t) ptr;
GCodeResultRef* resultRef = (GCodeResultRef*) (intptr_t) resultPtr;
@@ -1569,23 +1569,23 @@ extern "C" {
ref->viewer.set_time_mode(libvgcode::ETimeMode::Normal);
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_vgcode_1reset(JNIEnv* env, jclass, jlong ptr) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_vgcode_1reset(JNIEnv* env, jclass, jlong ptr) {
GCodeViewerRef* ref = (GCodeViewerRef*) (intptr_t) ptr;
ref->viewer.reset();
ref->initialized = false;
}
JNIEXPORT jlong JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_vgcode_1get_1layers_1count(JNIEnv* env, jclass, jlong ptr) {
JNIEXPORT jlong JNICALL Java_com_dark98_santoku_slic3r_Native_vgcode_1get_1layers_1count(JNIEnv* env, jclass, jlong ptr) {
GCodeViewerRef* ref = (GCodeViewerRef*) (intptr_t) ptr;
return ref->viewer.get_layers_count();
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_vgcode_1set_1layers_1view_1range(JNIEnv* env, jclass, jlong ptr, jlong min, jlong max) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_vgcode_1set_1layers_1view_1range(JNIEnv* env, jclass, jlong ptr, jlong min, jlong max) {
GCodeViewerRef* ref = (GCodeViewerRef*) (intptr_t) ptr;
ref->viewer.set_layers_view_range(static_cast<uint32_t>(min), static_cast<uint32_t>(max));
}
JNIEXPORT jlongArray JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_vgcode_1get_1layers_1view_1range(JNIEnv* env, jclass, jlong ptr) {
JNIEXPORT jlongArray JNICALL Java_com_dark98_santoku_slic3r_Native_vgcode_1get_1layers_1view_1range(JNIEnv* env, jclass, jlong ptr) {
GCodeViewerRef* ref = (GCodeViewerRef*) (intptr_t) ptr;
jlongArray arr = env->NewLongArray(2);
auto range = ref->viewer.get_layers_view_range();
@@ -1595,13 +1595,13 @@ extern "C" {
return arr;
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_vgcode_1release(JNIEnv* env, jclass, jlong ptr) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_vgcode_1release(JNIEnv* env, jclass, jlong ptr) {
GCodeViewerRef* ref = (GCodeViewerRef*) (intptr_t) ptr;
ref->viewer.shutdown();
delete ref;
}
JNIEXPORT jfloat JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_vgcode_1get_1estimated_1time(JNIEnv* env, jclass, jlong ptr) {
JNIEXPORT jfloat JNICALL Java_com_dark98_santoku_slic3r_Native_vgcode_1get_1estimated_1time(JNIEnv* env, jclass, jlong ptr) {
GCodeViewerRef* ref = (GCodeViewerRef*) (intptr_t) ptr;
return ref->viewer.get_estimated_time();
}
@@ -1659,17 +1659,17 @@ extern "C" {
return crole;
}
JNIEXPORT jfloat JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_vgcode_1get_1estimated_1time_1role(JNIEnv* env, jclass, jlong ptr, jint role) {
JNIEXPORT jfloat JNICALL Java_com_dark98_santoku_slic3r_Native_vgcode_1get_1estimated_1time_1role(JNIEnv* env, jclass, jlong ptr, jint role) {
GCodeViewerRef* ref = (GCodeViewerRef*) (intptr_t) ptr;
return ref->viewer.get_extrusion_role_estimated_time(mapRole(role));
}
JNIEXPORT jboolean JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_vgcode_1is_1extrusion_1role_1visible(JNIEnv* env, jclass, jlong ptr, jint role) {
JNIEXPORT jboolean JNICALL Java_com_dark98_santoku_slic3r_Native_vgcode_1is_1extrusion_1role_1visible(JNIEnv* env, jclass, jlong ptr, jint role) {
GCodeViewerRef* ref = (GCodeViewerRef*) (intptr_t) ptr;
return ref->viewer.is_extrusion_role_visible(mapRole(role));
}
JNIEXPORT void JNICALL Java_ru_ytkab0bp_slicebeam_slic3r_Native_vgcode_1toggle_1extrusion_1role_1visibility(JNIEnv* env, jclass, jlong ptr, jint role) {
JNIEXPORT void JNICALL Java_com_dark98_santoku_slic3r_Native_vgcode_1toggle_1extrusion_1role_1visibility(JNIEnv* env, jclass, jlong ptr, jint role) {
GCodeViewerRef* ref = (GCodeViewerRef*) (intptr_t) ptr;
ref->viewer.toggle_extrusion_role_visibility(mapRole(role));
}
+8
View File
@@ -0,0 +1,8 @@
#import "GLShader.hpp"
#ifndef SANTOKU_BEAM_NATIVE_HPP
#define SANTOKU_BEAM_NATIVE_HPP
Slic3r::GLShaderProgram* get_current_shader();
#endif //SANTOKU_BEAM_NATIVE_HPP
@@ -5,8 +5,8 @@
#include <android/log.h>
#ifndef SLICEBEAM_BED_UTILS_HPP
#define SLICEBEAM_BED_UTILS_HPP
#ifndef SANTOKU_BED_UTILS_HPP
#define SANTOKU_BED_UTILS_HPP
#define GROUND_Z -0.02f
@@ -141,4 +141,4 @@ void bed_util_init_contourlines(ExPolygon& contour, GLModel* glContourlines) {
glContourlines->set_color({ 1.0f, 1.0f, 1.0f, 0.5f });
}
#endif //SLICEBEAM_BED_UTILS_HPP
#endif //SANTOKU_BED_UTILS_HPP
@@ -1,8 +0,0 @@
#import "GLShader.hpp"
#ifndef SLICEBEAM_BEAM_NATIVE_HPP
#define SLICEBEAM_BEAM_NATIVE_HPP
Slic3r::GLShaderProgram* get_current_shader();
#endif //SLICEBEAM_BEAM_NATIVE_HPP