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

Вернуться   Форум Flasher.ru > Архив Flasher.ru > Flash > ActionScript

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 04.11.2003, 02:16
Штрек вне форума Посмотреть профиль Отправить личное сообщение для Штрек Найти все сообщения от Штрек
  № 21  
Штрек

Регистрация: Dec 2002
Адрес: Сочи
Сообщений: 2,819
Можно просто продублировать circle1
и отскалить.

Старый 04.11.2003, 02:18
Techmaker вне форума Посмотреть профиль Отправить личное сообщение для Techmaker Найти все сообщения от Techmaker
  № 22  
Techmaker
"человек"
 
Аватар для Techmaker

Регистрация: Nov 2002
Адрес: +-
Сообщений: 1,807
Цитата:
Оригинал написал(а) Techmaker
this.createEmptyMovieClip("circle2",2)
with(circle1 ){
lineStyle(5,0x000000,100)
circle(0,0,20)
_x=Stage.width/2
_y=Stage.height/2
}
только что заметил(засыпаю уже, а ещё столько работы) замени на:
--------------------------------------------------------------------------------
this.createEmptyMovieClip("circle2",2)
with(circle2 ){
lineStyle(5,0x000000,100)
circle(0,0,20)
_x=Stage.width/2
_y=Stage.height/2
}
--------------------------------------------------------------------------------



Цитата:
Оригинал написал(а) Верас Ольга
Ну и уж последняя наглость - вращение какого -нибудь обьекта (скажем маленького кружка) по окружности?
ну а это уже из области триганометрии
--------------------------------------------------------------------------------
MovieClip.prototype.circle = function(x, y, r) {
var mas = new Array();
var step = 16;
var angle = 360/step;
var rad = Math.PI/180;
for (var i = 0; i<=step; i++) {
mas[i] = new Object();
mas[i].x = Math.cos(angle*rad*i)*r+x;
mas[i].y = Math.sin(angle*rad*i)*r+y;
}
this.moveTo(mas[0].x, mas[0].y);
for (var i = 0; i<step; i += 2) {
// curveThreeTo
var cx = 2*mas[i+1].x-0.5*(mas[i].x+mas[i+2].x);
var cy = 2*mas[i+1].y-0.5*(mas[i].y+mas[i+2].y);
this.curveTo(cx, cy, mas[i+2].x, mas[i+2].y);
}
};

this.createEmptyMovieClip("circle1",1)
with(circle1){
lineStyle(5,0x000000,100)
circle(0,0,50)
_x=Stage.width/2
_y=Stage.height/2
}

this.createEmptyMovieClip("circle2",2)
with(circle2){
lineStyle(5,0x000000,100)
circle(0,0,10)
_x=Stage.width/2
_y=Stage.height/2
}

// создаём функцию цыкла
this.onEnterFrame=function(){
// обозначим радиус около которого вращается наша окружность
this.radius1=50
// обозначим скорость движения(вращения) окружности (градус/на кадр)
this.speed=2
// обозначим радианы
this.rad=Math.PI/180
// движение и расчёт
this.stepAngel+=this.speed
/* приравниваем расчитанные координаты к малой
//окружности с учётом расположения по центру */
this.circle2._x=Math.cos(this.stepAngel*this.rad)*this.radius1+Stage.width/2
this.circle2._y=Math.sin(this.stepAngel*this.rad)*this.radius1+Stage.height/2
}
--------------------------------------------------------------------------------
__________________
flash it

Старый 04.11.2003, 02:22
Techmaker вне форума Посмотреть профиль Отправить личное сообщение для Techmaker Найти все сообщения от Techmaker
  № 23  
Techmaker
"человек"
 
Аватар для Techmaker

Регистрация: Nov 2002
Адрес: +-
Сообщений: 1,807
Цитата:
Оригинал написал(а) Штрек
Можно просто продублировать circle1
и отскалить.
Проще создать второй клип, а не изменять дупликат
__________________
flash it


