@Test public void testRingSizeMatch() throws InvalidSmilesException { SmilesParser sp = new SmilesParser(DefaultChemObjectBuilder.getInstance()); IAtomContainer target = sp.parseSmiles("C1=CC2=C3C(C=CC4=CC=CC(C=C2)=C34)=C1"); IAtomContainer query = sp.parseSmiles("C1\\C=C/C=C/C=C\\C2=CC=CC(=C2)\\C=C/1"); Isomorphism smsd = new Isomorphism(query, target, Algorithm.VFLibMCS, true, true, false); assertEquals(15, query.getAtomCount()); assertEquals(16, target.getAtomCount()); assertNotNull(smsd.getFirstAtomMapping()); assertEquals(6, smsd.getFirstAtomMapping().getCount()); }
@Override public synchronized AtomAtomMapping getFirstAtomMapping() { if (allAtomMCS.iterator().hasNext()) { return allAtomMCS.iterator().next(); } return new AtomAtomMapping(getReactantMol(), getProductMol()); }
VF2MCS extends BaseMCS implements IResults { @Override public synchronized AtomAtomMapping getFirstAtomMapping() { if (allAtomMCS.iterator().hasNext()) { return allAtomMCS.iterator().next(); } return new AtomAtomMapping(getReactantMol(), getProductMol()); } }
VF2MCS extends BaseMCS implements IResults { @Override public synchronized AtomAtomMapping getFirstAtomMapping() { if (allAtomMCS.iterator().hasNext()) { return allAtomMCS.iterator().next(); } return new AtomAtomMapping(getReactantMol(), getProductMol()); } VF2MCS(IAtomContainer source, IAtomContainer target, boolean shouldMatchBonds, boolean shouldMatchRings, boolean matchAtomType);  VF2MCS(IQueryAtomContainer source, IAtomContainer target);  VF2MCS(IQueryAtomContainer source, IQueryAtomContainer target); }
VF2MCS extends BaseMCS implements IResults { @Override public synchronized AtomAtomMapping getFirstAtomMapping() { if (allAtomMCS.iterator().hasNext()) { return allAtomMCS.iterator().next(); } return new AtomAtomMapping(getReactantMol(), getProductMol()); } VF2MCS(IAtomContainer source, IAtomContainer target, boolean shouldMatchBonds, boolean shouldMatchRings, boolean matchAtomType);  VF2MCS(IQueryAtomContainer source, IAtomContainer target);  VF2MCS(IQueryAtomContainer source, IQueryAtomContainer target); @Override synchronized List<AtomAtomMapping> getAllAtomMapping(); @Override synchronized AtomAtomMapping getFirstAtomMapping(); }
VF2MCS extends BaseMCS implements IResults { @Override public synchronized AtomAtomMapping getFirstAtomMapping() { if (allAtomMCS.iterator().hasNext()) { return allAtomMCS.iterator().next(); } return new AtomAtomMapping(getReactantMol(), getProductMol()); } VF2MCS(IAtomContainer source, IAtomContainer target, boolean shouldMatchBonds, boolean shouldMatchRings, boolean matchAtomType);  VF2MCS(IQueryAtomContainer source, IAtomContainer target);  VF2MCS(IQueryAtomContainer source, IQueryAtomContainer target); @Override synchronized List<AtomAtomMapping> getAllAtomMapping(); @Override synchronized AtomAtomMapping getFirstAtomMapping();  }