Компьютерная графика, мультимедиа и игры на Visual C#


         

Создаем объект sw класса StreamWriter


        For k As Integer = 1 To 3
            i = i + 2
            x1 = myArrayVB(i, 0)
            y1 = myArrayVB(i, 1)
            x2 = myArrayVB(i + 1, 0)
            y2 = myArrayVB(i + 1, 1)
            e.Graphics.DrawLine(myPen2, x1, y1, x2, y2)
        Next
        'Записываем массив координат myArrayVB(2000, 1) в файл.
        ' Создаем объект sw класса StreamWriter
        'для записи в файл по адресу D:\MyDocs\MyTest.txt.
        'Файл автоматически “опустошается”:
        Dim sw As StreamWriter = _
        New StreamWriter("D:\MyDocs\MyTest.txt")
        'Каждый элемент массива myArrayVB(i, j) записываем в файл
        'в виде отдельной строки при помощи процедуры WriteLine:
        For i = 0 To N_x
            For j = 0 To N_y
                sw.WriteLine(myArrayVB(i, j))
            Next
        Next
        sw.Close()
    End Sub
Чтобы мы могли управлять (например, вращать) объектами при помощи нажатия клавиш, в окне Class Name выбираем (Overrides), а в окне Method Name выбираем ProcessCmdKey. Появляется файл Form1.vb с шаблоном (процедуры ProcessCmdKey), который после записи нашего кода принимает следующий вид.
Листинг 38.3. Метод ProcessCmdKey для вращения поверхности.
    'Поворачиваем поверхность после нажатия клавиши:
    Protected Overrides Function ProcessCmdKey( _
    ByRef msg As System.Windows.Forms.Message, _
    ByVal keyData As System.Windows.Forms.Keys) As Boolean
        'Задаем шаг поворота поверхности:
        Const delta_theta As Double = PI / 32
        Const delta_phi As Double = PI / 16
        'Вычисляем сферические координаты (spherical coordinates)
        'точки наблюдения:
        Dim theta As Double = Atan2(myEye.orig_coord(1), _
                                    myEye.orig_coord(0))
        Dim r1 As Double = Sqrt(myEye.orig_coord(0) * _
                                myEye.orig_coord(0) _
        + myEye.orig_coord(1) * myEye.orig_coord(1))
        Dim r2 As Double = Sqrt(myEye.orig_coord(0) * _

Содержание  Назад  Вперед