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 main():
    '''
    main function
    '''
    if (len(sys.argv) != 2):
        print "USAGE: python %s filename" % sys.argv[0]
        return

    name = sys.argv[1]
    if (not os.path.exists(name)):
        print "%s does not exist!" % name
        return

    reader = SpatiocyteLogReader(name)

    header = reader.header
    print '[header]\t', header

    indexSize = reader.getIndexSize()
    index = indexSize - 1
    print "LastSeek : %d, FooterSeek : %d" % (reader.tell(), reader.footerSeek)
    print "Index : %d" % index
    species = reader.skipSpeciesTo(index)
    for spiece in species['Molecules']:
        print spiece

    reader.close()
Exemplo n.º 3
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 main():
    '''
    main function
    '''
    if (len(sys.argv) != 2):
        print "USAGE: python %s filename" % sys.argv[0]
        return

    name = sys.argv[1]
    if (not os.path.exists(name)):
        print "%s does not exist!" % name
        return

    reader = SpatiocyteLogReader(name)

    header = reader.header
    print '[header]\t',header

    indexSize = reader.getIndexSize()
    index = indexSize - 1
    print "LastSeek : %d, FooterSeek : %d" % (reader.tell(), reader.footerSeek)
    print "Index : %d" % index
    species = reader.skipSpeciesTo(index)
    for spiece in species['Molecules']:
        print spiece

    reader.close()