Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 28.09.2013, 10:59
Кандидат Javascript-наук
Отправить личное сообщение для riva Посмотреть профиль Найти все сообщения от riva
 
Регистрация: 24.06.2013
Сообщений: 115

Графика и рисование в js
В недалеком будущем я хочу поучится js уже на деле, то есть переводить на js классы написанные для as. Ну и естественно хочется первым делом увидеть результат на экране. И вот я бегло посмотрев что есть в js для работы с графикой, обнаружил только html и css. И у меня сразу появилось желание спросить у Вас - есть какие то классы для рисования ( вектора, bitmap atlas ) ?
И отдельный вопрос - если существуют программы для рисования графики, то подскажите самые лучшие. Или Вы фотошоп и иллюстратор с экспортом в html делаете?
И если можно расскажите пожалуйста про Convas. Правильно ли я понял, что это самый лучший вариант для рисования?
И как его совместить с js? Пока писал не один раз подумал, что возможно я спрашиваю что то, что может вызвать смех))
Не обращайте внимание.

Последний раз редактировалось riva, 28.09.2013 в 11:17.
Ответить с цитированием
  #2 (permalink)  
Старый 28.09.2013, 13:20
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,215

Сообщение от riva
расскажите пожалуйста про Convas
http://htmlbook.ru/html5/canvas
Ответить с цитированием
  #3 (permalink)  
Старый 29.09.2013, 12:33
Кандидат Javascript-наук
Отправить личное сообщение для riva Посмотреть профиль Найти все сообщения от riva
 
Регистрация: 24.06.2013
Сообщений: 115

ksa Спасибо! А у js собственного класса рисования нет? Если мне нужно сделать выпадающее меню, то как рисовать сам выпадающий список? Или это делают при помощи css?
Ответить с цитированием
  #4 (permalink)  
Старый 29.09.2013, 12:50
Аватар для Erolast
Профессор
Отправить личное сообщение для Erolast Посмотреть профиль Найти все сообщения от Erolast
 
Регистрация: 24.09.2013
Сообщений: 1,436

Вы, похоже, совсем ничего не знаете о веб-програмировании. javascript не используется для отрисовки элементов на странице, это делается с помощью HTML. HTML - это язык разметки, "каркас" любой страницы. Именно с помощью HTML рисуются все элементы - кнопки, поля ввода текста и т.п. Например, следующий код HTML создает кнопку с надписью "Я - кнопка" и уникальным идентификатором "btn_1":
<button id="btn_1">Я - кнопка</button>

CSS - это язык описания внешнего вида страницы. Это обои, мебель и декорации страницы. С помощью css задается, например, какого цвета должен быть какой-либо элемент, какая у него должна быть рамка, как элементы должны позиционироваться на странице. Следующий код CSS установит ширину и высоту всех кнопок на странице на 50 пиксилей:
button {
height: 50px;
width: 50px;
}


Javascript же нужен для всей динамики, всех изменений на странице. Когда что-то на странице начинает красиво вертеться, вылезать - это javascript. Когда вы, набиря сообщение, нажимаете на кнопку B, именно с помощью javascript этот тег вставляется в сообщение. Javascript - электропроводка и всевозможные приборы на странице. Пример javascript'а:
var x = "Привет!";
alert(x);

Этот код объявляет переменную x, присваивает ей значение "Привет!", и открывает окошко, содержащее текст "Привет!".

Canvas же нужен для рисования рисунков, и не более того. Это элемент html, управляемый javascript'ом. Нет, конечно же, можно с помощью него отрисовать всю страницу, но это изврат и так никто не делает.

Последний раз редактировалось Erolast, 29.09.2013 в 13:16.
Ответить с цитированием
  #5 (permalink)  
Старый 29.09.2013, 13:18
Кандидат Javascript-наук
Отправить личное сообщение для riva Посмотреть профиль Найти все сообщения от riva
 
Регистрация: 24.06.2013
Сообщений: 115

Цитата:
Вы, похоже, совсем ничего не знаете о веб-програмировании.
Только начал учить, так что полностью с Вами соглашусь.
Тогда у меня вот какие вопросы - если я правильно понял, Canvas - это графический инструмент хваленого HTML5. Который ( опять, как я понял ) рисует растровую графику.. Но использует ли он GPU? Возможно ли отрисованные элементы Canvas сделать динамическими ( перетаскивание и событии мыши ) ?
Можно при помощи js динамически рисовать SVG?
На сколько сильно js нагружает мобильные платформы?
Есть ли какой то инструмент для рисование, который используют все продвинутые js программисты, но который не известен новичку?
Ответить с цитированием
  #6 (permalink)  
