/// <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); }