public void DelDot(GlueDot dot, Technology tech) { List <GlueDot> points = tech == Technology.Adh ? AdhPoints : SldPoints; if (points.Contains(dot)) { points.Remove(dot); } }
public void GetPoints(ComponentLib lib) { this.points.Clear(); bool isFind = false; PointD pRotated; ComponentEx cmp = new ComponentEx(0); if (lib == null || lib.FindAll().Count == 0) { return; } foreach (ComponentEx item in lib.FindAll()) { if (item.component.Name.Contains(this.Comp) || this.Comp.Contains(item.component.Name)) { isFind = true; cmp = item; break; } } if (isFind) { if (tech == Technology.Adh) { if (cmp.component.AdhPoints.Count > 0) { foreach (GlueDot p in cmp.component.GetPoints(Technology.Adh)) { GlueDot dot = new GlueDot(); dot.IsWeight = p.IsWeight; dot.Weight = p.Weight; dot.Radius = p.Radius; dot.NunShots = p.NunShots; dot.index = p.index; dot.point = new PointD(p.point); this.RotateComp(dot.point, this.rotation, out pRotated); dot.point = pRotated + this.mid; this.points.Add(dot); } } else { GlueDot dot = new GlueDot(); dot.point = new PointD(this.mid); this.points.Add(dot); } } } else { GlueDot dot = new GlueDot(); dot.point = new PointD(this.mid); this.points.Add(dot); } }
private void lswDots_MouseClick(object sender, MouseEventArgs e) { if (this.lswDots.SelectedIndices.Count > 0) { this.dot = (GlueDot)this.lswDots.SelectedItems[0].Tag; this.dotColor(this.lswDots.SelectedItems[0]); this.canChange = false; this.updateDotShow(); this.drawComponent(this.curUserComp); this.canChange = true; } }
private void lswUnEdited_MouseClick(object sender, MouseEventArgs e) { if (this.lswUnEdited.SelectedIndices.Count > 0) { this.canChange = false; compName = this.lswUnEdited.SelectedItems[0].SubItems[1].Text; this.txtModel.Text = compName; this.curUserComp = this.findComponentInLib(this.curUserLib, compName); if (this.curUserComp.component.GetPoints(getTech()).Count > 0) { this.dot = this.curUserComp.component.GetPoints(getTech())[0]; } this.updateCompShow(this.curUserComp); this.updateDotShow(); this.lswUserShow(); this.drawComponent(this.curUserComp); this.canChange = true; } }
private void btnDotDlt_Click(object sender, EventArgs e) { if (this.dot == null) { return; } this.curUserComp.component.GetPoints(getTech()).Remove(this.dot); this.drawComponent(this.curUserComp); this.lswDotLoad(this.curUserComp); if (this.curUserComp.component.GetPoints(getTech()).Count <= 0) { this.dot = null; } else { this.dot = this.curUserComp.component.GetPoints(getTech())[0]; } this.canChange = false; this.updateDotShow(); this.canChange = true; }
private void btnDotAdd_Click(object sender, EventArgs e) { if (this.curUserComp == null) { return; } GlueDot dot = new GlueDot(); int cout = this.curUserComp.component.AdhPoints.Count; dot.index = cout + 1; dot.point = new PointD((double)this.nudOffsetX.Value, (double)this.nudOffsetY.Value); dot.Weight = (double)this.nudWeight.Value; dot.IsWeight = this.ckbWeight.Checked; dot.NunShots = (int)this.nudShots.Value; dot.Radius = (double)this.nudRadius.Value; this.curUserComp.component.AddPoint(dot, getTech()); this.canChange = false; this.lswDotLoad(this.curUserComp); this.dot = dot; this.updateDotShow(); this.drawComponent(this.curUserComp); this.canChange = true; }
public void AddOnePoint(GlueDot point) { this.seletecPoint = point; }
private void getType() { for (int i = 0; i < CADImport.libStrArray.Length; i++) { string line = CADImport.libStrArray[i]; if (line.Contains("[") && line.Contains("]")) { int mid = line.LastIndexOf(','); int last = line.LastIndexOf(']'); string before = line.Substring(0, mid); string after = line.Substring(mid + 1, last - mid - 1); int redindexStar = i; int redindexEnd = i; int solindexStar = i; int solindexEnd = i; for (int j = i + 1; j < CADImport.libStrArray.Length; j++) { if (CADImport.libStrArray[j].Contains(".adh")) { redindexStar = j; } if (CADImport.libStrArray[j].Contains(".end")) { redindexEnd = j; break; } } for (int j = i + 1; j < CADImport.libStrArray.Length; j++) { if (CADImport.libStrArray[j].Contains(".sol")) { solindexStar = j; } if (CADImport.libStrArray[j].Contains(".end")) { solindexEnd = j; break; } } List <PointD> pointsred = new List <PointD>(); pointsred.Clear(); for (int k = redindexStar + 1; k < redindexEnd; k++) { PointD p = new PointD(); string[] splited = CADImport.libStrArray[k].Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries); double x = 0; double y = 0; if (double.TryParse(splited[0], out x) && double.TryParse(splited[1], out y)) { p.X = x; p.Y = y; } pointsred.Add(p); } List <PointD> pointssol = new List <PointD>(); pointssol.Clear(); for (int k = solindexStar + 1; k < solindexEnd; k++) { PointD p = new PointD(); string[] splited = CADImport.libStrArray[k].Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries); double x = 0; double y = 0; if (double.TryParse(splited[0], out x) && double.TryParse(splited[1], out y)) { p.X = x; p.Y = y; } pointssol.Add(p); } int index = this.lib.FindAll().Count; ComponentEx comp = new ComponentEx(index + 1); comp.component.Name = after; foreach (var item in pointsred) { GlueDot dot = new GlueDot(); int cout = comp.component.AdhPoints.Count; dot.index = cout + 1; dot.point = new PointD(item.X, item.Y); dot.Weight = (double)0; dot.Radius = (double)0; comp.component.AdhPoints.Add(dot); } foreach (var item in pointssol) { GlueDot dot = new GlueDot(); int cout = comp.component.SldPoints.Count; dot.index = cout + 1; dot.point = new PointD(item.X, item.Y); dot.Weight = (double)0; dot.Radius = (double)0; comp.component.SldPoints.Add(dot); } lib.Add(comp); } } }
public void AddPoint(GlueDot dot, Technology tech) { List <GlueDot> points = tech == Technology.Adh ? AdhPoints : SldPoints; points.Add(dot); }