Трусов М. А. Visual Basic .NET. Создание графических объектов и основы программирования стр.50
Трусов М. А. Visual Basic .NET. Создание графических объектов и основы программирования стр.50

End Sub

Этот код требует некоторых пояснений. Против методов Translate и Scale поставлены знаки «комментарий». Это сделано, чтобы иметь возможность наблюдать действие каждого из них отдельно. Параметры методов Scale и Translate представлены статической переменной, что позволит нам проследить плавную трансформацию объекта. Если вы запустите в работу сразу два метода: RotateAt и Translate, объект будет

Трусов М. А. Visual Basic .NET. Создание графических объектов и основы программирования

Graphics

двигаться по спиральной траектории. Это явление объясняется тем, что направление вектора перемещения обусловлено углом поворота объекта. При создании экземпляра класса Matrix конструктор номер два использован, чтобы иметь возможность проследить осуществление аффинных преобразований. Все-таки он имеет наибольший диапазон действий. Например, можно задать перемещение объекта по горизонтали с одновременным его вращением вокруг оси. Для этого, применив комментарий, оставьте в работе один метод RotateAt и одновременно замените значение пятого параметра экземпляра класса Matrix на значение статической переменной. При запуске программы объект будет двигаться вдоль горизонтальной прямой.

7.2. Graphics

Основной класс, создающий графику, также обладает своими методами для проведения аффинных преобразований.

Метод RotateTransform задает вращательное движение. Если рассмотренный выше метод RotateAt используется для поворота вокруг заданной точки, то метод RotateTransform класса Graphics вращает объект вокруг точки начала координат, которой, как известно, является верхний левый угол формы.

Метод ScaleTransf orm сжимает или растягивает объект вдоль выбранной оси координат на указанный коэффициент.

Метод TranslateTransf orm перемещает объект на указанные величины вдоль осей координат.

А теперь рассмотрим конкретный пример. Создадим некоторые геометрические фигуры и преобразуем их с помощью перечисленных выше методов. Используя статическую переменную, сделаем эту трансформацию плавной. Чтобы иметь возможность проследить изменение каждого объекта поочередно, в данном коде использованы комментарии.


⇐ Предыдущая Следующая ⇒
 
 
 
Powered by Exponenta