Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 25.01.2006, 18:49
Yaro вне форума Посмотреть профиль Отправить личное сообщение для Yaro Найти все сообщения от Yaro
  № 1  
Ответить с цитированием
Yaro

Регистрация: Oct 2004
Сообщений: 30
Question движение объекта ПО ОКРУЖНОСТИ

Как с помощью кода задать замкнутое движение объекта по окружности с заданным радиусом?
Догадываюсь, что для этого хорошо было бы воспользоваться системой полярных координат. Поддерживается ли это экшн скриптом?

Заранее благодарю!

Старый 25.01.2006, 18:56
Skubent вне форума Посмотреть профиль Отправить личное сообщение для Skubent Посетить домашнюю страницу Skubent Найти все сообщения от Skubent
  № 2  
Ответить с цитированием
Skubent
 
Аватар для Skubent

Регистрация: Oct 2005
Адрес: Млечный Путь, 7-й рукав, YD AC-451, 3-я планета.
Сообщений: 996
Отправить сообщение для Skubent с помощью ICQ
Ну то есть про то, что есть функции минуса и косинуса не учат даже в школе уже ?
__________________
Тут вы найдете ответы на почти все вопросы:
А можно ли сделать так ? - Можно.
Почему не работает ? - Неправильно сделано.
Где ошибка ? - В ДНК.

Старый 25.01.2006, 19:20
veterok4 вне форума Посмотреть профиль Отправить личное сообщение для veterok4 Посетить домашнюю страницу veterok4 Найти все сообщения от veterok4
  № 3  
Ответить с цитированием
veterok4
 
Аватар для veterok4

Регистрация: Aug 2005
Адрес: живу в Миловке
Сообщений: 101
Цитата:
Сообщение от Skubent
Ну то есть про то, что есть функции минуса и косинуса не учат даже в школе уже ?
Что-то типа этого из учебника?
Вложения
Тип файла: rar Gl_06.rar (11.7 Кб, 32 просмотров)
__________________
Тссс... не вспугните!

Старый 25.01.2006, 19:24
Nox Noctis вне форума Посмотреть профиль Отправить личное сообщение для Nox Noctis Посетить домашнюю страницу Nox Noctis Найти все сообщения от Nox Noctis
  № 4  
Ответить с цитированием
Nox Noctis
don't panic!
 
Аватар для Nox Noctis

Регистрация: Aug 2001
Сообщений: 4,121
не нужно ни синуса ни косинуса.
полярных координат тоже не надо.

нужно объект вложить в мувиклип, сдвинуть объект по оси икс (или игрек) на расстояние, равное радиусу окружности, а потом задать изменения свойства _rotation внешнего клипа.

Код:
var radius = 100;
var speed = 10;
//
this.createEmptyMovieClip("outer", 0);
outer.createEmptyMovieClip("inner", 0);
outer.inner.lineStyle(10, 0, 100);
outer.inner.lineTo(.2, 0);
//
outer.inner._x = radius;
//
outer.onEnterFrame = function()
{
	this._rotation += speed;
};
граждане!

прежде чем уверенно бросить недосказанную фразу вида "ты что, совсем тупой?", подумайте.

Старый 25.01.2006, 20:12
buka2 вне форума Посмотреть профиль Найти все сообщения от buka2
  № 5  
Ответить с цитированием
buka2
Banned
[+1.3 22.06.08]
[+3 24.09.08]
[+1 24.09.08]

Регистрация: Jan 2006
Сообщений: 69
clip._x = x0+R*Math.sin(a);
clip._y = y0+R*Math.cos(a);

где x0, y0 - центр окружности
R - радиус
a - угол поворота


Последний раз редактировалось buka2; 25.01.2006 в 20:16.
Старый 26.01.2006, 10:01
Ржевский вне форума Посмотреть профиль Отправить личное сообщение для Ржевский Найти все сообщения от Ржевский
  № 6  
Ответить с цитированием
Ржевский

Регистрация: Nov 2003
Адрес: Чей?
Сообщений: 40
да ну нет же! может в каком другой языке -да, но в actionscript где всё заточено для анимации, надо делать проще, а именно так как написал выше Nox Noctis.

кстати, если в приведенном им примере добавить движение внутреннего объекта по оси x то получится спираль

Старый 26.01.2006, 11:42
Nox Noctis вне форума Посмотреть профиль Отправить личное сообщение для Nox Noctis Посетить домашнюю страницу Nox Noctis Найти все сообщения от Nox Noctis
  № 7  
Ответить с цитированием
Nox Noctis
don't panic!
 
Аватар для Nox Noctis

Регистрация: Aug 2001
Сообщений: 4,121
Цитата:
Сообщение от Ржевский
кстати, если в приведенном им примере добавить движение внутреннего объекта по оси x то получится спираль ;)
ага :)

а если поэкспериментировать еще немного — может получиться что-то вроде этого:
http://noregret.org/tutor/scope/scope.html

Старый 26.01.2006, 13:14
__i вне форума Посмотреть профиль Отправить личное сообщение для __i Найти все сообщения от __i
  № 8  
Ответить с цитированием
__i
 
Аватар для __i

Регистрация: Jan 2004
Адрес: Украина, Харьков
Сообщений: 1,524
Отправить сообщение для __i с помощью ICQ
Выступлю третейским судьей:

вариант Nox Noctis красив своей простотой %)), но не всегда подойдет допустим когда сам мувик не должен поворачиваться а только должен двигаться по кругу.

вариант buka2 универсален, хотя и не так красив %)

Старый 26.01.2006, 13:20
Nox Noctis вне форума Посмотреть профиль Отправить личное сообщение для Nox Noctis Посетить домашнюю страницу Nox Noctis Найти все сообщения от Nox Noctis
  № 9  
Ответить с цитированием
Nox Noctis
don't panic!
 
Аватар для Nox Noctis

Регистрация: Aug 2001
Сообщений: 4,121
Цитата:
Сообщение от __i
вариант Nox Noctis красив своей простотой %)), но не всегда подойдет допустим когда сам мувик не должен поворачиваться а только должен двигаться по кругу.
Код:
var radius = 100;
var speed = 10;
//
this.createEmptyMovieClip("outer", 0);
outer.createEmptyMovieClip("inner", 0);
outer.inner.lineStyle(10, 0, 100);
outer.inner.lineTo(15, 0);
//
outer.inner._x = radius;
//
outer.onEnterFrame = function()
{
	this._rotation += speed;
	this.inner._rotation = -this._rotation;
};
предупрежу следующий вопрос: да, получить координаты клипа inner в любой момент можно без вычислений. берем его координаты и применяем localToGlobal().

вобщем всё зависит от цели мероприятия.
иногда синусы-косинусы могут понадобиться.
но далеко не всегда. :)

Старый 26.01.2006, 13:26
Skubent вне форума Посмотреть профиль Отправить личное сообщение для Skubent Посетить домашнюю страницу Skubent Найти все сообщения от Skubent
  № 10  
Ответить с цитированием
Skubent
 
Аватар для Skubent

Регистрация: Oct 2005
Адрес: Млечный Путь, 7-й рукав, YD AC-451, 3-я планета.
Сообщений: 996
Отправить сообщение для Skubent с помощью ICQ
Точно-точно, можно и без синусов-косИнусов.
К примеру,
Код:
for(x=0; x<=2*R; x=x+0.1) { 
    y = sqrt(R*R - x*x); 
//move clip to (x,y)
}

Создать новую тему Ответ Часовой пояс GMT +4, время: 03:43.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 03:43.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.