kopia lustrzana https://github.com/vilemduha/blendercam
76 wiersze
2.0 KiB
Python
76 wiersze
2.0 KiB
Python
################################################################################
|
|
# fadal.py
|
|
#
|
|
# Fadal ISO NC code creator
|
|
#
|
|
# TurBoss, 19/06/2016
|
|
#
|
|
################################################################################
|
|
|
|
from . import nc
|
|
from . import iso
|
|
from .format import Format
|
|
|
|
|
|
class Creator(iso.Creator):
|
|
def __init__(self):
|
|
iso.Creator.__init__(self)
|
|
|
|
# internal variables
|
|
|
|
self.fmt = Format(add_trailing_zeros=True)
|
|
|
|
############################################################################
|
|
# Codes
|
|
|
|
def SPACE_STR(self):
|
|
return " "
|
|
|
|
############################################################################
|
|
# Programs
|
|
|
|
def program_begin(self, id, name=""):
|
|
if self.use_this_program_id:
|
|
id = self.use_this_program_id
|
|
if self.PROGRAM() != None:
|
|
self.write("%")
|
|
self.write("\n")
|
|
self.writem([(self.PROGRAM() % id), self.SPACE(), (self.COMMENT(name))])
|
|
self.write("\n")
|
|
self.program_id = id
|
|
self.program_name = name
|
|
|
|
def program_end(self):
|
|
if self.z_for_g53 != None:
|
|
self.write(
|
|
self.SPACE()
|
|
+ self.MACHINE_COORDINATES()
|
|
+ self.SPACE()
|
|
+ "Z"
|
|
+ self.fmt.string(self.z_for_g53)
|
|
+ "\n"
|
|
)
|
|
self.write(self.SPACE() + self.PROGRAM_END() + "\n")
|
|
self.write("%")
|
|
|
|
if self.temp_file_to_append_on_close != None:
|
|
f_in = open(self.temp_file_to_append_on_close, "r")
|
|
while True:
|
|
line = f_in.readline()
|
|
if len(line) == 0:
|
|
break
|
|
self.write(line)
|
|
f_in.close()
|
|
|
|
self.file_close()
|
|
|
|
if self.output_block_numbers:
|
|
# number every line of the file afterwards
|
|
self.number_file(self.filename)
|
|
|
|
for f in self.subroutine_files:
|
|
self.number_file(f)
|
|
|
|
|
|
nc.creator = Creator()
|