Справочник по плейсхолдерам G-кода для платы расширения # Справочник по плейсхолдерам G-кода для платы расширения # Список плейсхолдеров Имя Тип Определение Пример total_layer_count int Общее количество слоев ; номер слоя/общее количество слоев: {layer_num+1}/{total_layer_count} Отображение общего количества слоев previous_extruder int 0-16 Предыдущий тип экструдированного филамента ;{ filament_type[previous_extruder]} Получение информации о предыдущем типе экструдированного филамента при смене next_extruder int 0-16 Следующий тип экструдированного филамента ;{ filament_type[next_extruder]} Получение информации о следующем типе экструдированного филамента при смене layer_num int Текущий номер слоя ;{layer_num} Отображение текущего номера слоя layer_z float Текущая высота слоя max_layer_z float Максимальная высота слоя x_after_toolchange float Координаты после смены филамента y_after_toolchange float z_after_toolchange float filament_extruder_id int Текущий тип ID филамента If Условное выражение toolchange_z float Текущая общая высота слоя G1 Z{toolchange_z} Перемещение экструдера филамента # Руководство по G-коду
Получение значений из имен переменных К переменной "layer_z" можно получить доступ напрямую, используя ее имя. Чтобы получить ее значение, используйте {layer_z}.
Доступ к значению плейсхолдера массива или вектора с использованием имени переменной [index] "cool_plate_temp_initial_layer[0]" обращается к первому элементу "cool_plate_temp_initial_layer". Чтобы получить его значение, используйте {cool_plate_temp_initial_layer[0]}.
Условные операторы {if scan_first_layer} ;=========регистрация сканирования первого слоя===== M977 S1 P60 {endif}
Тернарный оператор/условный оператор ( ? :)
Объединение инструкций G-кода S[next_extruder] S{cool_plate_temp_initial_layer[0]}
Представление строкового типа данных с использованием "string" Строки: "Bambu PLA Basic @BBL X1C"
Регулярное выражение /regex/
Сравнение <, >, ==, !=, <>, <=, >= toolchange_count > 1
Логические операции &&, , ! {if old_filament_temp > 142 && next_extruder < 255};dosomething{endif}
Арифметические операции +,-, *, / Арифметические операторы: {layer_num+1} Операции с плавающей запятой возвращают тип float, а целочисленные операции возвращают тип integer. Если вы хотите, чтобы результат был десятичным значением, вам нужно включить аргумент типа float в операцию. Например, 3/2 вернет 1 (целое число), а 3.0/2 вернет 1,5 (float).
Сопоставление =~ сопоставление и !~ несопоставление: =~ и !~ являются операторами сравнения, используемыми в программировании для проверки соответствия строки шаблону или нет. Оператор =~ проверяет, соответствует ли строка шаблону, а оператор !~ проверяет, не соответствует ли строка шаблону.
Функциональные операции Функции — это набор инструкций, которые выполняются при их вызове. В программировании функция может принимать аргументы и возвращать результат. Вот некоторые распространенные функциональные операции в программировании: min(a, b): возвращает минимальное значение между a и b.
max(a, b): возвращает максимальное значение междуaиb.int(a): преобразуетaв целочисленный тип.round(a): округляетaдо ближайшего целого числа.digits(a, num_digits, num_decimals=0): округляет десятичную частьaдо целого числа и отображаетnum_digitsцифр с заполнением пробелами, гдеnum_decimalsпо умолчанию равно 0 и может быть оставлено пустым.zdigits(a, num_digits, num_decimals=0): то же, что и выше, за исключением того, что используется заполнение нулями вместо пробелов.