public CHexagramValueSequencer(ref CHexagramValueSequencer hvs) : this(0) { Trigram(1).Line(2).Value = hvs.Trigram(1).Line(2).Value; Trigram(1).Line(1).Value = hvs.Trigram(1).Line(1).Value; Trigram(1).Line(0).Value = hvs.Trigram(1).Line(0).Value; Trigram(0).Line(2).Value = hvs.Trigram(0).Line(2).Value; Trigram(0).Line(1).Value = hvs.Trigram(0).Line(1).Value; Trigram(0).Line(0).Value = hvs.Trigram(0).Line(0).Value; Trigram(1).Line(2).UpdateInnerValues(); Trigram(1).Line(1).UpdateInnerValues(); Trigram(1).Line(0).UpdateInnerValues(); Trigram(0).Line(2).UpdateInnerValues(); Trigram(0).Line(1).UpdateInnerValues(); Trigram(0).Line(0).UpdateInnerValues(); Trigram(1).Line(2).UpdateOuterValues(); Trigram(1).Line(1).UpdateOuterValues(); Trigram(1).Line(0).UpdateOuterValues(); Trigram(0).Line(2).UpdateOuterValues(); Trigram(0).Line(1).UpdateOuterValues(); Trigram(0).Line(0).UpdateOuterValues(); //UpdateInnerValues(); //UpdateOuterValues(); }
public CHexagramValueSequencer AutoCast(ref CHexagramValueSequencer hvs) //////// Random ????????????????????????????? { Random r = true ? Sequences.m_ranSession : new Random(DateTime.Now.Millisecond); for (int l = 0; l < 6; ++l) { int count = (r.Next(5) + 1) * 100 + r.Next(100); for (int c = 0; c < count; ++c) { hvs.Trigram(l / 3).Line(l % 3).Next(true); } } return(hvs); }
public CHexagramArray() { CHexagramValueSequencer hvsPrimary = new CHexagramValueSequencer(0); hvsPrimary.First(); for (int p = 0; p < 64; ++p) { for (int s = 0; s < 64; ++s) { CHexagramValueSequencer hvs = new CHexagramValueSequencer(ref hvsPrimary); for (int l = 0; l < 6; ++l) { if (((s & (1 << l)) >> l) == 1) { hvs.Trigram(l / 3).Line(l % 3).Next(false); } } Add(ref hvs); } hvsPrimary.Next(); } Array.Sort(m_arrHexagram); }