Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Позиция картинок в галерее: зависимость rotationZ от x свойства класса Bitmap (http://www.flasher.ru/forum/showthread.php?t=195183)

yasha005 01.03.2013 20:30

Позиция картинок в галерее: зависимость rotationZ от x свойства класса Bitmap
 
Вложений: 1
Уважаемые форумчане, никак не могу подобрать формулу для взаимосвязи между свойством x и свойством rotationZ класса Bitmap для правильного позиционирования изображений в галерее. Число картинок динамичное, ширина и высота у всех картинок одинаковая с учётом погрешности в 200 пикселей.

Sync 02.03.2013 02:05

cos(x)?

Wolsh 02.03.2013 11:31

Не вижу никакого rotationZ. Напрягитесь объяснить свою проблему.

yasha005 02.03.2013 13:29

Цитата:

Сообщение от Wolsh (Сообщение 1123172)
Не вижу никакого rotationZ. Напрягитесь объяснить свою проблему.

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

Sync 02.03.2013 13:40

угадал)

yasha005 02.03.2013 13:58

Цитата:

Сообщение от Sync (Сообщение 1123147)
cos(x)?

и что это нам даст? Я не могу уловить ход ваших мыслей. Поясните, пожалуйста.

Добавлено через 16 минут
Цитата:

Сообщение от Sync (Сообщение 1123195)
угадал)

Если мы возьём какое-либо изображение как вид сверху (или вид снизу, это не принципиально) и спроецируем ширину этого изображения на ось х, то получим прямоугольный треугольник, где шириной будет являться гипотенуза данного треугольника

Если я вас правильно понимаю, вы предлагаете вычислять зависимость угла наклона картинки посредством косинуса отношения длины прилежащего катета (т.е. проекции на ось х) к гипотенузе (т.е. к ширине изображения)?

Добавлено через 30 минут
Выходит что я ошиблася, надо искать зависисоть rotationY от угла наклона и количетва изображений.

Спасибо, я кажется понял ход ваших мыслей: тут нужно отношение прилежащего катета к гипотенузе выразить через арккосинус, тогда как раз получится искомый угол который уже можно будет присвоить свойству rotationY

Sync 02.03.2013 14:29

Цитата:

Сообщение от yasha005 (Сообщение 1123200)
Если мы возьём какое-либо изображение как вид сверху (или вид снизу, это не принципиально) и спроецируем ширину этого изображения на ось х, то получим прямоугольный треугольник, где шириной будет являться гипотенуза данного треугольника

Вы только что уничтожили мой мозг. я всю квартиру им забрызгал. Родина вас не просит.

Цитата:

Если я вас правильно понимаю, вы предлагаете вычислять зависимость угла наклона картинки посредством косинуса отношения длины прилежащего катета (т.е. проекции на ось х) к гипотенузе (т.е. к ширине изображения)?
никаких зависимостей углов я не предлагаю применять. Судя по приведенной вами картинке, угол между плоскостями абсолютно тупо равен 90/count
левая граница по координате х будет находиться в точке cos(num*90deg/count)*radius. правая граница будет находиться в точке x1 = cos(num*90deg/count)*(radius+width);
Нет никаких гениальных формул.
либо вы неправильно объясняете что вам надо.

yasha005 02.03.2013 14:47

Цитата:

Сообщение от Sync (Сообщение 1123206)
Вы только что уничтожили мой мозг. я всю квартиру им забрызгал. Родина вас не просит.



никаких зависимостей углов я не предлагаю применять. Судя по приведенной вами картинке, угол между плоскостями абсолютно тупо равен 90/count
левая граница по координате х будет находиться в точке cos(num*90deg/count)*radius. правая граница будет находиться в точке x1 = cos(num*90deg/count)*(radius+width);
Нет никаких гениальных формул.
либо вы неправильно объясняете что вам надо.

Ваш первый пост для меня был более информативным чем следующий, потому что последним постом вы уничтожили мой мозг. В любом случае, спасибо за помощь.

По сабжу: я всётаки считаю более правильным придерживаться такого алгоритма:
Код:

прилежащий катет (т.е. проекция на ось х) = ширина картинки * (количество картинок минус текущая позиция картинки в массиве)/количество картинок;
угол наклона = Math.acos(прилежащий катет / гипотенуза);


Sync 02.03.2013 14:53

вы надеетесь, что 9 картинок на четверть окружности дадут иной угол, нежели 10 градусов?
может уже расскажите простыми словам (без "зависимость", "отношение", "катет") что вам нужно получить в итоге и какие исходные данные?

yasha005 02.03.2013 16:24

Цитата:

Сообщение от Sync (Сообщение 1123209)
вы надеетесь, что 9 картинок на четверть окружности дадут иной угол, нежели 10 градусов?
может уже расскажите простыми словам (без "зависимость", "отношение", "катет") что вам нужно получить в итоге и какие исходные данные?

так я ж и говорю: угол наклона и будет как раз-таки опциональным в зависимости от количества картинок. Другими словами чем больше "листов" в "книге", тем более плотно они будут друг к другу размещены. А диапазон угла всегда будет постоянной величиной в интервале от 0 до 90 градусов.


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

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