Package entities :: Module SlicedModel'
[hide private]
[frames] | no frames]

Source Code for Module entities.SlicedModel'

 1  from collections import OrderedDict 
 2  from config import config 
 3  from StringIO import StringIO 
 4  import gcodes 
 5  import math 
 6  import sys 
 7  import time 
 8  from RuntimeParameters import RuntimeParameters 
 9  from GcodeCommand import GcodeCommand  
10   
11 -class SlicedModel:
12 '''Runtime data for conversion of 3D model to gcode.''' 13
14 - def __init__(self):
15 16 self.runtimeParameters = RuntimeParameters() 17 self.layers = OrderedDict() 18 19 self.startGcodeCommands = [] 20 self.endGcodeCommands = [] 21 self.elementOffsets = None 22 23 self.svgText = None 24 self.carvingCornerMaximum = None 25 self.carvingCornerMinimum = None 26 27 # Can we remove this after reading the carving once the layers have been generated?? 28 self.rotatedLoopLayers = []
29
30 - def __str__(self):
31 '''Get the string representation.''' 32 output = StringIO() 33 34 output.write("\nRuntimeParameters:\n%s\n" % vars(self.runtimeParameters)) 35 36 output.write("\nelementOffsets: %s\n" % self.elementOffsets) 37 38 output.write("\nrotatedLoopLayers:\n") 39 for rotatedLoopLayer in self.rotatedLoopLayers: 40 output.write('%s\n' % vars(rotatedLoopLayer)) 41 42 output.write("\nstartGcodeCommands:\n") 43 for startGcodeCommand in self.startGcodeCommands: 44 output.write(GcodeCommand.printCommand(startGcodeCommand, self.runtimeParameters.verboseGcode)) 45 46 output.write("\nlayers:\n") 47 for key in sorted(self.layers.iterkeys()): 48 output.write('%s\n' % self.layers[key]) 49 50 output.write("\nendGcodeCommands:\n") 51 for endGcodeCommand in self.endGcodeCommands: 52 output.write(GcodeCommand.printCommand(endGcodeCommand, self.runtimeParameters.verboseGcode)) 53 54 return output.getvalue()
55