Поворот треугольника вокруг оси с заданым градусом - VB

Узнай цену своей работы

Формулировка задачи:

Задача следушая написать программу которая будет поворачивать геом объект пусть будет треугольник вокруг оси О с заданым градусом к примеру А я никак не могу понят ькак эт осделать ну не получается помогитеее пожалуйста иначе учитель меня сожрет!

Решение задачи: «Поворот треугольника вокруг оси с заданым градусом»

textual
Листинг программы
Private Type Point
    X As Double
    Y As Double
End Type
Dim WithEvents tmrTimer As Timer
Dim Pts() As Point
Private Sub Form_Load()
    Me.Scale (-2, -2)-(2, 2)
    Me.AutoRedraw = True
    Set tmrTimer = Me.Controls.Add("VB.Timer", "tmrTimer")
    tmrTimer.Interval = 50
    tmrTimer.Enabled = True
    CreateShape
End Sub
Private Sub CreateShape()
    Dim Ct As Long
    ReDim Pts(2)
    Pts(0).X = 1: Pts(0).Y = 1
    Pts(1).X = 0: Pts(1).Y = -1
    Pts(2).X = -1: Pts(2).Y = 1
End Sub
Private Sub tmrTimer_Timer()
    Static Omega As Double
    Dim X As Single, Y As Single, _
        oX As Single, oY As Single, _
        Init As Boolean, I As Long
    Me.Cls
    For I = 0 To UBound(Pts)
        If Not Init Then
            Init = True
            oX = Sin(Omega) * Pts(I).X - Cos(Omega) * Pts(I).Y
            oY = Sin(Omega) * Pts(I).Y + Cos(Omega) * Pts(I).X
            Me.CurrentX = oX: Me.CurrentY = oY
        Else
            X = Sin(Omega) * Pts(I).X - Cos(Omega) * Pts(I).Y
            Y = Sin(Omega) * Pts(I).Y + Cos(Omega) * Pts(I).X
            Me.Line -(X, Y)
        End If
    Next
    Me.Line -(oX, oY)
    Me.Circle (0, 0), 0.03
    Omega = Omega + 0.02
    Me.Caption = Round(Omega * 57.2957795130823, 2) & " degree"
    Me.Refresh
End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 3.6 из 5
Похожие ответы