![]() |
Рисование ломаных
Потребовалось рисовать ломаные линии, начал искать аналог реализации line.graphics.lineTo для старлинга. И, что интересно, нашел:
https://github.com/StarlingGraphics/...nsion-Graphics Вот тут можно посмотреть пример, как рисуется линия: http://www.emanueleferonato.com/2013...g-api-methods/ Но беда в том, что при наклоне в 45 градусов очень заметы зубчики. Да и в целом выглядит топорно. Разблюрить не получилось. Может кто подскажет несложную реализацию? Нужно несколько точек (от трех до семи) соединить отрезками, чтобы получилась нормальная ломаная шириной где-то 6-8 пикселей. ЗЫ. Подозреваю, что могу собрать практически идеальную ломаную из кружков и отрезков разной длины, но хотелось бы более общее решение. Добавлено через 14 минут В общем я пока выкрутился - рисую ломаную во флешовый битмап, а потом создаю старлинговский имадж на основе этого битмапа. Но пока не уверен по производительности. Добавлено через 5 часов 15 минут Не выход. Работает очень медленно. |
Вот похоже
http://silin.su/#starling/display/line/bin |
Я примерно представляю себе как это сделано. Если приложение запустилось на планшете 2560x1600 и надо нарисовать ломаную через весь экран, то будет задержка, пока отрисуется. Там формируется BitmapData, на основе которой потом создается Image. Причем, основные затраты будут именно на создание Image, поскольку BitmapData отрисуется быстро.
У меня в итоге примерно так и получилось. Просто я перенес рисование на начало работы приложения и ломаные (если точнее - их части) закэшировал в виде готовых старлинговских Image. Но у меня конечное число вариантов ломаных. Если бы надо было обеспечить свободное создание ломаных на лету, то это головняк. |
Появилась необходимость отрисовать ломаные линии без использования Bitmapdata и создания Image'й, т.е., как я понимаю, через Quad'ы. Не видел ли кто готовой реализации?
|
Есть реализация Graphics под старлинг
https://github.com/StarlingGraphics/...nsion-Graphics |
Да, этот вариант я знаю.
В общем, я решил через Quad'ы. Пока решение драфтовое (видны стыки), но там буквально 10 строк. Главное, не забывать, что rotation для старлинговых объектов не в градусах, а в радианах. |
В общем, что "Graphics под старлинг", что чистые Quad'ы при определенных углах дают такую гребенку, что хоть вешайся. В итоге делаю вариант с отрезком линии в PNG, который растягиваю и вращаю. на нужный угол. линии получаются вполне себе приемлемые, но проблема со стыками. Решил поместить по полукругу на каждый конец отрезка и так стыковать. Но пока результатом не очень удовлетворен.
|
Цитата:
http://help.adobe.com/ru_RU/FlashPlatform/reference/actionscript/3/flash/display3D/Context3D.html#configureBackBuffer%28%29 --> antiAlias |
Теоретически - да.
Но что-то в лоб не получается. На попытку сконфигурировать буфер прилетел эксепшн Код:
exception, information=Error: Error #3709: The depthAndStencil flag in the application descriptor must match the enableDepthAndStencil Boolean passed to configureBackBuffer on the Context3D object. |
Вложений: 1
Раз:
Вложение 31488 Два: Код AS3:
|
| Часовой пояс GMT +4, время: 21:02. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.