本文整理汇总了C++中Mol::getBondBetweenAtoms方法的典型用法代码示例。如果您正苦于以下问题:C++ Mol::getBondBetweenAtoms方法的具体用法?C++ Mol::getBondBetweenAtoms怎么用?C++ Mol::getBondBetweenAtoms使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Mol
的用法示例。
在下文中一共展示了Mol::getBondBetweenAtoms方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: test3
//.........这里部分代码省略.........
m.addBond(3, 4, Bond::DOUBLE);
m.addBond(4, 5, Bond::SINGLE);
m.addBond(5, 0, Bond::DOUBLE);
m.addBond(5, 6, Bond::SINGLE);
MolOps::sanitizeMol(m);
ATOM_EQUALS_QUERY *aeq = makeAtomExplicitDegreeQuery(3);
CHECK_INVARIANT(!aeq->Match(m.getAtomWithIdx(0)), "");
CHECK_INVARIANT(!aeq->Match(m.getAtomWithIdx(1)), "");
CHECK_INVARIANT(aeq->Match(m.getAtomWithIdx(5)), "");
CHECK_INVARIANT(!aeq->Match(m.getAtomWithIdx(6)), "");
delete aeq;
aeq = makeAtomExplicitDegreeQuery(2);
CHECK_INVARIANT(aeq->Match(m.getAtomWithIdx(0)), "");
CHECK_INVARIANT(aeq->Match(m.getAtomWithIdx(1)), "");
CHECK_INVARIANT(!aeq->Match(m.getAtomWithIdx(5)), "");
CHECK_INVARIANT(!aeq->Match(m.getAtomWithIdx(6)), "");
delete aeq;
aeq = makeAtomHCountQuery(1);
CHECK_INVARIANT(aeq->Match(m.getAtomWithIdx(0)), "");
CHECK_INVARIANT(aeq->Match(m.getAtomWithIdx(1)), "");
CHECK_INVARIANT(!aeq->Match(m.getAtomWithIdx(5)), "");
CHECK_INVARIANT(!aeq->Match(m.getAtomWithIdx(6)), "");
delete aeq;
aeq = makeAtomInNRingsQuery(1);
CHECK_INVARIANT(aeq->Match(m.getAtomWithIdx(0)), "");
CHECK_INVARIANT(aeq->Match(m.getAtomWithIdx(1)), "");
CHECK_INVARIANT(aeq->Match(m.getAtomWithIdx(5)), "");
CHECK_INVARIANT(!aeq->Match(m.getAtomWithIdx(6)), "");
delete aeq;
aeq = makeAtomInNRingsQuery(0);
CHECK_INVARIANT(!aeq->Match(m.getAtomWithIdx(0)), "");
CHECK_INVARIANT(!aeq->Match(m.getAtomWithIdx(1)), "");
CHECK_INVARIANT(!aeq->Match(m.getAtomWithIdx(5)), "");
CHECK_INVARIANT(aeq->Match(m.getAtomWithIdx(6)), "");
delete aeq;
aeq = makeAtomAromaticQuery();
CHECK_INVARIANT(aeq->Match(m.getAtomWithIdx(0)), "");
CHECK_INVARIANT(aeq->Match(m.getAtomWithIdx(1)), "");
CHECK_INVARIANT(aeq->Match(m.getAtomWithIdx(5)), "");
CHECK_INVARIANT(!aeq->Match(m.getAtomWithIdx(6)), "");
delete aeq;
aeq = makeAtomAliphaticQuery();
CHECK_INVARIANT(!aeq->Match(m.getAtomWithIdx(0)), "");
CHECK_INVARIANT(!aeq->Match(m.getAtomWithIdx(1)), "");
CHECK_INVARIANT(!aeq->Match(m.getAtomWithIdx(5)), "");
CHECK_INVARIANT(aeq->Match(m.getAtomWithIdx(6)), "");
delete aeq;
aeq = makeAtomInRingQuery();
CHECK_INVARIANT(aeq->Match(m.getAtomWithIdx(0)), "");
CHECK_INVARIANT(aeq->Match(m.getAtomWithIdx(1)), "");
CHECK_INVARIANT(aeq->Match(m.getAtomWithIdx(5)), "");
CHECK_INVARIANT(!aeq->Match(m.getAtomWithIdx(6)), "");
aeq->setNegation(true);
CHECK_INVARIANT(!aeq->Match(m.getAtomWithIdx(0)), "");
CHECK_INVARIANT(!aeq->Match(m.getAtomWithIdx(1)), "");
CHECK_INVARIANT(!aeq->Match(m.getAtomWithIdx(5)), "");
CHECK_INVARIANT(aeq->Match(m.getAtomWithIdx(6)), "");
delete aeq;
aeq = makeAtomInRingOfSizeQuery(6);
CHECK_INVARIANT(aeq->Match(m.getAtomWithIdx(0)), "");
CHECK_INVARIANT(aeq->Match(m.getAtomWithIdx(1)), "");
CHECK_INVARIANT(aeq->Match(m.getAtomWithIdx(5)), "");
CHECK_INVARIANT(!aeq->Match(m.getAtomWithIdx(6)), "");
aeq->setNegation(true);
CHECK_INVARIANT(!aeq->Match(m.getAtomWithIdx(0)), "");
CHECK_INVARIANT(!aeq->Match(m.getAtomWithIdx(1)), "");
CHECK_INVARIANT(!aeq->Match(m.getAtomWithIdx(5)), "");
CHECK_INVARIANT(aeq->Match(m.getAtomWithIdx(6)), "");
delete aeq;
aeq = makeAtomInRingOfSizeQuery(5);
CHECK_INVARIANT(!aeq->Match(m.getAtomWithIdx(0)), "");
CHECK_INVARIANT(!aeq->Match(m.getAtomWithIdx(1)), "");
CHECK_INVARIANT(!aeq->Match(m.getAtomWithIdx(5)), "");
CHECK_INVARIANT(!aeq->Match(m.getAtomWithIdx(6)), "");
aeq->setNegation(true);
CHECK_INVARIANT(aeq->Match(m.getAtomWithIdx(0)), "");
CHECK_INVARIANT(aeq->Match(m.getAtomWithIdx(1)), "");
CHECK_INVARIANT(aeq->Match(m.getAtomWithIdx(5)), "");
CHECK_INVARIANT(aeq->Match(m.getAtomWithIdx(6)), "");
delete aeq;
BOND_EQUALS_QUERY *beq = makeBondIsInRingQuery();
CHECK_INVARIANT(beq->Match(m.getBondWithIdx(0)), "");
CHECK_INVARIANT(!beq->Match(m.getBondWithIdx(6)), "");
CHECK_INVARIANT(beq->Match(m.getBondBetweenAtoms(0, 1)), "");
CHECK_INVARIANT(beq->Match(m.getBondBetweenAtoms(1, 0)), "");
CHECK_INVARIANT(!beq->Match(m.getBondBetweenAtoms(5, 6)), "");
CHECK_INVARIANT(!beq->Match(m.getBondBetweenAtoms(6, 5)), "");
BOOST_LOG(rdErrorLog) << "Done!" << std::endl;
}