Exemplo n.º 1
0
def convertCoords2PL(coordinate_files,
                     particleList_file,
                     subtomoPrefix=None,
                     wedgeAngles=None,
                     angleList=False):
    pl = ParticleList()
    for n, coordinate_file in enumerate(coordinate_files):
        wedgeAngle = wedgeAngles[2 * n:2 * (n + 1)]
        sourceInfo = pl.loadCoordinateFileHeader(coordinate_file)
        l2 = len(pl)
        pl.loadCoordinateFile(filename=coordinate_file,
                              name_prefix=subtomoPrefix[n],
                              wedgeAngle=wedgeAngle,
                              sourceInfo=sourceInfo)

        try:
            cc = 180. / numpy.pi
            for i in range(len(pl) - l2):
                z1, z2, x = random.choice(angleList)
                pl[-i - 1].setRotation(rotation=Rotation(
                    z1=z1 * cc, z2=z2 * cc, x=x * cc, paradigm='ZXZ'))
        except:
            pass
    pl.toXMLFile(particleList_file)