Changed name of file writing method. Added method for writing gprMax XML materials to file.

这个提交包含在:
craig-warren
2016-03-13 12:35:55 +00:00
父节点 5c5cab2be0
当前提交 c2c9f2ad6d

查看文件

@@ -52,7 +52,7 @@ class GeometryView:
self.filename = filename
self.type = type
def write_file(self, modelrun, numbermodelruns, G):
def write_vtk(self, modelrun, numbermodelruns, G):
"""Writes the geometry information to a VTK file. Either ImageData (.vti) for a per cell geometry view, or PolygonalData (.vtp) for a per cell edge geometry view.
Args:
@@ -101,11 +101,7 @@ class GeometryView:
f.write(pack('I', G.solid[i, j, k]))
f.write('\n</AppendedData>\n</VTKFile>'.encode('utf-8'))
# Write gprMax specific information which relates material name to material numeric identifier
f.write('\n\n<gprMax>\n'.encode('utf-8'))
for material in G.materials:
f.write('<Material name="{}">{}</Material>\n'.format(material.ID, material.numID).encode('utf-8'))
f.write('</gprMax>\n'.encode('utf-8'))
self.write_materials(f, G.materials)
elif self.type == 'f':
self.filename += '.vtp'
@@ -197,10 +193,19 @@ class GeometryView:
f.write('\n</AppendedData>\n</VTKFile>'.encode('utf-8'))
# Write gprMax specific information which relates material name to material numeric identifier
f.write('\n\n<gprMax>\n'.encode('utf-8'))
for material in G.materials:
f.write('<Material name="{}">{}</Material>\n'.format(material.ID, material.numID).encode('utf-8'))
f.write('</gprMax>\n'.encode('utf-8'))
self.write_materials(f, G.materials)
def write_materials(self, f, materials):
"""Writes gprMax specific information which relates material name to material numeric identifier.
Args:
f (filehandle): VTK file.
materials (list): Materials in the model.
"""
f.write('\n\n<gprMax>\n'.encode('utf-8'))
for material in materials:
f.write('<Material name="{}">{}</Material>\n'.format(material.ID, material.numID).encode('utf-8'))
f.write('</gprMax>\n'.encode('utf-8'))