![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
@Zebestov
Цитата:
Пиксель по определению квадратный. То есть у него всегда 2 измерения. Аналогия с метрами немного не подходит, представьте, что мы говорим об акрах (или гектарах (или сотках)) - то есть о самостоятельной единице площади. Да, стану утверждать, что длина одного пикселя в 20 раз больше длины одного твипа. Да, стану утверждать, что ширина одного пикселя в 20 больше ширины одного твипа. Да, стану утверждать, что площадь одного пикселя в 400 раз (а не в 20) больше площади одного твипа. И, да, буду утверждать, что "1/20 пикселя" - это отношение сторон твипа и пикселя, но никак не фактический размер, про который я писал.
__________________
...вселенская грусть Последний раз редактировалось gloomyBrain; 17.03.2010 в 13:31. |
|
|||||
|
Lorem ipsum
|
)) ну это лирика. безусловно пиксель — это, упрощенно говоря, "квадратик". но использовать его в качестве меры площади не приходилось ни мне, ни другим разработчикам никогда. за исключением обсуждения алгоритмов сглаживания растровой графики, например, или чего-то подобного.
когда ты отвечаешь человеку, что он может позиционировать спрайт с точностью до 1/400 пикселя, ты заблуждаешься сам и вводишь в заблуждение коллегу. придется ждать когда кто-то на форуме спросит: "а кто знает сколько твипов в картинке WWW на HHH пикселей!?" — вот тут твой звездный час =)
__________________
Поймай яблоко 2! |
|
|||||
|
Цитата:
package { import flash.display.Sprite; import flash.events.Event; /** * ... * @author gloomyBrain */ public class Main extends Sprite { public static const stepSize:Number = 1 / 400; // == 0.0025 pixels == 1/20 twips public var stepCount:int; public var myShape:MyShape; public function Main():void { if (stage) init(); else addEventListener(Event.ADDED_TO_STAGE, init); } private function init(e:Event = null):void { removeEventListener(Event.ADDED_TO_STAGE, init); // entry point this.stepCount = 0; this.myShape = new MyShape(); this.addChild(this.myShape); this.addEventListener(Event.ENTER_FRAME, onEnterFrame); } public function onEnterFrame(evt:Event):void { this.twipCount++; this.myShape.x += stepSize * this.stepCount; } } } ![]() Да абсурд, не спорю я =) Но можно А изначально я ответил на реплику, оспаривающую (как мне показалось) факт того, что на 1 логический пиксель приходится /* внутри помещается */ 400 твипов. Если эта реплика ничего не оспаривает, то и мысль до абсурда я доводить не хотел. Извините, если кого задел.
__________________
...вселенская грусть Последний раз редактировалось gloomyBrain; 17.03.2010 в 15:02. |
|
|||||
|
[+1 15.11.10]
Регистрация: Jun 2005
Сообщений: 25
|
если двигать растр применяя какието вычисления аля физические законы.. то плавности движения целыми числами не добьетесь. Я делаю так: пока что-то творится - используются дробные величины, по факту завершения процесса - выставляю по целочисленным, округнелнным координатам. (иногда бывает некоторое "дергание", но его правда замечает только сам flash разработчик, потому что знает куда смотреть ) )
|
![]() |
![]() |
Часовой пояс GMT +4, время: 22:44. |
|
|
« Предыдущая тема | Следующая тема » |
|
|