Exemple #1
0
        /// <summary>
        /// Generate the atom container with this permutation of the atoms.
        /// </summary>
        /// <param name="permutation">the permutation to use</param>
        /// <returns></returns>
        public override IAtomContainer ContainerFromPermutation(int[] permutation)
        {
            IAtomContainer permutedContainer = (IAtomContainer)AtomContainer.Clone();

            IAtom[] atoms = new IAtom[AtomContainer.Atoms.Count];
            for (int i = 0; i < AtomContainer.Atoms.Count; i++)
            {
                atoms[permutation[i]] = permutedContainer.Atoms[i];
            }
            permutedContainer.SetAtoms(atoms);
            return(permutedContainer);
        }