Commit 8a0e7bf8358f9c02503a694f5e3bd657c2c54202

Authored by tatiana
1 parent c70b9576

ENC: Write inv3 file

Showing 2 changed files with 7 additions and 32 deletions   Show diff stats
invesalius/control.py
... ... @@ -16,8 +16,6 @@
16 16 # PARTICULAR. Consulte a Licenca Publica Geral GNU para obter mais
17 17 # detalhes.
18 18 #--------------------------------------------------------------------------
19   -from mimetools import temp
20   -
21 19 import math
22 20 import os
23 21 import plistlib
... ... @@ -256,8 +254,8 @@ class Controller():
256 254  
257 255 def OnSaveProject(self, pubsub_evt):
258 256 filename = prj.Project().name
259   - directory = tempfile.mkdtemp(filename)
260   - prj.Project().SavePlistProject(os.path.join(directory,filename))
  257 + dir_ = tempfile.mkdtemp(filename)
  258 + prj.Project().SavePlistProject(dir_, filename)
261 259  
262 260  
263 261  
... ...
invesalius/project.py
... ... @@ -130,7 +130,8 @@ class Project(object):
130 130 preset = plistlib.readPlist(path)
131 131 ps.Publisher.sendMessage('Set raycasting preset', preset)
132 132  
133   - def SavePlistProject(self, filename):
  133 + def SavePlistProject(self, dir_, filename):
  134 + filename = os.path.join(dir_, filename)
134 135 project = {}
135 136  
136 137 for key in self.__dict__:
... ... @@ -156,32 +157,8 @@ class Project(object):
156 157 project['imagedata'] = img_file
157 158  
158 159 plistlib.writePlist(project, filename + '.plist')
159   -
160   - def SavePlistProjectOld(self, filename, dict_object=None):
161   - if dict_object is None:
162   - dict_object = self.__dict__
163   - supported_types = (str, int, float, bool, tuple, list,
164   - plistlib.Data)
165   - project = {}
166   - for key in dict_object:
167   - prop = dict_object[key]
168   - if isinstance(prop, supported_types):
169   - project[str(key)] = prop
170   - elif isinstance(prop, dict):
171   - project[str(key)] = self.SavePlistProject('%s$%s' % (filename,
172   - key), prop)
173   - elif isinstance(prop, vtk.vtkImageData):
174   - img_name = '%s_%s' % (key, filename)
175   - img_file = iu.Export(prop, img_name, bin=True)
176   - project[str(key)] = {'imagedatafile': img_file}
177   - elif isinstance(prop, vtk.vtkPolyData):
178   - pd_name = '%s_%s' % (key, filename)
179   - pd_file = pu.Export(prop, pd_name, bin=True)
180   - project[str(key)] = {'polydatafile': pd_file}
181   - else:
182   - project[str(key)] = {'plistfile': self.SavePlistProject("%s$%s" % (filename, key), prop.__dict__)}
183   - print project
184   - plistlib.writePlist(project, filename)
  160 +
  161 + Compress(dir_, "teste.inv3")#os.path.join("~/Desktop/","teste.inv3"))
185 162  
186 163 def OpenPlistProject(self, filename):
187 164 project = plistlib.readPlist(filename)
... ... @@ -209,4 +186,4 @@ def Extract(filename, folder):
209 186 tar = tarfile.open(filename, "r:gz")
210 187 tar.list(verbose=True)
211 188 tar.extractall(folder)
212   - tar.close()
213 189 \ No newline at end of file
  190 + tar.close()
... ...