Последний раз редактировалось Techmaker; 04.11.2003 в 02:24.
Старый 04.11.2003, 02:54
Штрек вне форума Посмотреть профиль Отправить личное сообщение для Штрек Найти все сообщения от Штрек
  № 24  
Штрек

Регистрация: Dec 2002
Адрес: Сочи
Сообщений: 2,819
Цитата:
Оригинал написал(а) Techmaker

Проще создать второй клип, а не изменять дупликат
Ну конечно??
или
duplicateMovieClip("circle1", "circle2", 2);
circle2._xscale=80;
circle2._yscale=80;
или
this.createEmptyMovieClip("circle2",2)
with(circle2 ){
lineStyle(5,0x000000,100)
circle(0,0,20)
_x=Stage.width/2
_y=Stage.height/2
}
Думаю первый вариант попроще будет

Старый 04.11.2003, 03:05
Techmaker вне форума Посмотреть профиль Отправить личное сообщение для Techmaker Найти все сообщения от Techmaker
  № 25  
Techmaker
"человек"
 
Аватар для Techmaker

Регистрация: Nov 2002
Адрес: +-
Сообщений: 1,807
толщина линии как видишь меняется с размером, а я люблю всё чётко
__________________
flash it

Старый 04.11.2003, 03:24
Штрек вне форума Посмотреть профиль Отправить личное сообщение для Штрек Найти все сообщения от Штрек
  № 26  
Штрек

Регистрация: Dec 2002
Адрес: Сочи
Сообщений: 2,819
Ну если толщина
Тогда просто

this.createEmptyMovieClip("circle1", 1);
with (circle1) {
lineStyle(5, 0x000000, 100);
circle(0, 0, 50);
circle(0, 0, 20);
_x = Stage.width/2;
_y = Stage.height/2;
}

И ничего больше /кроме пропотипа/

Старый 04.11.2003, 03:31
Techmaker вне форума Посмотреть профиль Отправить личное сообщение для Techmaker Найти все сообщения от Techmaker
  № 27  
Techmaker
"человек"
 
Аватар для Techmaker

Регистрация: Nov 2002
Адрес: +-
Сообщений: 1,807
2Штрек
может тогда проще рисовать прямо в руте без всяких мувиклипов?
__________________
flash it

Старый 04.11.2003, 04:06
Штрек вне форума Посмотреть профиль Отправить личное сообщение для Штрек Найти все сообщения от Штрек
  № 28  
Штрек

Регистрация: Dec 2002
Адрес: Сочи
Сообщений: 2,819
РУТ - ЭТО СЕРЬЁЗНО !!!

Старый 04.11.2003, 08:33
старина смерть вне форума Посмотреть профиль Найти все сообщения от старина смерть
  № 29  
старина смерть
Banned

Регистрация: Oct 2003
Сообщений: 206
Smile с приветом из ада

Цитата:
Оригинал написал(а) Techmaker
толщина линии как видишь меняется с размером, а я люблю всё чётко
А если толщину 0 задать? Тогда она с размером не меняется
Какой я умный, оказывается...

Старый 04.11.2003, 11:13
Верас Ольга вне форума Посмотреть профиль Отправить личное сообщение для Верас Ольга Найти все сообщения от Верас Ольга
  № 30  
Верас Ольга
 
Аватар для Верас Ольга

Регистрация: Aug 2003
Адрес: Москва
Сообщений: 188
Всем большое спасибо. Ну Вы мужики и накрутили. Без ящика не разобраться. А всего лишь надо - нарисовать 2 окружности разного диаметра. И имитировать их вращение. Мне показалось, что проще всего вращать по этим окружностям какой-нибудь мелкий обьект - дабы он перекрывал сектор окружности - и этим имитировал их визуальное вращение (в разные стороны). И мне не очень ясно с толщиной окружности. Она что, привязана к ее радиусу?
____________________________________________
Имеется в виду проще, чем стряпать какую-то разорваную окружность да еще ее и вращать. Хотя может я и не права -Вам виднее - жираф большой .....


Последний раз редактировалось Верас Ольга; 04.11.2003 в 11:21.
Создать новую тему   Часовой пояс GMT +4, время: 17:44.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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