# Création de fichier LightBurn pour des boites # 2 modèles de boite dans le fichier (horizontal et vertical) # Entrer les dimensions de la boite en cm et 1 pour du carton épais ou 0 sinon* # Exemple : 20 13 4 0 ou 30 19 4 1 # path = "D:\\Lightburn\\Cartons\\" # path = "C:\\Users\\irena\\Desktop\\Clé 3D\\Lightburn\Cartons\\" head = "Head.txt" thickhead = "Head_thick.txt" tail = "Tail.txt" print ("Génération de fichier LightBurn pour des boites en carton") print ("Entrez la taille de la boite : largeur longueur épaisseur (en cm) et épaisseur carton (0 ou 1)") size = input() dim = [float(x) for x in size.split()] if len(dim) == 3: dim.append(0) L0 = dim[0] W0 = dim[1] H0 = dim[2] T = dim[3] if L0 == int(L0): L0 = int(L0) if W0 == int(W0): W0 = int(W0) if H0 == int(H0): H0 = int(H0) ## Copy head of file name = "Boite "+str(L0)+"-"+str(W0)+"-"+str(H0) if T == 1: name = name + "e" h = open(path + thickhead, "r") else: h = open(path + head, "r") name = name + ".lbrn" LB = open(path + name, "w") for x in h: LB.write(x) h.close() L = int(L0 * 10) # mm W = int(W0 * 10) H = int(H0 * 10) T = 0 #T * 5 H = H + T ## Generate model # Boite horizontale LB.write (" CutIndex=\"0\"\n") LB.write (" 1 0 0 1 0 0\n") LB.write (" \n") LB.write (" \n") x = H + 46 y = H / 2 - 3 LB.write (" 1 0 0 1.0 "+str(x)+" "+str(y)+"\n") LB.write (" \n") LB.write (" CutIndex=\"0\"\n") LB.write (" 1 0 0 1 0 0\n") LB.write (" \n") LB.write (" \n") Xcenter = H + L/2 Ycenter = H + W/2 LB.write (" 1 0 0 1 " + str(int(Xcenter)) + " " + str(int(Ycenter)) + "\n") LB.write (" \n") ## LB.write (" \n") Xcenter = 2*H + 3*L/2 Ycenter = H + W/2 LB.write (" 1 0 0 1 " + str(int(Xcenter)) + " " + str(int(Ycenter)) + "\n") LB.write (" \n") LB.write (" \n") LB.write (" \n") ## LB.write (" \n") LB.write (" 1 0 0 1 0 0\n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write (" \n") LB.write (" \n") LB.write (" \n") ## Second box # Boite verticale if L0 != W0: Ydecal = 2*H + W + 10 # met le second modèle sous le premier LB.write (" \n") LB.write (" 1 0 0 1 0 " + str(int(Ydecal)) + "\n") LB.write (" \n") LB.write (" \n") #y = y + Ydecal LB.write (" 1 0 0 1.0 "+str(x)+" "+str(y)+"\n") LB.write (" \n") LB.write (" \n") LB.write (" 1 0 0 1 0 0\n") LB.write (" \n") LB.write (" \n") Xcenter = H + L/2 Ycenter = H + W/2 LB.write (" 1 0 0 1 " + str(int(Xcenter)) + " " + str(int(Ycenter)) + "\n") LB.write (" \n") ## LB.write (" \n") Xcenter = H + L/2 Ycenter = 2*H + 3*W/2 LB.write (" 1 0 0 1 " + str(int(Xcenter)) + " " + str(int(Ycenter)) + "\n") LB.write (" \n") LB.write (" \n") LB.write (" \n") ## LB.write (" \n") LB.write (" 1 0 0 1 0 0\n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write (" \n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write ("

\n") LB.write (" \n") LB.write (" \n") LB.write (" \n") ## Copy tail of file t = open(path + tail, "r") for x in t: LB.write(x) t.close() LB.close()