Files
braille_translator/model_gen/system_commands.py
2024-04-08 14:09:47 +01:00

80 lines
1.9 KiB
Python

# -*- coding: utf-8 -*-
"""
Created on Thu Apr 27 16:47:54 2023
@author: Edward Middleton-Smith
File Operations OpenSCAD, Cura Engine
"""
# CLASSES
# ATTRIBUTE DECLARATION
# METHODS
# FUNCTION
# ARGUMENTS
# ARGUMENT VALIDATION
# ATTRIBUTE + VARIABLE INSTANTIATION
# METHODS
# RETURNS
# NORMAL METHODS
# FUNCTION
# ARGUMENTS
# ARGUMENT VALIDATION
# VARIABLE INSTANTIATION
# METHODS
# RETURNS
import os
def render_openscad(path_scad, path_stl, path_cmd = 'C:\\"Program Files (x86)"\\OpenSCAD\\openscad'):
# FUNCTION
# render openscad file and store as file type defined by path_stl
# ARGUMENTS
# str path_scad - filepath of openscad model
# str path_stl - filepath to store (stl)
# VARIABLE INSTANTIATION
cmd = f'{path_cmd} -o "{path_stl}" "{path_scad}"'
# METHODS
exec_oscmd(cmd)
def make_openscad(path_scad, path_stl, path_cmd = 'C:\\"Program Files (x86)"\\OpenSCAD\\openscad'):
# FUNCTION
# render openscad file and store as file type defined by path_stl
# ARGUMENTS
# str path_scad - filepath of openscad model
# str path_stl - filepath to store (stl)
# VARIABLE INSTANTIATION
cmd = f'{path_cmd} "{path_scad}"'
# METHODS
exec_oscmd(cmd)
def exec_oscmd(cmd):
# FUNCTION
# execute os system command
# - validation conducted by os system following python execution - NOT SAFE
# ARGUMENTS
# str cmd - command
# RETURNS
print()
print('command')
print(cmd)
# METHODS
# os.system('cd C:\\"Program Files (x86)"\\OpenSCAD\\') # pre-command for openscad commands, alt: os.system('C:\\"Program Files (x86)"\\OpenSCAD\\openscad ...')
os.system(cmd)
def slice_model(path_stl, path_gcode):
# FUNCTION
# slice stl file using Cura Engine
# ARGUMENTS
# str path_stl - filepath for input stl
# str path_stl - filepath to store gcode
# VARIABLE INSTANTIATION
cmd = f'C:\\"Program Files\\Ultimaker Cura 4.11.0\\CuraEngine ' # ToDo FINISH THIS
# METHODS
exec_oscmd(cmd)