Changeset 853


Ignore:
Timestamp:
Feb 19, 2013 10:27:54 AM (9 years ago)
Author:
vondreele
Message:

more rigid body stuff

Location:
trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/GSASIImath.py

    r851 r853  
    13561356        V3 = np.cross(V1,V2)
    13571357    else:
    1358         v3 = np.zero(3)
     1358        V3 = np.zeros(3)
    13591359    Q = np.array([1.0,0.0,0.0,0.0])
    13601360    D = 0.
  • trunk/GSASIIphsGUI.py

    r851 r853  
    11861186        for rbVec in rbData['Vector']:
    11871187            if rbVec != 'AtInfo':
    1188                 rbNames[rbData['Vector'][rbVec]['RBname']] =['Vector',rbVec]
     1188                rbNames[rbData['Vector'][rbVec]['RBname']] = ['Vector',rbVec]
    11891189        for rbRes in rbData['Residue']:
    11901190            if rbRes != 'AtInfo':
     
    31783178                data['testRBObj']['rbData'] = rbData
    31793179                data['testRBObj']['Sizers'] = {}
    3180                 if rbType == 'Vector':
    3181                     rbRef = [0,1,2]
    3182                 elif rbType == 'Residue':
    3183                     rbRef = rbData[rbType][rbId]['rbRef']
     3180                rbRef = rbData[rbType][rbId]['rbRef']
    31843181                data['testRBObj']['rbRef'] = rbRef
    31853182                refType = []
    31863183                refName = []
    3187                 for ref in rbRef:
     3184                for ref in rbRef[:3]:
    31883185                    reftype = data['testRBObj']['rbAtTypes'][ref]
    31893186                    refType.append(reftype)
     
    32303227                item = Indx[Obj.GetId()]
    32313228                atName = Obj.GetValue()
     3229                rbType = data['testRBObj']['rbType']
    32323230                atInd[0] = atNames[item][atName]
    3233                 data['testRBObj']['rbObj']['Orig'][0] = atomData[atNames[item][atName]][cx:cx+3]
     3231                if 'Vector' in rbType:
     3232                    rbObj = data['testRBObj']['rbObj']
     3233                    rbId = rbObj['RBId']
     3234                    rbRef = data['testRBObj']['rbRef']
     3235                    rbXYZ = -rbData[rbType][rbId]['rbXYZ']
     3236                    nref = atNames[item][atName]
     3237                    Oxyz = np.inner(Bmat,np.array(rbXYZ[rbRef[0]]))
     3238                    Nxyz = np.array(atomData[nref][cx:cx+3])
     3239                    data['testRBObj']['rbObj']['Orig'][0] = Nxyz-Oxyz   
     3240                else:           
     3241                    data['testRBObj']['rbObj']['Orig'][0] = atomData[atNames[item][atName]][cx:cx+3]
    32343242                Draw()
    32353243               
     
    32443252                rbRef = data['testRBObj']['rbRef']
    32453253                rbXYZ = rbData[rbType][rbId]['rbXYZ']
    3246                 VAR = rbXYZ[rbRef[1]]-rbXYZ[rbRef[0]]
    3247                 VBR = rbXYZ[rbRef[2]]-rbXYZ[rbRef[0]]
    3248                 Orig = np.array(data['testRBObj']['rbObj']['Orig'][0])               
     3254                rbOrig = rbXYZ[rbRef[0]]
     3255                VAR = rbXYZ[rbRef[1]]-rbOrig
     3256                VBR = rbXYZ[rbRef[2]]-rbOrig
     3257                if rbType == 'Vector':
     3258                    Orig = np.array(atomData[atInd[0]][cx:cx+3])
     3259                else:
     3260                    Orig = np.array(data['testRBObj']['rbObj']['Orig'][0])               
    32493261                VAC = np.inner(Amat,np.array(atomData[atInd[1]][cx:cx+3])-Orig)
    32503262                VBC = np.inner(Amat,np.array(atomData[atInd[2]][cx:cx+3])-Orig)
     
    32563268                QuatC = G2mth.prodQQ(QuatB,QuatA)
    32573269                data['testRBObj']['rbObj']['Orient'] = [QuatC,' ']
     3270                if rbType == 'Vector':
     3271                    Oxyz = np.inner(Bmat,G2mth.prodQVQ(QuatC,rbOrig))
     3272                    Nxyz = np.array(atomData[atInd[0]][cx:cx+3])
     3273                    data['testRBObj']['rbObj']['Orig'][0] = Nxyz-Oxyz
    32583274                Draw()
    32593275
     
    33263342                topSizer.Add((5,5),0)
    33273343                topSizer.Add(rbSel,0,wx.ALIGN_CENTER_VERTICAL)
    3328                 mainSizer.Add(topSizer)
    3329                
     3344                mainSizer.Add(topSizer)               
    33303345               
    33313346            OkBtn = wx.Button(RigidBodies,-1,"Ok")
  • trunk/GSASIIplot.py

    r851 r853  
    26292629    Gr = np.array([0,255,0])
    26302630    Bl = np.array([0,0,255])
     2631    Or = np.array([255,128,0])
    26312632    uBox = np.array([[0,0,0],[1,0,0],[1,1,0],[0,1,0],[0,0,1],[1,0,1],[1,1,1],[0,1,1]])
    26322633    uEdges = np.array([
     
    34603461#                RenderMapPeak(x,y,z,color,1.0)
    34613462                RenderBonds(x,y,z,rbBonds[ind],0.03,Gr)
    3462                 RenderLabel(x,y,z,name,0.2,Bl)
     3463                RenderLabel(x,y,z,name,0.2,Or)
    34633464        if Backbones:
    34643465            for chain in Backbones:
Note: See TracChangeset for help on using the changeset viewer.