сок використаних джерел
.Карлі Ватсон, С #/М .: Лорі, 2005 - 862 с.
.Фролов А. В, Мова С #. Самовчитель./Фролов А. В., Фролов Г. В. М .: ДІАЛОГ-МІФІ, 2003. - 560 с.
3.Estate. Уроки С #. OpenGL lt; # justify gt; Додатки
математичний opengl матриця net
Графічний інтерфейс програми.
Рис.1. Створені користувальницькі компоненти
Рис.2. Конструктор компоненти.
Рис.3. Компонента на формі.
Рис.4. Введення значень.
Рис.5. Результат роботи програми.
Рис.6. Зміст текстового файлу.
Вихідний текст програми.
Компонента.
MatrixCalc
{partial class matrixCalc: UserControl
{loaded=false; texFont; сheck=false; static List lt; matrix gt; matrixList;//Список матріцstatic Mode operationMode=Mode.Default;//поточна операціяstatic Point resolution=new Point (200, 200);//розмірність x і ydouble det; matrixCalc ()
{();
} void matrixCalc_Load (object sender, EventArgs e)
{= null;=null;=Mode.Default;=true;
} void glControl1_Load (object sender, EventArgs e)
{= true;
} void glControl1_Resize (object sender, EventArgs e)
{(! loaded);
} void обратнаяToolStripMenuItem_MouseDown (object sender, System.Windows.Forms.MouseEventArgs e)
{= new List lt; matrix gt; ();
сheck=false;=Mode.Invert;
} void транспонірованіеToolStripMenuItem_MouseDown (object sender, System.Windows.Forms.MouseEventArgs e)
{= new List lt; matrix gt; ();
сheck=false;=Mode.Transpose;
} void определітельToolStripMenuItem_MouseDown (object sender, System.Windows.Forms.MouseEventArgs e)
{= new List lt; matrix gt; ();
сheck=false;=Mode.Determinant;
} void умноженіеToolStripMenuItem_MouseDown (object sender, System.Windows.Forms.MouseEventArgs e)
{= new List lt; matrix gt; ();
сheck=false;=Mode.Multiplication;
} void сложеніеToolStripMenuItem_MouseDown (object sender, System.Windows.Forms.MouseEventArgs e)
{= new List lt; matrix gt; ();
сheck=false;=Mode.Addition;
} void вичітаніеToolStripMenuItem_MouseDown (object sender, System.Windows.Forms.MouseEventArgs e)
{= new List lt; matrix gt; ();
сheck=false;=Mode.Substraction;
} void однаМатріцаToolStripMenuItem_DropDownItemClicked (object sender, ToolStripItemClickedEventArgs e)
{(); mtxCalc=this; f=new Form3 (mtxCalc) ;. ShowDialog ();
} void двеМатріциToolStripMenuItem_DropDownItemClicked (object sender, ToolStripItemClickedEventArgs e)
{(); mtxCalc=this; f=new Form1 (mtxCalc) ;. ShowDialog ();
} void glControlSetting ()
{= true; (glControl1);//налаштовуємо шрифти і opengl=fontSetting (glControl1) ;. ClearColor (Color.SkyBlue);//Заливка за замовчуванням
} void matrixCalc_SizeChanged (object sender, EventArgs e)
{. Width=this.Width; .Height=this.Height - 24; (matrixList!=null)
{. Clear (ClearBufferMask.ColorBufferBit | ClearBufferMask.DepthBufferBit); (texFont, matrixList [0] .mtx); (operationMode!=Mode.Determinant)
{(texFont, matrixList [0] .mtx, matrixList [1] .mtx);
}. SwapBuffers ();
}
} void saveAsTxt ()
{data=new dataOperations (); sfd=new SaveFileDialog () ;. DefaultExt= txt raquo ;;. Filter= Matrix textfile | * .txt raquo ;;. Clear (ClearBufferMask.ColorBufferBit | ClearBufferMask.DepthBufferBit); (matrixList == null)
{. Show ( Матриці були запроваджені ) ;;
} (sfd.ShowDialog () == System.Windows.Forms.DialogResult.OK)
{. saveAllMatrixTxt (sfd.FileName); (texFont, matrixList [0] .mtx); (operationMode!=Mode.Determinant)
{(texFont, matrixList [0] .mtx, matrixList [1] .mtx);
}. SwapBuffers ();
}
} void...