private void InitData() { CheckUser(); string loginName = Session["userID"].ToString(); Users user = new Users(); user.LoadData(loginName); //LabelTree.Text = "ÄúºÃ:" + user.UserName + "<hr>"; string sql = "Select * from ReportTreeMenu Where [Duty] in ("; foreach (string duty in user.Duties) { sql += SQLString.GetQuotedString(duty) + ","; } sql += "'#')"; DataBase db = new DataBase(); DataTable dt = db.GetDataTable(sql); Tree2 tree = new Tree2("------------ Kypera Report Lists ------------"); LabelTree.Text += tree.CreateTree2(dt); }
public void TestForAdd3() { Tree2 tree = new Tree2(10); tree.AddChild(new Node(9)); tree.AddChild(new Node(9)); Assert.AreEqual(2, tree.CntOfNodes); }
public void TestForFind1() { Tree2 tree = new Tree2(10); bool check = false, isright = false; Node a = tree.FindNode(100, ref check, ref isright); Assert.AreEqual(false, check); }
public void TestInt() { const string hexBuffer = "A1636167650C"; Tree2 tree = Helper.Read <Tree2>(hexBuffer); Assert.NotNull(tree); Assert.Equal(12, tree._age); }
public void ReadReadOnlyFieldWithCborContructor() { const string hexBuffer = "A1646E616D6563666F6F"; Tree2 tree = Helper.Read <Tree2>(hexBuffer); Assert.NotNull(tree); Assert.Equal("foo", tree._name); }
public void TestForFind2() { Tree2 tree = new Tree2(10); tree.AddChild(new Node(9)); bool check = false, isright = false; Node a = tree.FindNode(9, ref check, ref isright); Assert.AreEqual(true, check); }
private void ClrButton_Click(object sender, EventArgs e) { Tree1.CreateGraphics().Clear(Color.White); Tree2.CreateGraphics().Clear(Color.White); Tree3.CreateGraphics().Clear(Color.White); Tree4.CreateGraphics().Clear(Color.White); points = new List <Point>(); ed[0] = new List <Point>(); ed[1] = new List <Point>(); }
public void TestByAttribute() { const string hexBuffer = "A2636167650C646E616D6563666F6F"; Tree2 tree = Helper.Read <Tree2>(hexBuffer); Assert.NotNull(tree); Assert.Equal(12, tree.GetAge()); Assert.Equal("foo", tree.GetName()); }
public void TestForAdd2() { Node a = new Node(9); Node b = new Node(11); Tree2 tree = new Tree2(10); tree.AddChild(a); tree.AddChild(b); Assert.AreEqual(a, tree.root.left); Assert.AreEqual(b, tree.root.right); }
protected void Tree2_NodeCheck(object sender, FineUI.TreeCheckEventArgs e) { if (e.Checked) { Tree2.CheckAllNodes(e.Node.Nodes); } else { Tree2.UncheckAllNodes(e.Node.Nodes); } }
protected override int Descendant(int i, int index, int branch) { int modulo = Tree1.Count(i); int index1 = index % modulo; int index2 = index / modulo; int branch1 = branch % 3; int branch2 = branch / 3; modulo = Tree1.Count(i + 1); return(Tree1.Descendant(i, index1, branch1) + Tree2.Descendant(i, index2, branch2) * modulo); }
protected override double Probability(int i, int index, int branch) { int modulo = Tree1.Count(i); int index1 = index % modulo; int index2 = index / modulo; int branch1 = branch % 3; int branch2 = branch / 3; double prob1 = Tree1.Probability(i, index1, branch1); double prob2 = Tree2.Probability(i, index2, branch2); return(prob1 * prob2 + _rho * _m[branch1, branch2] / 36.0); }
public void TestForRemove() { Tree2 tree = new Tree2(10); Node a = new Node(9); Node b = new Node(50); Node c = new Node(100); tree.AddChild(a); tree.AddChild(b); tree.AddChild(c); Assert.AreEqual(c, b.right); tree.RemoveNode(100); Assert.AreEqual(null, b.right); }
public void TestForAdd1() { Node a; Tree2 tree = new Tree2(10); tree.AddChild(new Node(9)); bool check = false, isright = false; a = tree.FindNode(100, ref check, ref isright); Assert.AreEqual(false, check); tree.AddChild(new Node(100)); a = tree.FindNode(100, ref check, ref isright); Assert.AreEqual(true, check); }
public void TestForFindMaxAndMin1() { Tree2 tree = new Tree2(10); tree.AddChild(new Node(10)); tree.AddChild(new Node(9)); tree.AddChild(new Node(7)); tree.AddChild(new Node(1)); tree.AddChild(new Node(12)); tree.AddChild(new Node(11)); tree.AddChild(new Node(15)); Node max = tree.FindMaxFrom(tree.root); Node min = tree.FindMinFrom(tree.root); Assert.AreEqual(1, min.value); Assert.AreEqual(15, max.value); }
private void LoadData(string sId) { if (!string.IsNullOrEmpty(sId)) { StringBuilder sb = new StringBuilder(); Entity.RoleMenu rolemenu = DAL.RoleMenu.GetRoleMenu(sId); txt_RoleName.Text = rolemenu.role.RoleName; txt_Description.Text = rolemenu.role.Description; foreach (Entity.Menu menu in rolemenu.menuList) { int menuID = menu.ID; FineUI.TreeNode tn = Tree2.FindNode(menuID.ToString()); tn.Checked = true; sb.Append(menuID.ToString() + ","); } old = sb.ToString().Substring(0, sb.Length - 1); } }
private void CheckTree2() { if (GridUser.SelectedRowIndex < 0) { return; } Tree2.UncheckAllNodes(Tree2.Nodes); strUserGuid = GridUser.DataKeys[GridUser.SelectedRowIndex][0].ToString(); List <Entity.Menu> menus = DAL.User.GetMenu(strUserGuid); foreach (Entity.Menu menu in menus) { int menuID = menu.ID; FineUI.TreeNode tn = Tree2.FindNode(menuID.ToString()); tn.Checked = true; } }
private void UpdateSavedSpecs() { SavedPetTalentSpecList savedSpecs = SavedPetTalentSpec.SpecsFor(ArmoryPet.FamilyToTree[CalcOpts.PetFamily]); SavedPetTalentSpec current = null; updating = true; foreach (SavedPetTalentSpec sts in savedSpecs) { if (sts.Equals(CalcOpts.PetTalents)) { current = sts; break; } } if (current != null) { HasCustomSpec = false; SavedCombo.ItemsSource = savedSpecs; SavedCombo.SelectedItem = current; SaveDeleteButton.Content = "Delete"; } else { PETFAMILYTREE ftree = ArmoryPet.FamilyToTree[CalcOpts.PetFamily]; int treepts = (ftree == PETFAMILYTREE.Cunning ? Tree1.Points() : (ftree == PETFAMILYTREE.Ferocity ? Tree2.Points() : (ftree == PETFAMILYTREE.Tenacity ? Tree3.Points() : Tree1.Points() + Tree2.Points() + Tree3.Points()))); HasCustomSpec = true; current = new SavedPetTalentSpec("Custom", CalcOpts.PetTalents, ftree, treepts); SavedPetTalentSpecList currentList = new SavedPetTalentSpecList(); currentList.AddRange(savedSpecs); currentList.Add(current); SavedCombo.ItemsSource = null; SavedCombo.ItemsSource = currentList; SavedCombo.SelectedItem = current; SaveDeleteButton.Content = "Save"; } updating = false; }
private void SaveDelete_Click(object sender, System.Windows.RoutedEventArgs e) { SavedPetTalentSpec currentSpec = SavedCombo.SelectedItem as SavedPetTalentSpec; if (HasCustomSpec) { PETFAMILYTREE ftree = ArmoryPet.FamilyToTree[CalcOpts.PetFamily]; int treepts = (ftree == PETFAMILYTREE.Cunning ? Tree1.Points() : (ftree == PETFAMILYTREE.Ferocity ? Tree2.Points() : (ftree == PETFAMILYTREE.Tenacity ? Tree3.Points() : Tree1.Points() + Tree2.Points() + Tree3.Points()))); FormSavePetTalentSpec dialog = new FormSavePetTalentSpec(CalcOpts.PetTalents, ftree, treepts); dialog.Closed += new EventHandler(dialog_Closed); dialog.Show(); } else { SavedPetTalentSpec.AllSpecs.Remove(currentSpec); UpdateSavedSpecs(); } }
public TalentTree(string talentString) { Tree1 = new(); Tree2 = new(); Tree3 = new(); string[] talentSplits = talentString.Split('|'); for (int i = 0; i < talentSplits.Length; ++i) { string talent = talentSplits[i]; if (talent.Length < 4) { continue; } string[] items = talent.Split(';'); if (items.Length < 5) { continue; } Talent t = new(items[0], int.Parse(items[1]), int.Parse(items[2]), int.Parse(items[3]), int.Parse(items[4])); if (items[1].Equals("1", StringComparison.OrdinalIgnoreCase)) { Tree1.Add(int.Parse(items[2]), t); } else if (items[1].Equals("2", StringComparison.OrdinalIgnoreCase)) { Tree2.Add(int.Parse(items[2]), t); } else if (items[1].Equals("3", StringComparison.OrdinalIgnoreCase)) { Tree3.Add(int.Parse(items[2]), t); } } }
private void GenButton_Click(object sender, EventArgs e) { aT.GTree(aT.root, chance, MaxDEPTH, rnd); aT.GetPoints(aT.root, Tree1.Width, Tree1.Height, points, ed); Tree1.CreateGraphics().DrawImage(aT.Draw(Tree1.Width, Tree1.Height, points, ed), new Point(0, 0)); bT = aT; Tree2.CreateGraphics().DrawImage(bT.Draw(Tree2.Width, Tree2.Height, points, ed), new Point(0, 0)); points = new List <Point>(); ed[0] = new List <Point>(); ed[1] = new List <Point>(); cT.GTree(cT.root, chance, MaxDEPTH, rnd); cT.GetPoints(cT.root, Tree1.Width, Tree1.Height, points, ed); Tree3.CreateGraphics().DrawImage(cT.Draw(Tree3.Width, Tree3.Height, points, ed), new Point(0, 0)); points = new List <Point>(); ed[0] = new List <Point>(); ed[1] = new List <Point>(); dT.GTree(dT.root, chance, MaxDEPTH, rnd); dT.GetPoints(dT.root, Tree1.Width, Tree1.Height, points, ed); Tree4.CreateGraphics().DrawImage(dT.Draw(Tree4.Width, Tree4.Height, points, ed), new Point(0, 0)); points = new List <Point>(); ed[0] = new List <Point>(); ed[1] = new List <Point>(); }
protected void btn_save_Click(object sender, EventArgs e) { if (string.IsNullOrEmpty(sGuid)) { //Add Entity.RoleMenu roleMenu = new Entity.RoleMenu(); roleMenu.role.RoleName = txt_RoleName.Text; roleMenu.role.Description = txt_Description.Text; string[] checkmenus = Tree2.GetCheckedNodeIDs(); foreach (string checkID in checkmenus) { Entity.Menu menu = new Entity.Menu(); menu.ID = int.Parse(checkID.ToString()); roleMenu.menuList.Add(menu); } int success = DAL.RoleMenu.AddRoleMenu(roleMenu); if (success == 1) { Alert.ShowInTop(" 保存成功!", MessageBoxIcon.Information); PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference()); } else { Alert.ShowInTop("保存失败!", MessageBoxIcon.Warning); } } else { //Update Entity.RoleMenu roleMenu = new Entity.RoleMenu(); roleMenu.role.ID = int.Parse(sGuid); roleMenu.role.RoleName = txt_RoleName.Text; roleMenu.role.Description = txt_Description.Text; string[] checkmenus = Tree2.GetCheckedNodeIDs(); int[] check = new int[checkmenus.Length]; for (int i = 0; i < checkmenus.Length; i++) { check[i] = int.Parse(checkmenus[i]); } StringBuilder sb = new StringBuilder(); Entity.RoleMenu rolemenu = DAL.RoleMenu.GetRoleMenu(sGuid); txt_RoleName.Text = rolemenu.role.RoleName; txt_Description.Text = rolemenu.role.Description; foreach (Entity.Menu menu in rolemenu.menuList) { int menuID = menu.ID; FineUI.TreeNode tn = Tree2.FindNode(menuID.ToString()); tn.Checked = true; sb.Append(menuID.ToString() + ","); } old = sb.ToString().Substring(0, sb.Length - 1); string[] oldIds = old.Split(','); int[] oldid = new int[oldIds.Length]; for (int s = 0; s < oldIds.Length; s++) { oldid[s] = int.Parse(oldIds[s]); } List <int> Checked = new List <int>(); for (int i = 0; i < checkmenus.Length; i++) { Checked.Add(int.Parse(checkmenus[i])); } List <int> OldID = new List <int>(); for (int i = 0; i < oldIds.Length; i++) { OldID.Add(int.Parse(oldIds[i])); } List <int> Delete = ListHelper.ExceptList(OldID, Checked); List <int> Add = ListHelper.ExceptList(Checked, OldID); foreach (int a in Delete) { roleMenu.Delete.Add(a.ToString()); } foreach (int b in Add) { roleMenu.NewAdd.Add(b.ToString()); } //var c = oldid.Intersect(check); //var d = oldid.Except(check); //var f = check.Except(oldid); //foreach (var q in d) //{ // roleMenu.Delete.Add(q.ToString()); //} //foreach (var w in f) //{ // roleMenu.NewAdd.Add(w.ToString()); //} int success = DAL.RoleMenu.UpdateRoleMenu(roleMenu); if (success == 1) { Alert.ShowInTop(" 修改成功!", MessageBoxIcon.Information); PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference()); } else { Alert.ShowInTop("修改失败!", MessageBoxIcon.Warning); } } }
protected void LinkButton5_Click(object sender, EventArgs e) { //-----------------ver panel editar------------------ bool si = false; foreach (GridViewRow row in GridView6.Rows) { CheckBox chk_Seleccionar = (CheckBox)row.FindControl("check"); if (chk_Seleccionar.Checked) { si = true; } } if (si == true) { Tree2.ExpandAll(); Peditar.Width = 478; Peditar.Height = 390; string dia1 = "", habi = "", hi = "", hf = ""; foreach (GridViewRow row in GridView6.Rows) { CheckBox chk_Seleccionar = (CheckBox)row.FindControl("check"); HiddenField hd_Seleccionafol = (HiddenField)row.FindControl("checkFol"); if (chk_Seleccionar.Checked) { idres = hd_Seleccionafol.Value; BD.Conectar(); BD.CrearComando("select * from grupos where idGrupo=@id"); BD.AsignarParametroCadena("@id", idres); DbDataReader DR = BD.EjecutarConsulta(); if (DR.Read()) { TeditNom.Text = DR[1].ToString(); TeditDes.Text = DR[3].ToString(); if (DR[2].ToString() == "si") { Checedit.Checked = true; } else { Checedit.Checked = false; } foreach (TreeNode nod in Tree2.Nodes) { foreach (TreeNode nod2 in nod.ChildNodes) { if (!(DR[4].ToString().IndexOf(nod2.Value) < 0)) { nod2.Checked = true; } //if (!(DR[4].ToString().IndexOf("CompFis") < 0) || !(DR[4].ToString().IndexOf("Interfaz") < 0) || !(DR[4].ToString().IndexOf("AdmUsuarios") < 0) // || !(DR[4].ToString().IndexOf("AdmProveedores") < 0) || !(DR[4].ToString().IndexOf("AdmReceptores") < 0) // || !(DR[4].ToString().IndexOf("AdmConfiguracion") < 0)) //{ // nod2.Selected = true; //} foreach (TreeNode nod3 in nod2.ChildNodes) { if (!(DR[4].ToString().IndexOf(nod3.Value) < 0)) { nod3.Checked = true; } //if (!(DR[4].ToString().IndexOf("GrupUs") < 0) || !(DR[4].ToString().IndexOf("SolicReg") < 0 ) // || !(DR[4].ToString().IndexOf("CodigosIVA") < 0 ) || !(DR[4].ToString().IndexOf("Dias") < 0 ) // || !(DR[4].ToString().IndexOf("Monedas") < 0 ) || !(DR[4].ToString().IndexOf("TipoProv") < 0 )) //{ // nod3.Selected = true; //} foreach (TreeNode nod4 in nod3.ChildNodes) { if (!(DR[4].ToString().IndexOf(nod4.Value) < 0)) { nod4.Checked = true; } } } } } } BD.Desconectar(); Peditar.Visible = true; } } } else { Session["estNot"] = false; Session["msjNoti"] = "DEBES SELECIONAR UN GRUPO"; Session["estPan"] = true; } }
private void UpdateSavedSpecs() { SavedTalentSpecList savedSpecs = SavedTalentSpec.SpecsFor(Character.Class); SavedTalentSpec current = null; updating = true; foreach (SavedTalentSpec sts in savedSpecs) { if (sts.Equals(Character.CurrentTalents)) { current = sts; break; } } if (current != null) { HasCustomSpec = false; SavedCombo.ItemsSource = savedSpecs; SavedCombo.SelectedItem = current; SaveDeleteButton.Content = "Delete"; } else { HasCustomSpec = true; current = new SavedTalentSpec("Custom", Character.CurrentTalents, Tree1.Points(), Tree2.Points(), Tree3.Points()); SavedTalentSpecList currentList = new SavedTalentSpecList(); currentList.AddRange(savedSpecs); currentList.Add(current); SavedCombo.ItemsSource = null; SavedCombo.ItemsSource = currentList; SavedCombo.SelectedItem = current; SaveDeleteButton.Content = "Save"; } updating = false; }
public override int Count(int i) { return(Tree1.Count(i) * Tree2.Count(i)); }
private void Generate() { //Walls //for (var i = 0; i < 1; i++) //{ // var x = m_map.Random.Next(0, m_map.ZoneSize.X); // var y = m_map.Random.Next(0, m_map.ZoneSize.Y); // var width = m_map.Random.Next(10, 100); // var height = m_map.Random.Next(10, 100); // //var x = m_map.ZoneSize.X / 2 + 50; // //var y = m_map.ZoneSize.Y / 2 + 50; // //var width = 50; // //var height = 50; // var p1 = new Vector2(x, y); // var p2 = new Vector2(x + width, y); // var p3 = new Vector2(x + width, y + height); // var p4 = new Vector2(x, y + height); // Walls.Add( // new Wall( // new List<Segment>() // { // new Segment(p1, p2), // new Segment(p2, p3), // new Segment(p3, p4), // new Segment(p4, p1) // } // ) // ); //} //Trees for (var i = 0; i < 3; i++) { var x = m_map.Random.Next(0 + 50, m_map.ZoneSize.X - 50); var y = m_map.Random.Next(0 + 50, m_map.ZoneSize.Y - 50); var t1 = new Tree1(); t1.SetPosition(new Vector2(x, y)); AddTree(t1); y -= (int)(t1.Box.Y / 3f); var p1 = new Vector2(x - t1.Box.X / 6, y); var p2 = new Vector2(x + t1.Box.X / 6, y); var p3 = new Vector2(x, y - t1.Box.Y / 6); var p4 = new Vector2(x, y + t1.Box.Y / 6); Walls.Add( new Wall( new List <Segment>() { new Segment(p1, p2), new Segment(p3, p4) } ) ); x = m_map.Random.Next(0 + 50, m_map.ZoneSize.X - 50); y = m_map.Random.Next(0 + 50, m_map.ZoneSize.Y - 50); var t2 = new Tree2(); t2.SetPosition(new Vector2(x, y)); AddTree(t2); y -= (int)(t2.Box.Y / 3f); p1 = new Vector2(x - t2.Box.X / 6, y); p2 = new Vector2(x + t2.Box.X / 6, y); p3 = new Vector2(x, y - t2.Box.Y / 6); p4 = new Vector2(x, y + t2.Box.Y / 6); Walls.Add( new Wall( new List <Segment>() { new Segment(p1, p2), new Segment(p3, p4) } ) ); x = m_map.Random.Next(0 + 50, m_map.ZoneSize.X - 50); y = m_map.Random.Next(0 + 50, m_map.ZoneSize.Y - 50); var t3 = new Tree3(); t3.SetPosition(new Vector2(x, y)); AddTree(t3); y -= (int)(t3.Box.Y / 4f); p1 = new Vector2(x - t3.Box.X / 4, y); p2 = new Vector2(x + t3.Box.X / 4, y); p3 = new Vector2(x, y - t3.Box.Y / 4); p4 = new Vector2(x, y + t3.Box.Y / 4); Walls.Add( new Wall( new List <Segment>() { new Segment(p1, p2), new Segment(p3, p4) } ) ); } //Fire //var peX = m_map.Random.Next((int)(m_map.ZoneSize.X * 0.1f), (int)(m_map.ZoneSize.X * 0.9f)); //var peY = m_map.Random.Next((int)(m_map.ZoneSize.Y * 0.1f), (int)(m_map.ZoneSize.Y * 0.9f)); //ParticleEngine = new ParticleEngine(new List<Texture2D>(), // new Vector2(peX, peY), // new Vector2(0, 20), // 150, // 0.2f); var peX = m_map.Random.Next((int)(m_map.ZoneSize.X * 0.1f), (int)(m_map.ZoneSize.X * 0.9f)); var peY = m_map.Random.Next((int)(m_map.ZoneSize.Y * 0.1f), (int)(m_map.ZoneSize.Y * 0.9f)); var firePosition = new Vector2(peX, peY); FireCamp = new FireCamp(); FireCamp.SetPosition(firePosition); //Lights for (var i = 0; i < 1; i++) { //var x = m_map.Random.Next(0, m_map.ZoneSize.X); //var y = m_map.Random.Next(0, m_map.ZoneSize.Y); //var x = m_map.ZoneSize.X / 2; //var y = m_map.ZoneSize.Y / 2; var radius = 200 + m_map.Random.Next(0, 10); Lights.Add( new Light( new Vector2(firePosition.X, firePosition.Y - FireCamp.Box.Y / 4), radius, new Color4ub(255, 255, 255, 255), new Color4ub(0, 0, 0, 255)) ); } var segments = Walls.SelectMany(x => x.Walls).ToList(); Parallel.ForEach(segments, segment => { foreach (var light in Lights) { light.Cone.Add(segment.P1, segment.P2); } //m_wallRenderer.AddSegment(segment); }); foreach (var light in Lights) { var points = light.Cone.GetPath(); foreach (var point in points) { m_lightRenderer.AddVertex(point.Point, point.Color); } } }