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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 24.01.2009, 02:15
storm_ вне форума Посмотреть профиль Отправить личное сообщение для storm_ Посетить домашнюю страницу storm_ Найти все сообщения от storm_
  № 1  
Ответить с цитированием
storm_
 
Аватар для storm_

Регистрация: Jan 2008
Адрес: Minsk Belarus
Сообщений: 107
По умолчанию Определение из множества клипов самого широкого и самого узкого

Дорогие форумчане.
Ситуация в следующем, на сцену прелоадером загружаются картинки в сгеннерированные клипы. У каждой картинки разная ширина. Нужно всего то определить самый широкий и самый узкий клип.

К примеру. Есть три переменные с тремя разными значениями. Я их забиваю в массив, а вот как теперь вывести из него только максимальное и минимальное значение?
Код AS1/AS2:
m0 = 1;
m1 = 5;
m2 = 3;
var arrayWidth:Array = new Array();
for (i=0; i<3; i++) {
	arrayWidth.push(this["m"+i]);
	trace(arrayWidth[i]);
}
Помогите разобраться пожалуйста.

Старый 24.01.2009, 03:06
Fatality вне форума Посмотреть профиль Отправить личное сообщение для Fatality Найти все сообщения от Fatality
  № 2  
Ответить с цитированием
Fatality
 
Аватар для Fatality

Регистрация: Jan 2009
Адрес: Одесса
Сообщений: 309
Отправить сообщение для Fatality с помощью ICQ
Ну в случае с массивом максимальное и минимальное значение удобно получать путем сортировки копии массива.
Код AS1/AS2:
function max(array:Array):Number
{
	var temp:Array = arr.slice();
	temp.sort();
	return temp[temp.length - 1];
}
function min(array:Array):Number
{
	var temp:Array = arr.slice();
	temp.sort();
	return temp[0];
}
var arr:Array = [5,4,1,3,6,2];
trace(max(arr));
trace(min(arr));

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

Регистрация: Jan 2008
Адрес: Minsk Belarus
Сообщений: 107
Вроде, то что надо. Работает!
Спасибо за поддержку, Fatality, в столь поздний час.

Старый 24.01.2009, 03:35
Fatality вне форума Посмотреть профиль Отправить личное сообщение для Fatality Найти все сообщения от Fatality
  № 4  
Ответить с цитированием
Fatality
 
Аватар для Fatality

Регистрация: Jan 2009
Адрес: Одесса
Сообщений: 309
Отправить сообщение для Fatality с помощью ICQ
Рад был помочь, только тот способ не полноценен он будет нормально сортировать числа только от 0 до 9.
Такая конструкция намного лучше:
Код AS1/AS2:
Array.prototype.max = function()
{
	var copy:Array = this.slice();
	copy.sort(16);
	if (!isNaN(copy[this.length-1]))
	{
		return copy[this.length-1];
	}
	else
	{
		return NaN;
	}
};
Array.prototype.min = function()
{
	var copy:Array = this.slice();
	copy.sort(16);
	if (!isNaN(copy[0]))
	{
		return copy[0];
	}
	else
	{
		return NaN;
	}
};
 
var arr:Array = [52, 465, 13545];
trace(arr.max());
trace(arr.min());
теперь у любого массива есть методы max() и min(), так удобнее.

Старый 24.01.2009, 04:21
storm_ вне форума Посмотреть профиль Отправить личное сообщение для storm_ Посетить домашнюю страницу storm_ Найти все сообщения от storm_
  № 5  
Ответить с цитированием
storm_
 
Аватар для storm_

Регистрация: Jan 2008
Адрес: Minsk Belarus
Сообщений: 107
=)
Еще раз спасибо.
Я только что столкнулся с проблемой десятичных чисел.
Спасибо.

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

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

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


 


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


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