reamenagement

This commit is contained in:
Nathan-rek committed 2024-11-20 16:39:17 +01:00
1 parent e02d1d0bba
commit 12a249e478
142 files changed
+18858 -18858

No files matched your search

View File
Whitespace-only changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File diff suppressed because it is too large. Load diff
File renamed without changes.
File renamed without changes.
@@ -1,79 +1,79 @@
from enum import Enum
class Machine(Enum):
LASER = 1
THREEAXIS = 2
class Gcode:
def __init__(self, file, mm_per_px, speed, machine, max_s=0, safe_z=0, work_z=0):
self.file = file
self.mm_per_px = mm_per_px
self.speed = speed
self.machine = machine
self.max_s = max_s
self.safe_z = safe_z
self.work_z = work_z
self.output = None
self.init_file()
def init_file(self):
# self.output = open(f"{self.file}.gcode", "w")
self.output = ""
self.output += ("G21 ;Unit to mm\n")
self.output += ("G90 ;Absolute positioning\n\n")
self.output += (f"F{self.speed}\n")
if self.machine == Machine.LASER:
self.output += (f"S{self.max_s}\n")
self.output += ("M3\n\n")
def draw_line(self, x1, y1, x2, y2):
self.go_to(x1, y1)
self.write_to(x2, y2)
def go_to(self, x, y):
x_mm = x * self.mm_per_px
y_mm = y * self.mm_per_px
if self.machine == Machine.LASER:
self.output+=(f"G0 X{x_mm} Y{y_mm}\n")
elif self.machine == Machine.THREEAXIS:
self.output+=(f"G0 Z{self.safe_z}\n")
self.output+=(f"G0 X{x_mm} Y{y_mm} Z{self.safe_z}\n")
def write_to(self, x, y):
x_mm = x * self.mm_per_px
y_mm = y * self.mm_per_px
if self.machine == Machine.LASER:
self.output += (f"G1 X{x_mm} Y{y_mm}\n")
elif self.machine == Machine.THREEAXIS:
self.output += (f"G0 Z{self.work_z}\n")
self.output += (f"G1 X{x_mm} Y{y_mm} Z{self.work_z}\n")
def refill(self, x, y, depth, dip_number):
self.output += (";#################\n")
if self.machine == Machine.THREEAXIS:
self.go_to(x, y)
for _ in range(dip_number):
self.output += (f"G1 Z{depth}\n")
self.output += (f"G0 Z{self.safe_z}\n")
elif self.machine == Machine.LASER:
self.go_to(x, y)
self.set_pause()
def set_pause(self):
self.output += ("M0\n")
def end_gcode(self):
if self.machine == Machine.THREEAXIS:
self.go_to(0, 0)
self.output += ("M5\n")
# self.output.close()
def new_file(self, new_file_name):
self.end_gcode()
self.file = new_file_name
self.init_file()
from enum import Enum
class Machine(Enum):
LASER = 1
THREEAXIS = 2
class Gcode:
def __init__(self, file, mm_per_px, speed, machine, max_s=0, safe_z=0, work_z=0):
self.file = file
self.mm_per_px = mm_per_px
self.speed = speed
self.machine = machine
self.max_s = max_s
self.safe_z = safe_z
self.work_z = work_z
self.output = None
self.init_file()
def init_file(self):
# self.output = open(f"{self.file}.gcode", "w")
self.output = ""
self.output += ("G21 ;Unit to mm\n")
self.output += ("G90 ;Absolute positioning\n\n")
self.output += (f"F{self.speed}\n")
if self.machine == Machine.LASER:
self.output += (f"S{self.max_s}\n")
self.output += ("M3\n\n")
def draw_line(self, x1, y1, x2, y2):
self.go_to(x1, y1)
self.write_to(x2, y2)
def go_to(self, x, y):
x_mm = x * self.mm_per_px
y_mm = y * self.mm_per_px
if self.machine == Machine.LASER:
self.output+=(f"G0 X{x_mm} Y{y_mm}\n")
elif self.machine == Machine.THREEAXIS:
self.output+=(f"G0 Z{self.safe_z}\n")
self.output+=(f"G0 X{x_mm} Y{y_mm} Z{self.safe_z}\n")
def write_to(self, x, y):
x_mm = x * self.mm_per_px
y_mm = y * self.mm_per_px
if self.machine == Machine.LASER:
self.output += (f"G1 X{x_mm} Y{y_mm}\n")
elif self.machine == Machine.THREEAXIS:
self.output += (f"G0 Z{self.work_z}\n")
self.output += (f"G1 X{x_mm} Y{y_mm} Z{self.work_z}\n")
def refill(self, x, y, depth, dip_number):
self.output += (";#################\n")
if self.machine == Machine.THREEAXIS:
self.go_to(x, y)
for _ in range(dip_number):
self.output += (f"G1 Z{depth}\n")
self.output += (f"G0 Z{self.safe_z}\n")
elif self.machine == Machine.LASER:
self.go_to(x, y)
self.set_pause()
def set_pause(self):
self.output += ("M0\n")
def end_gcode(self):
if self.machine == Machine.THREEAXIS:
self.go_to(0, 0)
self.output += ("M5\n")
# self.output.close()
def new_file(self, new_file_name):
self.end_gcode()
self.file = new_file_name
self.init_file()
@@ -1,3 +1,3 @@
- fonction qui traite le texte utilisateur : ajoute des retours à la ligne quand les phrases sont trop longues. A ajouter dans la fonction getText de l'app web
- Dans getText fair appel à text_to_gcode, récupérer le gcode et l'envoyer en serial
- fonction qui traite le texte utilisateur : ajoute des retours à la ligne quand les phrases sont trop longues. A ajouter dans la fonction getText de l'app web
- Dans getText fair appel à text_to_gcode, récupérer le gcode et l'envoyer en serial
- Dans text_to_gcode faire une fonction convert_text qui prends un texte avec des retours à la ligne et qui revoit du gcode
Binary file not shown.
Binary file not shown.
File renamed without changes.
@@ -1,22 +1,22 @@
from Gcode_generator import Gcode
from Gcode_generator import Machine
machine_type = Machine.LASER
# Create an instance of the Gcode class
gcode = Gcode(
file="test_gcode", # Output file name (no .gcode extension)
mm_per_px=0.1, # Conversion factor: mm per pixel
speed=1000, # Speed in mm/min
machine=machine_type,
)
# Draw a line from (10, 20) to (30, 40)
gcode.draw_line(10, 20, 30, 40)
# Finish the G-code file
gcode.end_gcode()
from Gcode_generator import Gcode
from Gcode_generator import Machine
machine_type = Machine.LASER
# Create an instance of the Gcode class
gcode = Gcode(
file="test_gcode", # Output file name (no .gcode extension)
mm_per_px=0.1, # Conversion factor: mm per pixel
speed=1000, # Speed in mm/min
machine=machine_type,
)
# Draw a line from (10, 20) to (30, 40)
gcode.draw_line(10, 20, 30, 40)
# Finish the G-code file
gcode.end_gcode()
print("G-code file generated: example.gcode")
File renamed without changes.

Before

Width:  |  Height:  |  Size: 78 KiB

After

Width:  |  Height:  |  Size: 78 KiB

File diff suppressed because it is too large. Load diff
File renamed without changes.

Before

Width:  |  Height:  |  Size: 78 KiB

After

Width:  |  Height:  |  Size: 78 KiB

File renamed without changes.
File renamed without changes.
Loaded 100 of 142 files, more files were not shown because too many files have changed in this diff. Show more