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

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

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

Регистрация: Dec 2003
Адрес: Самара
Сообщений: 10
По умолчанию сбой отрисовки линий

Привет, всем!
вот код, с помощью которого я отрисовываю много-много горизонтальных чёрточек. А потом перечёркиваю их одной длинной полоской. (не спрашивайте "зачем?" )
Всё это на Flash 5;

MovieClip.prototype.drawLine = function(ax1, ay1, ax2, ay2) {
with (this) {
lineStyle(1, 0, 100);
moveTo(ax1, ay1);
lineTo(ax2, ay2);
}
}

var mcGround = this.createEmptyMovieClip("mcGround", 1);
mySP.setScrollContent(mcGround);

for (var i=0; i<2681; i++) {
ty = 3 * i;
mcGround.drawLine(5, ty, 15, ty);
}

mcGround.drawLine(10, 0, 10, ty);

mySP.refreshPane();

---------------
так вот, если граница цикла меньше числа 2681, то всё чётко прорисовывается. Если немного больше - то вертикальная линия начинает глючить и прорисовываться частями (или даже копировать себя). Если же заменить на совсем большое - например 12681 - тогда и горизонтальные чёрточки будут глючить, а внизу сольются в одно целое!

Подскажите, плз, что за глюк такой и как его побороть. Спасибо!

Старый 15.01.2004, 18:13
opex вне форума Посмотреть профиль Отправить личное сообщение для opex Найти все сообщения от opex
  № 2  
opex
[+1.3 05.04.09]
 
Аватар для opex

Регистрация: Sep 2003
Адрес: Где-то рядом.
Сообщений: 686
Отправить сообщение для opex с помощью ICQ Отправить сообщение для opex с помощью Skype™
просто когда координата у привышает максимальню то её автоматм кидает на минимальную и получается что эти черточки рисуются покругу вот а так как у тебя гдето есть смещение на 1 пиксель они начинают глючить вот те код там все сразу видно
Код:
_root.createEmptyMovieClip("ver", 0);
with (_root.ver) {
	lineStyle(0, 0x000000, 100);
	for (i=0; i<20000; i += 5) {
		moveTo(25, i);
		lineTo(35, i);
	}
	moveTo(30, 0);
	lineTo(30, i);
}
__________________
Бойтесь китайцев, компы приносящих!

Старый 15.01.2004, 19:38
Nickoledion вне форума Посмотреть профиль Найти все сообщения от Nickoledion
  № 3  
Nickoledion

Регистрация: Dec 2003
Адрес: Самара
Сообщений: 10
ок! Спасибо!
И, как я понимаю, это максимальное значение изменить/установить никак нельзя!?

Старый 16.01.2004, 01:25
sergwizard вне форума Посмотреть профиль Отправить личное сообщение для sergwizard Посетить домашнюю страницу sergwizard Найти все сообщения от sergwizard
  № 4  
sergwizard
 
Аватар для sergwizard

Регистрация: Jan 2002
Адрес: СПб-Denver-Лермонтов
Сообщений: 1,525
Цитата:
Всё это на Flash 5;
Везет же некоторым! А у меня все это только в МХ работает.
__________________
Для того чтобы узнавать, есть два способа: - задавать вопросы и пытаться самому на них ответить. Второй способ более продуктивный.
(S.Wizard)

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

Регистрация: Dec 2002
Адрес: Сочи
Сообщений: 2,819
У него, наверное 5ка переходящая в 7ку.

Старый 16.01.2004, 12:12
Nickoledion вне форума Посмотреть профиль Найти все сообщения от Nickoledion
  № 6  
Nickoledion

Регистрация: Dec 2003
Адрес: Самара
Сообщений: 10
Цитата:
Оригинал написал(а) Штрек
У него, наверное 5ка переходящая в 7ку.
Прошу прощения - ошибся я. Flash MX, конечно же!

Старый 16.01.2004, 12:49
styx вне форума Посмотреть профиль Отправить личное сообщение для styx Найти все сообщения от styx
  № 7  
styx

Регистрация: Apr 2003
Сообщений: 243
Цитата:
просто когда координата у привышает максимальню то её автоматм кидает на минимальную
А вот такой вопрос - если где-нибудь официальная информация по этим nin/max значениям? Я тоже в какой-то момент на это напоролся и долго мучался... но не скажу, что полученное решение меня устраивает. Ещё тот же эфект с _scale параметрами - при увеличении больше какой-то величины круг превращается... ну, можете догадаться, во что он превращается. И вот как бы вычислить те значения, которые использовать нельзя - ведь они, видимо, зависят от координат того, что находится в клипе?

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

Регистрация: Jan 2002
Адрес: СПб-Denver-Лермонтов
Сообщений: 1,525
Цитата:
Я тоже в какой-то момент на это напоролся и долго мучался... но не скажу, что полученное решение меня устраивает.
А скажите-ка мне, мученик styx и Nickoledion, на кой пес вам такие большие величины? Вот, давайте посмотрим на эти строчки из кода:
for (var i=0; i<2681; i++) {
ty = 3 * i; … }
Получаем в итоге 8043 пикселя по оси у. Это на порядок больше, чем размер экрана монитора. Но и этого вам мало. Вы хотите больше. Зачем???? Для чего вам такой(!) Flash документ. Куда вы его запихивать собираетесь? Просто интересно услышать логичное объяснение.
__________________
Для того чтобы узнавать, есть два способа: - задавать вопросы и пытаться самому на них ответить. Второй способ более продуктивный.
(S.Wizard)

Старый 16.01.2004, 21:46
Штрек вне форума Посмотреть профиль Отправить личное сообщение для Штрек Найти все сообщения от Штрек
  № 9  
Штрек

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

Получаем в итоге 8043 пикселя по оси у. .
А бедный проц, должен всё это дело обрабатывать.

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

Регистрация: Jan 2002
Адрес: СПб-Denver-Лермонтов
Сообщений: 1,525
Так что, нет логичных объяснений?
__________________
Для того чтобы узнавать, есть два способа: - задавать вопросы и пытаться самому на них ответить. Второй способ более продуктивный.
(S.Wizard)

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

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

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


 


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


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