本文整理汇总了C++中MolAtomPtr::getConfID方法的典型用法代码示例。如果您正苦于以下问题:C++ MolAtomPtr::getConfID方法的具体用法?C++ MolAtomPtr::getConfID怎么用?C++ MolAtomPtr::getConfID使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MolAtomPtr
的用法示例。
在下文中一共展示了MolAtomPtr::getConfID方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: toStrAID
/// Convert aid to (persistent) string representation
LString MolCoord::toStrAID(int atomid) const
{
MolAtomPtr pAtom = getAtom(atomid);
if (pAtom.isnull()) return LString();
LString value = LString::format("%s.%s.%s",
pAtom->getChainName().c_str(),
pAtom->getResIndex().toString().c_str(),
pAtom->getName().c_str());
char conf_id = pAtom->getConfID();
if (conf_id)
value += ":" + LString(conf_id);
return value;
}
示例2: removeAtom
bool MolCoord::removeAtom(int atomid)
{
MolAtomPtr pAtom = getAtom(atomid);
if (pAtom.isnull() || pAtom->getParentUID()!=getUID())
return false;
m_atomPool.remove(atomid);
// invalidate ID
pAtom->setID(-1);
const LString &aname = pAtom->getName();
char cConfID = pAtom->getConfID();
ResidIndex nresid = pAtom->getResIndex();
const LString &cname = pAtom->getChainName();
MolChainPtr pCh = getChain(cname);
if (pCh.isnull())
return false;
MolResiduePtr pRes = getResidue(cname, nresid);
if (pRes.isnull())
return false;
// remove atom
if (!pRes->removeAtom(aname, cConfID))
return false;
if (pRes->getAtomSize()>0)
return true;
// purge the empty residue
if (!pCh->removeResidue(nresid))
return false;
// delete pRes;
if (pCh->getSize()>0)
return true;
// purge the empty chain
if (!removeChain(cname))
return false;
// delete pCh;
return true;
}
示例3: formatAtomName
LString PDBFileWriter::formatAtomName(MolAtomPtr pAtom)
{
LString atomnam = pAtom->getName();
char cConfID = pAtom->getConfID();
int elem = pAtom->getElement();
if (cConfID=='\0')
cConfID = ' ';
// invalid name case
if (atomnam.length()>=4||
elem==ElemSym::XX) {
return LString::format("%4s%c", atomnam.c_str(), cConfID);
}
LString elenam = ElemSym::symID2Str(elem);
elenam = elenam.toUpperCase();
int elepos = atomnam.indexOf(elenam);
if (elepos<0) {
return LString::format("%4s%c", atomnam.c_str(), cConfID);
}
LString atommod;
// if (atomnam.equals(elenam)) {
// // atom name==elem name
// shead += LString::format(" %2s ", elenam.c_str());
// break;
// }
elepos += elenam.length();
atommod = atomnam.substr(elepos);
elenam = atomnam.substr(0, elepos);
if (atommod.length()<=2) {
return LString::format("%2s%-2s%c",
elenam.c_str(), atommod.c_str(), cConfID);
}
return LString::format("%4s%c", atomnam.c_str(), cConfID);
}