Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Анимация 
:(
    Опции темы
annaj
Дата 15.5.2006, 16:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 15.5.2006

Репутация: нет
Всего: нет



Задание такое: смоделировать в VB вращение Земли вокруг Солнца по элипсоидной орбите.
Кто скажет, как это сделать (как min - хотя бы общая структура программы, через что это делать *циклы и пр.*, ну и как max - каким образом и с помощью каких кодов эту программу вообще писать.
ОЧЕНЬ надеюсь на помощь.  
PM MAIL   Вверх
cardinal
Дата 15.5.2006, 16:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 19
Всего: 99



Требуют 2D или 3D графику в модели? 


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
annaj
Дата 15.5.2006, 16:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 15.5.2006

Репутация: нет
Всего: нет



2d, желателен вариант с ускоренным движением 
PM MAIL   Вверх
profispb
Дата 16.5.2006, 15:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 220
Регистрация: 27.12.2005
Где: Санкт - Петербург

Репутация: нет
Всего: 1



annaj, А если картинку поставить(т.е. несколько картинок) и заменять через интервал времени, или нужно с помощью сложных математических расчетов.  

Это сообщение отредактировал(а) profispb - 16.5.2006, 15:04
--------------------
В жизни, я люблю делать, то что я люблю. А не то что модно, престижно и выгодноЛюблю когда начинает работать, то что без меня не работало!
PM MAIL ICQ   Вверх
Akina
Дата 16.5.2006, 15:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 34
Всего: 454



Структура:

1) Задать исходное состояние
2) Нарисовать
3) Рассчитать конечное состояние через заданный квант времени (численное интегрирование ур. Кеплера)
4) Перерисовать
5) Фигачить п.п. 3 и 4 пока юзер кнопку не нажмет.
6) End

Ускорение-замедление - просто изменение кванта времени.
 


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
annaj
Дата 16.5.2006, 15:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 15.5.2006

Репутация: нет
Всего: нет



profispb Картинки надо нарисовать, но это не проблема, вопрос в расчетах: как сделать так, что бы при приближени ик солнцу земля двигалась быстрее, а при удалении - медленнее

Akina  а вот можно поподробнее про квант времени и Кеплера - что это такое и как его зафигачить в код? ;)

 
PM MAIL   Вверх
profispb
Дата 16.5.2006, 18:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 220
Регистрация: 27.12.2005
Где: Санкт - Петербург

Репутация: нет
Всего: 1



annaj
Цитата

profispb Картинки надо нарисовать, но это не проблема, вопрос в расчетах: как сделать так, что бы при приближени ик солнцу земля двигалась быстрее, а при удалении - медленнее

Сделать это можно расчитав интервал времени: приблежается к сонцу картинка обновляется быстрее, отдоляется от солнца картинка обновляется медленно. 
--------------------
В жизни, я люблю делать, то что я люблю. А не то что модно, престижно и выгодноЛюблю когда начинает работать, то что без меня не работало!
PM MAIL ICQ   Вверх
annaj
Дата 16.5.2006, 18:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 15.5.2006

Репутация: нет
Всего: нет



Хорошая идея.
Только вот как это сделать? smile 

Это сообщение отредактировал(а) annaj - 16.5.2006, 18:54
PM MAIL   Вверх
cardinal
Дата 16.5.2006, 21:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 19
Всего: 99



Цитата(annaj @  16.5.2006,  14:16 Найти цитируемый пост)
как сделать так, что бы при приближени ик солнцу земля двигалась быстрее, а при удалении - медленнее

Самый простой пример
Код

Option Explicit
Private Declare Function Ellipse Lib "gdi32" (ByVal hdc As Long, ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Const PI = 3.14159265

Private Sub Command1_Click()
Dim i As Integer
Dim x As Integer
Dim y As Integer
y = Form1.Height / Screen.TwipsPerPixelY / 2
For i = 0 To 100
    DoEvents
    x = Form1.Width / Screen.TwipsPerPixelX / 2 + 100 * Sin(PI / 50 * i)
    Form1.Cls
    Ellipse Me.hdc, _
            x - 10, _
            y - 10, _
            x + 10, _
            y + 10
    Sleep 100
Next
End Sub
 


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
Akina
Дата 17.5.2006, 11:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 34
Всего: 454



Цитата(annaj @  16.5.2006,  16:16 Найти цитируемый пост)
можно поподробнее про квант времени 

Квант времени - это виртуальный промежуток времени, через который выполняется вывод на экран следующего состояния системы.

Например ты намерен рисовать со скоростью 720 часов (1 месяц) в минуту (60 секунд). Быстродействие системы тебе позволяет с запасом просчитывать 40 последовательных состояний в секунду. Квант времени получается 720 / (60 * 40) = 0.3 часа = 18 минут. Именно с таким шагом тебе и надо интегрировать уравнение Кеплера, которое описывает движение тела в гравитационном поле удаленной точки (планеты вокруг Солнца без учета влияния других планет и вращения самого Солнца вокруг общего центра масс солнечной системы), и которое ты найдешь в школьном курсе астрономии. Численное интегрирование выполняется любым стандартным методом, обеспечивающим необходимую точность.

 


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
annaj
Дата 20.5.2006, 20:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 15.5.2006

Репутация: нет
Всего: нет



cardinal, хм, не работает( Бейсик многие знаки подчеркивает и пишет ошибки... 
PM MAIL   Вверх
cardinal
Дата 21.5.2006, 01:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 19
Всего: 99



annaj, выкладывай проект... 


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
annaj
Дата 21.5.2006, 08:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 15.5.2006

Репутация: нет
Всего: нет



какой? я говорила о написанной выше программе... 
PM MAIL   Вверх
cardinal
Дата 21.5.2006, 13:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 19
Всего: 99



Ты кнопку с названием Command1 (default имя кнопки при ее создании) на форму кинула? 


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "VB6"
Akina

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по VB обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB6 | Следующая тема »


 




[ Время генерации скрипта: 0.1271 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.