PDA

Просмотр полной версии : Линия неправильно растягивается (height)


mj_nooker
04.08.2010, 09:55
Доброго времени!

Замучился я.
Есть объект А - верхняя кнопка рисованного скроллера.
Объект В - нижняя кнопка.
Объект С - вертикальная линия, соединяет А и В.

Математически вычисляю расстояние между А и В (от верт.координаты В отнимаю её высоту, от этого всего отнимаю _y координату А и высоту А), присваиваю С._height полученное значение - линия С короче, чем надо.
Скейл родительского мувика - 100% (тоесть недотягивает не из-за уменьшенного скейла).

Я так понимаю - загвоздка не в самом скрипте, а в понятиях Flash.
Облазил всевозможные точки трансформации, свойства scale линии и т.д. - ничего не помогло. Но ведь проблема только во мне, иначе-бы инет давно-бы заполнился криками о помощи в данном вопросе.

Помогите, пожалуйста, советами. Надоело безрезультатно тыкать пальцем в небо ((

udaaff
04.08.2010, 10:48
А зачем от B её высоту отнимаете? Объекты все в ноле центрированы?

mj_nooker
04.08.2010, 11:00
пробовал по разному вычислять
объекты=Линия в мувике, всё отцентрировано в нуле

mj_nooker
04.08.2010, 11:21
Вот показано на отдельном примере...:wacko:

mj_nooker
04.08.2010, 18:11
Господа, посмотрите пример, плз, а? )
Нафантазировал кучу вариантов для строки поиска Гугли и форума - не нашёл конкретной подходящей инфы. До сих пор сижу, уже зеваю по вертикали)))

rainbowrussia
04.08.2010, 21:49
Сохраните для CS3.

mj_nooker
04.08.2010, 23:58
пожалуйста

rainbowrussia
05.08.2010, 03:42
У вас какая-то заморочка с c_mc, а именно с линией. Сделайте вместо линии прямоугольник и все заработает. Или создайте c_mc заново с линией. Я создал заново эту линию - все стало более-менее похоже на правду, но с прямоугольником (пусть даже узким, как линия) все нормально.

upd. Кстати вот решения для вашего случая. Не знаю почему _height так себя ведет, а вот _yscale не подвел:

c_mc._yscale = (a_mc._y - b_mc._y - b_mc._height)*100/24;

mj_nooker
05.08.2010, 04:47
Спасибо за помощь!

Да, в ходе "игры" с глюком я видел, что если ставить ЗАЛИВКУ, а не ЛИНИЮ, то длина соответствует, но в моём случае интересовала именно линия. Хотя (если учесть, что проблемы рано или поздно однозначно должны быть решены), в конечном итоге, если другого выхода я не найду (например, после "растяжки" дублирую эту линию и ставлю эту копию в продолжение оригинальной и ещё пару вариантов "голь на выдумки хитра" ;) ), то поставлю заливку и плясать буду уже отталкиваясь от неё.

Я думал, что может где-то есть "галка", с которой мне не доводилось сталкиваться ранее.

Добавлено через 2 часа 31 минуту
О! ещё раз спасибо за upd!) О скейле "прямо под носом" я, таки устал, не догадался.

Судя по логике вычисления скейла, 24 это высота линии? (ну на всякий уточнил :) )

rainbowrussia
05.08.2010, 15:11
Да, 24 это изначальная высота клипа с линией.
С линиями во флеше все как-то осень непросто, по-этому если позволяет задача - сделайте линию в виде прямоугольника шириной 1 (или сколько надо) пиксель - будет выглядеть как линия.

mj_nooker
06.08.2010, 10:32
Спасибо!

Вопрос решен!