diff --git a/plater.py b/plater.py index 10cbc1b..509edcb 100755 --- a/plater.py +++ b/plater.py @@ -81,6 +81,7 @@ class showstl(wx.Window): stltool.emitstl(name,facets,"plater_export") print "wrote ",name +<<<<<<< HEAD def testingloadfile(self,name): print name if not(os.path.exists(name)): @@ -170,26 +171,27 @@ class showstl(wx.Window): centreoffset = [self.models[i].dims[0] + centre[0], self.models[i].dims[2] + centre[1]] if (newrow == 0) or (newrow < y): newrow = y + if (cursor[0]+x+separation) >= bedsize[0]: + cursor[0] = 0 + cursor[1] += newrow+separation + newrow = 0 + #To the person who works out why the offsets are applied differently here: # Good job, it confused the hell out of me. self.models[i].offsets[0] = cursor[0] + centre[0] - centreoffset[0] self.models[i].offsets[1] = cursor[1] + centre[1] + centreoffset[1] cursor[0] += x+separation - if cursor[0] >= bedsize[0]: - cursor[0] = 0 - cursor[1] += newrow+separation - newrow = 0 - self.models[i].offsets[0] = cursor[0] + centre[0] - centreoffset[0] - self.models[i].offsets[1] = cursor[1] + centre[1] + centreoffset[1] - cursor[0] += x+separation if (cursor[1]+y) >= bedsize[1]: print "Bed full, sorry sir :(" self.Refresh() return + centreoffset = [bedsize[0]-cursor[0],bedsize[1]-cursor[1]] + for i in self.models: + self.models[i].offsets[0] += centreoffset[0] + self.models[i].offsets[1] += centreoffset[1] + self.Refresh() - - def right(self,event): dlg=wx.FileDialog(self,"Open file to print",self.basedir,style=wx.FD_OPEN|wx.FD_FILE_MUST_EXIST) dlg.SetWildcard("STL files (;*.stl;)")