Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Окончание шнура извивается 
:(
    Опции темы
FightInGlory
Дата 29.6.2010, 16:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 123
Регистрация: 14.11.2006

Репутация: нет
Всего: 1



Подскажите, как можно реализовать подобную вещь. При уменьшении/увеличении экрана окончание шнура (красного цвета), извивалось за шнуром.
user posted image

Это сообщение отредактировал(а) FightInGlory - 29.6.2010, 16:46
PM MAIL   Вверх
ksnk
Дата 29.6.2010, 17:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 84
Всего: 386



  • Рисовать его с использованием canvas.  Правда тогда лучше штекер подключения изобразить на одном и том-же уровне. К примеру - расправлять - сжимать сам шнур, сложенный пружинкой...
  • нарисовать весь "путь" искривления шнура и "обрезать" его вышележащим дивом. правда что делать с красным штекером и плавающей точкой подключения шнура к колонке - ума не приложу. Разве что несколько картинок под разными углами и подставлять нужную картинку в зависимости от длины шнура... Сложные вычисления получаются... в этом случае проще на штекер наплевать  smile


Это сообщение отредактировал(а) ksnk - 29.6.2010, 17:36


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
IDVsbruck
Дата 29.6.2010, 17:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 778
Регистрация: 12.11.2006

Репутация: 8
Всего: 22



а) какое отношение гифка имеет к этому разделу? - в смысле, что хочется сделать на js как показано на картинке?
б) это задание как раз для подраздела "JavaScript: для новичков", но явно не профи-вопрос ...

Если как тут, то это делается для определенного количества положений, для которых и определяется "наконечник". На практике так: нижний слой - весь шнур, следующий слой - магнитофон в 3-4-5-6 положениях (сколько надо) и верхний слой - наконечник соответственно в 3-4-5-6 положениях. 3 картинки, которые при будто бы "анимации" смещаются и перерисовываются. Наконечник во всех положениях, естественно, в одной картинке, и перерисовка через изменение положения картинки в контейнере (CSS-sprites), а то мелькания достанут.

А вообще-то, это баннерно-анимационная штука и заниматься подобным должны специальные инструменты - та же гифка (тьфу, не люблю и не использую) или флешка, где можно прорисовать действительно анимационную штуку, а не этот "фильмоскоп".
PM MAIL   Вверх
FightInGlory
Дата 29.6.2010, 20:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 123
Регистрация: 14.11.2006

Репутация: нет
Всего: 1



2 IDVsbruck, данное изображение было в качестве примера. Оно показывает, что при изменении размера окна браузера шнур должен увеличиваться (если размер окна увеличивается), а наконечник перемещаться по вертикали за ним. Пример про слайды лично я не понял. Ну сделаю я 10 положения, но не добьюсь идеального плавного движения. И поверь данный пример далеко не каждый опытный сделает, не то что новичек.
2 ksnk, большое спасибо за ответ. Тоже не могу сообразить как быть со штекером, но надо именно так.
PM MAIL   Вверх
IDVsbruck
Дата 30.6.2010, 00:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 778
Регистрация: 12.11.2006

Репутация: 8
Всего: 22



Я не знаю кто такой новичЕк, с ним не знаком, но, в принципе, задача не так уж и сложна. Самый сложный вопрос, как ни странно, заключается в том, как быстро (и удобно) поворачивать картинку со штекером. Но вроде библиотеки есть - найти не составит труда.
Главная "фича" в том, что шнур не берем с фоток, а рисуем сами - в фотошопе (уроков - море, абсолютно реалистичные получаются), но рисуем не просто линию, а, скажем, нарисованную где-то в Матлабе или Маткаде - можно чистую синусоиду, можно слегка затухающую или с переменным множителем угла (каждая "волна" шире или уже), выписываем и импортируем в графический редактор. Одним словом, суть в том, чтобы точно знать формулу шнура от вилочки до места "входа" в гаджет. Дальше - дело техники и аккуратного математического программирования. Нижний слой - шириной до гаджета - шнур, выше слой оставляем под штекер, и верний - гаджет. Так как у тебя есть точные координаты и функция кривой, значит, всегда можно вычислить вертикаль и угол касательной (первая производная, кажись - для тригонометрических функций там и вовсе просто). Остается только перемещать штекер по горизонтали вслед за гаджетом, по вертикали - ордината функции, а угол - касательная в месте соприкосновения шнура и гаджета. Для чистой синусоиды задача и вовсе простецкая, только не так фотореалистично будет.
PM MAIL   Вверх
mxt
Дата 7.7.2010, 00:46 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 133
Регистрация: 6.9.2007

Репутация: нет
Всего: 1



Если отвечать прямо на вопрос, как на картинке  то делается просто (извеняюсь, если тут об этом написали, и я просмотрел)
1. Рисуется шнур  (к примеру как на картинке)
2. Берется этот же шнур, перекрашивается и немного увеличивает его толщина (хотя необязательно)
3. Нижним слоем идет шнур. верхним та перекрашенная картинка с шириной 5px и с отступами слева в элементе и в фоне.
4. Затем при изменении размера,  выставлять нужный отступ в обоих параметрах


это если прям как на картинке.


Это сообщение отредактировал(а) mxt - 7.7.2010, 00:46
--------------------
PM MAIL   Вверх
SelenIT
Дата 9.7.2010, 03:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


баг форума
****


Профиль
Группа: Завсегдатай
Сообщений: 3996
Регистрация: 17.10.2006
Где: Pale Blue Dot

Репутация: 49
Всего: 401



По-моему, слегка модифицировав подход mxt, можно обойтись и без JS (если не учитывать IE6)...
Код

<!doctype html>
<html>
<head>
<title>Test</title>
<style> 
.shnur { position: relative; min-width: 400px; height: 153px; background: url(http://img62.imageshack.us/img62/6540/shteck.png) 0 0 no-repeat; }
.shnur div { position: absolute; top: 0; left: 0; right: 309px; height: 153px; background: url(http://img571.imageshack.us/img571/4161/shnur.png) 0 0 no-repeat; }
.shnur img { position: absolute; top: 0; right: 0; }
</style>
</head>
<body>
<div class="shnur">
    <div></div>
    <img src="http://img6.imageshack.us/img6/2432/muzv.jpg">
</div>
</head>
</body>
</html>




--------------------
Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0740 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.