Для тех кто знает формулы...

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Gemini
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 390
Зарегистрирован: 24.07.2002 (Ср) 14:15
Откуда: Ozersk

Для тех кто знает формулы...

Сообщение Gemini » 08.12.2004 (Ср) 15:31

Вопрос по формуле: как можно сделать поворот картинки за мышкой (поросто вращалась?) если учесть что картинка может вращаться на 360 градусов.

Я знаю X и Y Мышки.
И X и Y Изображения.

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 08.12.2004 (Ср) 15:38

Быстрая вращалка картинок тут: http://mix.web.ur.ru/v7.rar

Угол: ATN((Yмышки - Yкартинки) \ (Xмышки - Xкартинки))
Изображение

Gemini
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 390
Зарегистрирован: 24.07.2002 (Ср) 14:15
Откуда: Ozersk

Сообщение Gemini » 08.12.2004 (Ср) 15:53

Спасибо! (Приду домой попробую :D )

Ennor
Конструктивный критик
Конструктивный критик
 
Сообщения: 2504
Зарегистрирован: 18.12.2001 (Вт) 3:58
Откуда: Калуга -> Москва

Сообщение Ennor » 08.12.2004 (Ср) 20:43


tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 08.12.2004 (Ср) 21:59

Ennor писал(а):http://bbs.vbstreets.ru/viewtopic.php?p=37984#37984
Афаикт, там только для WinNT?
А у меня для всех :-D
Изображение

Gemini
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 390
Зарегистрирован: 24.07.2002 (Ср) 14:15
Откуда: Ozersk

Сообщение Gemini » 10.12.2004 (Пт) 14:35

tyomitch эта формула (ATN((Yмышки - Yкартинки) \ (Xмышки - Xкартинки))) возвращает какието другие значения (-0,1... и так далее) а мне надо чтобы возвращалось значение от 0 до 360.
Как это можно осуществить???

P.S. Может кто-нибудь встречался с этим вопросом?

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 10.12.2004 (Пт) 15:21

Держи
Код: Выделить всё
Option Explicit
Private Xk As Single, Yk As Single
Private Const Pi = 3.14159265358979

Private Sub Form_Load()
ScaleMode = vbPixels
FillStyle = vbFSSolid
End Sub

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Dim phi As Single
    If X = Xk Then phi = Pi / 2 Else phi = Atn((Yk - Y) / (X - Xk))
    If phi < 0 Then phi = phi + Pi
    If Y > Yk Then phi = phi + Pi
    Caption = Round(180 / Pi * phi, 2) & "°"
End Sub

Private Sub Form_Paint()
Cls
Circle (Xk, Yk), 4
End Sub

Private Sub Form_Resize()
Xk = ScaleWidth / 2: Yk = ScaleHeight / 2
Refresh
End Sub
Изображение

Gemini
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 390
Зарегистрирован: 24.07.2002 (Ср) 14:15
Откуда: Ozersk

Сообщение Gemini » 10.12.2004 (Пт) 15:26

Спасибо большое!!! :wink:


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 37

    TopList