def OnCutMesh(self, e): dlg = wx.FileDialog( self, "Open file to cut", os.path.split(profile.getPreference("lastFile"))[0], style=wx.FD_OPEN | wx.FD_FILE_MUST_EXIST, ) dlg.SetWildcard(meshLoader.wildcardFilter()) if dlg.ShowModal() == wx.ID_OK: filename = dlg.GetPath() model = meshLoader.loadMesh(filename) pd = wx.ProgressDialog( "Splitting model.", "Splitting model into multiple parts.", model.vertexCount, self, wx.PD_ELAPSED_TIME | wx.PD_REMAINING_TIME | wx.PD_SMOOTH, ) parts = model.splitToParts(pd.Update) for part in parts: partFilename = filename[: filename.rfind(".")] + "_part%d.stl" % (parts.index(part)) stl.saveAsSTL(part, partFilename) item = ProjectObject(self, partFilename) self.list.append(item) self.selection = item self._updateListbox() self.OnListSelect(None) pd.Destroy() self.preview.Refresh() dlg.Destroy()
def OnCutMesh(self, e): dlg = wx.FileDialog(self, "Open file to cut", os.path.split( profile.getPreference('lastFile'))[0], style=wx.FD_OPEN | wx.FD_FILE_MUST_EXIST) dlg.SetWildcard(meshLoader.wildcardFilter()) if dlg.ShowModal() == wx.ID_OK: filename = dlg.GetPath() model = meshLoader.loadMesh(filename) pd = wx.ProgressDialog( 'Splitting model.', 'Splitting model into multiple parts.', model.vertexCount, self, wx.PD_ELAPSED_TIME | wx.PD_REMAINING_TIME | wx.PD_SMOOTH) parts = model.splitToParts(pd.Update) for part in parts: partFilename = filename[:filename.rfind( '.')] + "_part%d.stl" % (parts.index(part)) stl.saveAsSTL(part, partFilename) item = ProjectObject(self, partFilename) self.list.append(item) self.selection = item self._updateListbox() self.OnListSelect(None) pd.Destroy() self.glCanvas.Refresh() dlg.Destroy()
def _showOpenDialog(self, title, wildcard = meshLoader.wildcardFilter()): dlg=wx.FileDialog(self, title, os.path.split(profile.getPreference('lastFile'))[0], style=wx.FD_OPEN|wx.FD_FILE_MUST_EXIST) dlg.SetWildcard(wildcard) if dlg.ShowModal() == wx.ID_OK: filename = dlg.GetPath() dlg.Destroy() if not(os.path.exists(filename)): return False profile.putPreference('lastFile', filename) return filename dlg.Destroy() return False
def OnAddModel(self, e): dlg=wx.FileDialog(self, "Open file to print", os.path.split(profile.getPreference('lastFile'))[0], style=wx.FD_OPEN|wx.FD_FILE_MUST_EXIST|wx.FD_MULTIPLE) dlg.SetWildcard(meshLoader.wildcardFilter()) if dlg.ShowModal() == wx.ID_OK: for filename in dlg.GetPaths(): item = ProjectObject(self, filename) profile.putPreference('lastFile', item.filename) self.list.append(item) self.selection = item self._updateListbox() self.OnListSelect(None) self.preview.Refresh() dlg.Destroy()
def OnLoadModel(self, e): dlg = wx.FileDialog( self, "Open file to print", os.path.split(profile.getPreference("lastFile"))[0], style=wx.FD_OPEN | wx.FD_FILE_MUST_EXIST, ) dlg.SetWildcard(meshLoader.wildcardFilter()) if dlg.ShowModal() == wx.ID_OK: self.filelist = [dlg.GetPath()] profile.putPreference("lastFile", ";".join(self.filelist)) self.preview3d.loadModelFiles(self.filelist, True) self.preview3d.setViewMode("Normal") dlg.Destroy()
def _showOpenDialog(self, title, wildcard=meshLoader.wildcardFilter()): dlg = wx.FileDialog(self, title, os.path.split( profile.getPreference('lastFile'))[0], style=wx.FD_OPEN | wx.FD_FILE_MUST_EXIST) dlg.SetWildcard(wildcard) if dlg.ShowModal() == wx.ID_OK: filename = dlg.GetPath() dlg.Destroy() if not (os.path.exists(filename)): return False profile.putPreference('lastFile', filename) return filename dlg.Destroy() return False
def OnAddModel(self, e): dlg = wx.FileDialog( self, "Open file to print", os.path.split(profile.getPreference('lastFile'))[0], style=wx.FD_OPEN | wx.FD_FILE_MUST_EXIST | wx.FD_MULTIPLE) dlg.SetWildcard(meshLoader.wildcardFilter()) if dlg.ShowModal() == wx.ID_OK: for filename in dlg.GetPaths(): item = ProjectObject(self, filename) profile.putPreference('lastFile', item.filename) self.list.append(item) self.selection = item self._updateListbox() self.OnListSelect(None) self.glCanvas.Refresh() dlg.Destroy()