Старый 29.09.2013, 14:05
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от riva
Есть ли какой то инструмент для рисование, который используют все продвинутые js программисты, но который не известен новичку?
Если и есть, то о нем никто тебе не расскажет. Ты должен сам дорасти.
Сообщение от riva
Но использует ли он GPU?
Использует.
Сообщение от riva
Возможно ли отрисованные элементы Canvas сделать динамическими ( перетаскивание и событии мыши ) ?
Ты можешь ловить события мыши на самом элементе <canvas>. Остальное ложится на твои плечи, раз ты вызвался реализовать все вручную. (кстати есть даже ui-фреймворк, основанный на <canvas>, гугл в помощь)
Сообщение от riva
Можно при помощи js динамически рисовать SVG?
Да. В этом тебе поможет DOM
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #7 (permalink)  
Старый 29.09.2013, 14:21
Кандидат Javascript-наук
Отправить личное сообщение для riva Посмотреть профиль Найти все сообщения от riva
 
Регистрация: 24.06.2013
Сообщений: 115

Цитата:
Если и есть, то о нем никто тебе не расскажет. Ты должен сам дорасти.
От части я согласен, но есть один момент, который называется - помощь.
Вот если бы автор этого форума был эгоистом, то он бы наверняка сказал себе - зачем мне помогать этим неучам, пусть сами ищут информацию, я же искал и научился без этого форума, пусть сами дорастут.
Цитата:
раз ты вызвался реализовать все вручную
Я об этом не говорил, я сказал лишь о переводе некоторых классов, а каких я не говорил.
Цитата:
кстати есть даже ui-фреймворк, основанный на <canvas>, гугл в помощь
Неужели сложно сказать, какой лучший???
И возвращаясь к "всё сам решил реализовать"... Я был бы очень признателен, если бы кто то вспомнил человека, который рассказал ему о фраймворках или ещё об чем то и повторил его поступок. Я не верю, что Вы сами обо всё узнали.
Ответить с цитированием
  #8 (permalink)  
Старый 29.09.2013, 15:36
Аватар для Erolast
Профессор
Отправить личное сообщение для Erolast Посмотреть профиль Найти все сообщения от Erolast
 
Регистрация: 24.09.2013
Сообщений: 1,436

Нетуды вас понесло.
Canvas нужен исключительно для всяких онлайн-фотошопов и онлайн-игрушек. Это инструмент для создания рисунков, но не веб-страниц. Управлять им куда сложнее, чем обычным HTML, да и, страница будет жутко тормозной.
А чтобы писать сайты, есть программа adobe dreamweaver, имеющая подсветку синтаксиса, визуальный редактор и прочие вкусности.

Последний раз редактировалось Erolast, 29.09.2013 в 15:39.
Ответить с цитированием
  #9 (permalink)  
Старый 29.09.2013, 16:03
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от riva
Неужели сложно сказать, какой лучший???
Кто лучший? Canvas-based UI фреймворк? А кто их сравнивал? Сколько их? Какова сфера их применения? Это малоизвестные не используемые в моей повседневной работе (и не планируемые) вещи. Такие штуковины редко кем используются, я даже не знаю где их можно применять. Интересовался раньше просто так, для расширения кругозора. И никто не подсказывал, сам просто подумал о том, что такое кто-нибудь реализовал, а гугл уже подтвердил мое предположение. Так что гугли если интересно.
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #10 (permalink)  
Старый 29.09.2013, 16:10
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от riva
Я об этом не говорил, я сказал лишь о переводе некоторых классов, а каких я не говорил.
Каких еще классов? Нет в HTML никаких классов к сожалению. Есть зашитые псевдо-конструкторы типа Element, HTMLElement, HTMLSelectElement, HTMLInputElement и тд, но от них никакого толку нет.
HTML - унылая штука. Ты если раньше занимался нативными приложениями то приготовься к худшему. HTML на сегодняшний день очень хромой. Только недавно начались какие-то подвижки, но как мне кажется что он как был костыльным и недоделанным, таким он и останется еще очень долго. Если что - речь именно о RIA-приложениях а не веб-сайтах.
__________________
В личку только с интересными предложениями
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Рисование объектов на js Trigger Общие вопросы Javascript 9 01.07.2013 15:02
Вставка кода js с помощью js Alice Общие вопросы Javascript 1 12.06.2013 19:05
Рисование окружности в JS gerons Элементы интерфейса 2 14.05.2013 06:37
рисование прямоугольника по движению мыши prizrak39 Events/DOM/Window 4 14.03.2013 15:36
Рисование и js Drakonee Элементы интерфейса 6 22.06.2010 23:51