Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript (http://www.flasher.ru/forum/forumdisplay.php?f=5)
-   -   Относительность координат на флеш (+) (http://www.flasher.ru/forum/showthread.php?t=36290)

skvortsov 26.08.2002 20:20

Относительность координат на флеш (+)
 
Хочу с помощью action-script сделать бегущую строку.

Завожу мувиклип. В нем button, который задает активную зону (строка должна бежать только тогда, когда наведена на нее мышка). Еще один мувик - собственно текст, который должен бегать. Его помещаю в первый клип и даю instance name. При наведении мышки начинаю уменьшать координату в цикле (например по оси x). при этом все работает, но я никак не могу понять, относительно чего выставляются координаты. Методом тыка получается, что начало координат не находится ни в начале координат всего ролика ни в начале координат первого мувика. Т.е. если я задаю координаты мувика с текстом внитри первого клипа в properties, а потом те же самые значения, но программно - то текст попадает в разные места. В чем может быть проблема?

sapiens 27.08.2002 02:17

вообще, это координаты верхнего левого угла, если мне не изменяет память.... вроде.....бы.....

Nox Noctis 27.08.2002 02:54

исходник в студию :)
или будем вращать барабан ? :))

с координатами все вполне логично на самом деле...

JeeP 27.08.2002 13:06

координаты отсчитываются относительно... точки 0,0 :D .

Во Флеше для рута эта нулевая точка находится в верхнем левом углу, а любой объект в руте вписывается в прямоугольную область, и верхний левый угол этой области и является той точкой объекта кот. помещается в указанные координаты (относительно нулевой точки). А вот внутри любого мувика нулевой точкой является точка привязки, по умолчанию она находится в центре мувика.

Nox Noctis 27.08.2002 13:10

2JeeP
что, простите ? :D
а теперь повтори все это три раза быстро-быстро :)
а задом-наперед ? :D :D

ЛОWАДКА 27.08.2002 13:25

в том смысле, что если в мувике объект поместить в точку 0,0 а сам мувик на сцене поместить в точку 100,100 то и объект относительно сцены будет лежать в точке 100,100

Когда я делал мувик ,который создавал текстовые поля и расчитывал их месторасположение в зависимости от размеров я просто кинул его в точку 0,0 на главную сцену. А по уму, есть комманда localToglobal и globalTolocal. Их нужно юзать, чтоб с координатами не мучаться!


MovieClip.globalToLocal

Availability

Flash Player 5.

Usage

myMovieClip.globalToLocal(point)

Parameters

point The name or identifier of an object created with the generic Object object specifying the and coordinates as properties.

Returns

Nothing.

Description

Method; converts the point object from Stage (global) coordinates to the movie clip's (local) coordinates.

Example

The following example converts the global and coordinates of the point object to the local coordinates of the movie clip.

onClipEvent(mouseMove) {
point = new object();
point.x = _root._xmouse;
point.y = _root._ymouse;
globalToLocal(point);
trace(_root._xmouse + " " + _root._ymouse);
trace(point.x + " " + point.y);
updateAfterEvent();
}


MovieClip.localToGlobal

Availability

Flash Player 5.

Usage

myMovieClip.localToGlobal(point)

Parameters

point The name or identifier of an object created with the Object object, specifying the and coordinates as properties.

Returns

Nothing.

Description

Method; converts the point object from the movie clip's (local) coordinates, to the Stage (global) coordinates.

Example

The following example converts and coordinates of the point object, from the movie clip's coordinates (local) to the Stage coordinates (global). The local and coordinates are specified using the _xmouse and _ymouse properties to retrieve the and coordinates of the mouse position.

onClipEvent(mouseMove) {
point = new object();
point.x = _xmouse;
point.y = _ymouse;
_root.out3 = point.x + " === " + point.y;
_root.out = _root._xmouse + " === " + _root._ymouse;
localToGlobal(point);
_root.out2 = point.x + " === " + point.y;
updateAfterEvent();
}

DeliMIter 27.08.2002 13:38

Короче без звонка другу не обойтись...

JeeP 27.08.2002 13:46

Цитата:

Оригинал написал(а) Nox Noctis
1)а теперь повтори все это три раза быстро-быстро :)
2)а задом-наперед ? :D :D

1) скороговорками не увлекаюсь, текст перед тобой, если че непонятно - спрашивай! :D

2)только без пошлостей! :)

ЛОWАДКА 27.08.2002 13:52

Вложений: 1
2 DeliMIter

DeliMIter 27.08.2002 14:14

2Rogopil

Ладно-ладно, вот погоди, наступит завтра...

:))))))))))))))))))))))))))))


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

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