Exemplo n.º 1
0
def load_particles_from_spatiocyte(filename, index=0, ps=None):
    if not os.path.isfile(filename):
        return ps

    try:
        reader = SpatiocyteLogReader(filename)
        if ps is None:
            header = reader.getHeader()
            col_size = header['aColSize']
            row_size = header['aRowSize']
            layer_size = header['aLayerSize']
            lspecies = header['latticeSpecies']
            voxel_radius = header['aVoxelRadius']
            ps = LatticeParticleSpace(col_size, row_size, layer_size, lspecies,
                                      voxel_radius)
        species = reader.skipSpeciesTo(index)
        molecules = species['Molecules']
        #debug("index : %d" % index)
        for sp in molecules:
            sid = sp['index']
            for coord in sp['Coords']:
                ps.add_particle(LatticeParticle(sid, coord))
    finally:
        reader.close()
    return ps
def load_particles_from_spatiocyte(filename, index=0, ps=None):
    if not os.path.isfile(filename):
        return ps

    try:
        reader = SpatiocyteLogReader(filename)
        if ps is None:
            header = reader.getHeader()
            col_size = header['aColSize']
            row_size = header['aRowSize']
            layer_size = header['aLayerSize']
            lspecies = header['latticeSpecies']
            voxel_radius = header['aVoxelRadius']
            ps = LatticeParticleSpace(col_size, row_size, layer_size,
                    lspecies, voxel_radius)
        species = reader.skipSpeciesTo(index)
        molecules = species['Molecules'];
        #debug("index : %d" % index)
        for sp in molecules:
            sid = sp['index']
            for coord in sp['Coords']:
                ps.add_particle(LatticeParticle(sid, coord))
    finally:
        reader.close()
    return ps