1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61:
| using System;
using DSComplexLib.Calculation; using DSComplexLib.Visualization;
namespace DSComplexLibDemo { public partial class Form1 : Form { ComplexPlane cPlane;
public Form1() { InitializeComponent(); }
private void Form1_Load(object sender, EventArgs e) { cPlane = new ComplexPlane(this.CreateGraphics()); cPlane.SetSmoothingMode(SmoothingMode.AntiAlias); Pen AuxiliaryPen = new Pen(Color.LightGray, 1); AuxiliaryPen.DashStyle = DashStyle.Dot; cPlane.SetAuxiliaryRasterPen(AuxiliaryPen); cPlane.AddCircle(Circle.UnitCircle); cPlane.AddCircle(new Circle(Pens.Black, Math.Sqrt(2))); ComplexPhasorGroup g1 = new ComplexPhasorGroup("Group 1", false); g1.AddPhasor(new ComplexPhasor(new ComplexNumber(1, 1), Pens.Red, "Phasor 1", true, true, ContentAlignment.TopLeft, false, ContentAlignment.BottomLeft, new Font("Verdana", 10), Brushes.Red)); g1.AddPhasor(new ComplexPhasor(new ComplexNumber(1, -1), Pens.Blue, "Phasor 2", true, true, ContentAlignment.BottomLeft, false, ContentAlignment.TopLeft, new Font("Verdana", 10), Brushes.Blue)); cPlane.AddPhasorGroup(g1); ComplexPhasorGroup g2 = new ComplexPhasorGroup("Group 2", true); g2.AddPhasor(new ComplexPhasor(new ComplexNumber(-1, -1), Pens.Green, "Phasor 3", true, true, ContentAlignment.BottomRight, false, ContentAlignment.TopRight, new Font("Verdana", 10), Brushes.Green)); g2.AddPhasor(new ComplexPhasor(new ComplexNumber(0, 2), Pens.Purple, "Phasor 4", true, true, ContentAlignment.MiddleLeft, false, ContentAlignment.MiddleRight, new Font("Verdana", 10), Brushes.Purple)); cPlane.AddPhasorGroup(g2); }
private void Form1_Paint(object sender, PaintEventArgs e) { cPlane.Render(this.ClientSize.Width, this.ClientSize.Height); }
private void Form1_Resize(object sender, EventArgs e) { Form1_Paint(sender, null); }
private void Form1_MouseMove(object sender, MouseEventArgs e) { if (((MouseEventArgs)e).Button == MouseButtons.Left) cPlane.StretchSelectedPhasor(((MouseEventArgs)e).Location); }
private void Form1_MouseDown(object sender, MouseEventArgs e) { cPlane.SelectPhasor(((MouseEventArgs)e).Location); } } } |