public static Dictionary <SymmetryType, int> GetSymmetries(this Tableau tableau, NodePair nodePair)
 {
     return(tableau.Shape.SymmetryTransformations
            .Where(symmetry =>
                   nodePair.Node1.Coordinates == symmetry.Transform(nodePair.Node2.Coordinates) &&
                   nodePair.Node2.Coordinates == symmetry.Transform(nodePair.Node1.Coordinates))
            .GroupBy(symmetry => symmetry.SymmetryType)
            .ToDictionary(
                group => group.Key,
                group => group.Count()));
 }
示例#2
0
 public abstract Func <Step, IEnumerable <byte[]> > GetEquivalentPathsDelegate(NodePair nodePair);