Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Текстовая Анимация на Canvase. (https://javascript.ru/forum/dom-window/36938-tekstovaya-animaciya-na-canvase.html)

Mike_Kharkov 01.04.2013 23:52

Смотрите.
Стирать как это я знал.
Но у меня же контуры находятся в методе setInterval!
Я пробовал много чего в своём коде - но у меня не получалось сделать так что бы происходила и анимация и при этом старые контуры исчезали(или если хотите закрашивались с нужным мне цветом(прозрачным допустим.)..)
То что нельзя вообще стерать(даже скриптом или химией любой) контуры об этом не знал.(Теперь понял.)
Далее мне не ясно как метод isPointinPath работает?
Что бы я это смог понять мне надо увидеть на моем(или хоть каком то примере его в действии..)
Пример:
ctx.beginPath();
ctx.fillStyle="red";
ctx.font="400 15px orbitronioregular";
ctx.shadowBlur = 40;
ctx.shadowOffsetX=7;
ctx.shadowOffsetY=7;
ctx.shadowColor = "#cc9933";
ctx.fillText("First",x+64,y+82);
ctx.fillText("Sector",x+56,y+102);
ctx.restore();
x+=5;y+=5;
if (ctx.isPointInPath(1,1)) {
	      alert('Ура !');
};

Вот так примерно я пытался на своём коде понять как это работает.
Пробовал по разному с любыми значениями.
Ничего не получилось. В инете просто нет примера(детального) на русском.(не исключаю что я мог не найти - но прогуглил я прилично. По нескольку страниц из каждого поискового запроса!)

Далее я хотел понять, как правильно реализовать(то есть писать код) анимацию текста, что бы он от стенок ударялся и дальше отлетал по другой(нужной мне) траектории? (где в инете есть подобная инфа на русском?)
Поэтому я и обратился на форум. (сам придумать пока решение не могу. Тем более что не удается понять как метод isPointInPath функционирует.)

+ у меня репитятся тени(у контуров в методе setInterval) если их включать!
http://yamaradg.narod2.ru/Canvas/canvas_3.html
Это тоже с помощью гугла как решить можно?
(Особенно если опыта в этой сфере(JS) не так много..)

dmitriymar 02.04.2013 00:22

Цитата:

Сообщение от Mike_Kharkov
Далее мне не ясно как метод isPointinPath работает?
Что бы я это смог понять мне надо увидеть на моем(или хоть каком то примере его в действии..)

http://www.xiper.net/manuals/canvas/...intInPath.html
Цитата:

var canvas = document.getElementById("picture");
var ctx = canvas.getContext("2d");

ctx.beginPath();
ctx.rect(50,50,100,50);
ctx.fill();
ctx.closePath();

var isPath = ctx.isPointInPath(50,50); // return true
var isPath2 = ctx.isPointInPath(1,1); // return false
именно так и работет , если по координатам указанным есть нарисованная точка вернёт тру , иначе фалс
Цитата:

Сообщение от Mike_Kharkov
if (ctx.isPointInPath(1,1)) {
alert('Ура !');
};

Ранее я давал ссылку в какой было написано когда путь отрисовывается
Там же:

http://www.xiper.net/manuals/canvas/2D-api/font.html
...
если посмотреть на примеры относительно текста , в глаза явно бросается отсутствие
Цитата:

Сообщение от Mike_Kharkov
ctx.beginPath();

а если перейти на метод
http://www.xiper.net/manuals/canvas/...beginPath.html
явно можно прочитать для чего он используется . За чем же его совать для того , для чего он не предназначен?

а если забить в поиске канва яваскрипт основы , то можно перейти с первой страницы на подобные сайты
http://w3pro.ru/article/html-5-canva...chinayushchikh
Цитата:

Сообщение от Mike_Kharkov
инете просто нет примера(детального) на русском.(не исключаю что я мог не найти - но прогуглил я прилично. По нескольку страниц из каждого поискового запроса!)

Есть это всё , и на тех сайтах ссылки на какие давал, это просто вы читать и понимать их не хотите

Mike_Kharkov 02.04.2013 00:32

Всё ссылки которые вы мне скидывали в этом топике - я уже читал ранее!
(кроме буржуйского примера.)
Вот эту ссылку
http://www.xiper.net/manuals/canvas/...intInPath.html
я просматривал ранее. (не один раз.)
По аналогии с ней и пытался проверить этот метод в своём коде!
Если вы мне приведёте пример таким образом что бы Alert действительно сработал(допустим на моём коде.) - то думаю что понять мне будет это дело совсем не сложно.
Ну а так, что мне дает значение истина или ложь? (ничего.)
Как начало нового контура(beginPath) мешает мне или помагает в данном случае(из ваших слов) я вообще не понял, если честно..

dmitriymar 02.04.2013 00:44

Цитата:

Сообщение от Mike_Kharkov
Всё ссылки которые вы мне скидывали в этом топике - я уже читал ранее!
(кроме буржуйского примера.)
Вот эту ссылку

дак почему же вы
Цитата:

Сообщение от Mike_Kharkov
ctx.beginPath();

используете для текста , если он предназначен для рисования фигур пот точкам пути ?:lol:
Цитата:

Сообщение от Mike_Kharkov
Если вы мне приведёте пример таким образом что бы Alert действительно сработал(допустим на моём коде.) - то думаю что понять мне будет это дело не сложно.

какие примеры ? изучите основы в конце концов . на сайте есть хороший пример его достаточно , и интервалы не причём. причина- вы не знаете элементарного, потому что "все основы вы изучили и знаете их иначе как бы вы смогли написать этот код бред"
Цитата:

Сообщение от Mike_Kharkov
Ну а так, что мне дает значение истина или ложь? (ничего.)

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

Сообщение от Mike_Kharkov
Как начало нового контура(beginPath) мешает мне или помагает в данном случае(из ваших слов) я вообще не понял, если честно..

что здесь не ясного ? не используется он с текстом -он для рисования фигур по точкам пути . :-E также он не используется с рисованием прямоугольников методами
http://www.xiper.net/manuals/canvas/...trokeRect.html
http://www.xiper.net/manuals/canvas/.../fillRect.html
...

Учите основы!! Примеров , и доков качественных на русском море

Mike_Kharkov 02.04.2013 02:29

Цитата:

Сообщение от dmitriymar (Сообщение 243813)
дак почему же вы
используете для текста , если он предназначен для рисования фигур пот точкам пути ?:lol:
какие примеры ? изучите основы в конце концов . на сайте есть хороший пример его достаточно , и интервалы не причём. причина- вы не знаете элементарного, потому что "все основы вы изучили и знаете их иначе как бы вы смогли написать этот код бред"

Хорошо. Допустим.
Но почему у меня всё таки Alert не срабатывает?
(хоть это вы можете объяснить? Если уж на всё другие вопросы отвечать конкретно вы на отрез отказываетесь.
Или опять ссылки на доки давать будете?)
P.S. А с манерами поведения(и возможно с психикой! Говорю, как психолог по образованию.) у вас действительно по всей видимости проблемы имеются! Иначе подобные действия объяснить довольно непросто..
Говорю это не для того, что бы вас оскорбить(ни в коем случае.) - а для того, что бы вы задумались(хотя бы на мгновение) и сделали выводы! (в противном случае эти выводы буду делать близкие вам люди за вашей же спиной..)
Впрочем - это уже не моё дело.. Моё дело предупредить.
(Хотя можете ещё один минус в карму мне поставить.. Возможно так вам будет гораздо легче!)

dmitriymar 02.04.2013 07:29

Цитата:

Сообщение от Mike_Kharkov
орошо. Допустим.
Но почему у меня всё таки Alert не срабатывает?
(хоть это вы можете объяснить? Если уж на всё другие вопросы отвечать конкретно вы на отрез отказываетесь.
Или опять ссылки на доки давать будете?)
P.S. А с манерами поведения(и возможно с психикой! Говорю, как психолог по образованию.) у вас действительно по всей видимости проблемы имеются! Иначе подобные действия объяснить довольно непросто..
Говорю это не для того, что бы вас оскорбить(ни в коем случае.) - а для того, что бы вы задумались(хотя бы на мгновение) и сделали выводы! (в противном случае эти выводы буду делать близкие вам люди за вашей же спиной..)
Впрочем - это уже не моё дело.. Моё дело предупредить.
(Хотя можете ещё один минус в карму мне поставить.. Возможно так вам будет гораздо легче!)
__________________

Изучи основы наконец!!! Да именно те основы какие ты "уже читал", "уже знаешь" , "какие для начинающих"..


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