<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>woszkowski.com &#187; AS3</title>
	<atom:link href="http://www.woszkowski.com/category/flash/as3/feed" rel="self" type="application/rss+xml" />
	<link>http://www.woszkowski.com</link>
	<description></description>
	<lastBuildDate>Thu, 15 Oct 2009 09:59:09 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Dostępność kamer internetowych w Polsce</title>
		<link>http://www.woszkowski.com/dostepnosc-kamer-internetowych-w-polsce,95.html</link>
		<comments>http://www.woszkowski.com/dostepnosc-kamer-internetowych-w-polsce,95.html#comments</comments>
		<pubDate>Thu, 17 Sep 2009 13:37:01 +0000</pubDate>
		<dc:creator>Paweł Woszkowski</dc:creator>
				<category><![CDATA[AS3]]></category>
		<category><![CDATA[Badania]]></category>
		<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://www.woszkowski.com/?p=95</guid>
		<description><![CDATA[Od dłuższego czasu przeczesuję niemal każdy zakątek sieci, żeby znaleźć informacje na temat tego, ile osób posiada kamery internetowe. Jedyne dane, do jakich udało mi się dotrzeć informują, że w&#160;2006r. osób takich było 9% (Mintel report) a w&#160;2007r. około 13% (raport Logitech: http://files.shareholder.com/downloads/LOGI/0&#215;0xS1193125-07-123026/1032975/filing.pdf). Ten brak informacji zmobilizował mnie do przeprowadzenia własnych badań. Po napisaniu prostego skryptu [...]]]></description>
			<content:encoded><![CDATA[<p>Od dłuższego czasu przeczesuję niemal każdy zakątek sieci, żeby znaleźć informacje na temat tego, ile osób posiada kamery internetowe. Jedyne dane, do jakich udało mi się dotrzeć informują, że w&nbsp;2006r. osób takich było 9% (Mintel report) a w&nbsp;2007r. około 13% (raport Logitech: <a href="http://files.shareholder.com/downloads/LOGI/0x0xS1193125-07-123026/1032975/filing.pdf">http://files.shareholder.com/downloads/LOGI/0&#215;0xS1193125-07-123026/1032975/filing.pdf</a>). Ten brak informacji zmobilizował mnie do przeprowadzenia własnych badań. Po napisaniu prostego skryptu AS3, umieściliśmy go na kilku hostowanych przez <a title="agencja interaktywna" href="http://www.netizens.pl" target="_blank">Netizens</a> stronach i&nbsp;przez 24h zbieraliśmy dane. Przy próbie prawie 11tys. unikalnych adresów IP okazało się, że kamery internetowe posiada 30,73% badanych.</p>
<p><img class="size-full wp-image-96 alignnone" title="Dostepność kamer internetowych w&nbsp;Polsce" src="http://www.woszkowski.com/wp-content/uploads/2009/09/kamery.jpg" alt="Dostepność kamer internetowych w&nbsp;Polsce" width="500" height="250" /></p>
<p>Przyznam, że wyniki trochę mnie zaskoczyły&#8230; zresztą nie tylko mnie, bo obstawiało kilka osób i&nbsp;wszystkie celowały w&nbsp;okolice 10 -20%. W&nbsp;czasie badania można było zauważyć, że odsetek osób posiadających kamery był znacznie większy w&nbsp;godzinach wieczornych niż porannych. Wynika stąd, że komputery służbowe są mniej multimedialne. <img src='http://www.woszkowski.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Oczywiście wyniki te mogą różnić się od rzeczywistych, gdyż badanie wykonane było w&nbsp;bardzo krótkim okresie czasu, w&nbsp;zaledwie kilu serwisach (każdy serwis ma swój określony target, np. ludzie młodzi, klienci biznesowi) i&nbsp;wymagało posiadania flash playera w&nbsp;wersji 9.0 lub nowszej (około 98% komputerów wg Adobe). Mimo to postanowiłem podzielić się tą wiedzą.</p>
<p>Dziękuję za pomoc w&nbsp;przeprowadzeniu badania Mariuszowi Górskiemu, który był odpowiedzialny za php/mysql i&nbsp;zestawienie wyników.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.woszkowski.com/dostepnosc-kamer-internetowych-w-polsce,95.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sierotki, czyli problem wiszących spójników we Flashu</title>
		<link>http://www.woszkowski.com/sierotki-czyli-problem-wiszacych-spojnikow-we-flashu,68.html</link>
		<comments>http://www.woszkowski.com/sierotki-czyli-problem-wiszacych-spojnikow-we-flashu,68.html#comments</comments>
		<pubDate>Wed, 09 Jul 2008 09:02:20 +0000</pubDate>
		<dc:creator>Paweł Woszkowski</dc:creator>
				<category><![CDATA[AS3]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[www]]></category>

		<guid isPermaLink="false">http://www.woszkowski.com/sierotki-czyli-problem-wiszacych-spojnikow-we-flashu,68.html</guid>
		<description><![CDATA[Wiszący spójnik, zawieszka, sierota – nazwa błędu składu tekstu polegającego na pozostawieniu na końcu wersu osamotnionego jednoliterowego słowa (najczęściej spójnika lub przyimka, np. &#8220;a&#8221;, &#8220;i&#8221;, &#8220;o&#8221;, &#8220;u&#8221;, &#8220;w&#8221;, &#8220;z&#8221;). Reguła zabraniająca wiszących spójników dotyczy zarówno tekstów ciągłych, jak i&#160;pojedynczych napisów wielowierszowych (np. tytuły, podpisy). Zgodnie z&#160;Polską Normą pozostawianie wiszących spójników jest dopuszczalne tylko przy bardzo [...]]]></description>
			<content:encoded><![CDATA[<p><em><strong>Wiszący spójnik</strong>, zawieszka, sierota – nazwa błędu <a href="http://pl.wikipedia.org/wiki/Sk%C5%82ad_tekstu" title="Skład tekstu">składu tekstu</a> polegającego na pozostawieniu na końcu <a href="http://pl.wikipedia.org/wiki/Wers" title="Wers">wersu</a> osamotnionego jednoliterowego słowa (najczęściej <a href="http://pl.wikipedia.org/wiki/Sp%C3%B3jnik" title="Spójnik">spójnika</a> lub <a href="http://pl.wikipedia.org/wiki/Przyimek" title="Przyimek">przyimka</a>, np. &#8220;a&#8221;, &#8220;i&#8221;, &#8220;o&#8221;, &#8220;u&#8221;, &#8220;w&#8221;, &#8220;z&#8221;). Reguła zabraniająca wiszących spójników dotyczy zarówno tekstów ciągłych, jak i&nbsp;pojedynczych napisów wielowierszowych (np. tytuły, podpisy). Zgodnie z&nbsp;<a href="http://pl.wikipedia.org/wiki/Polska_Norma" title="Polska Norma">Polską Normą</a> pozostawianie wiszących spójników jest dopuszczalne tylko przy bardzo wąskim <a href="http://pl.wikipedia.org/wiki/%C5%81am" title="Łam">łamie</a> (np. gazetowym). [..] (<a href="http://pl.wikipedia.org/wiki/Wisz%C4%85cy_sp%C3%B3jnik" title="Wikipedia: wiszący spójnik">Wikipedia</a>).</em></p>
<p>Problem sierotek przewija się przy pracy nad stronami internetowymi od bardzo dawna. Jest wiele rozwiązań tego problemu w&nbsp;php (skrypty, pluginy WordPress, itp.), natomiast nie spotkałem się jeszcze z&nbsp;rozwiązaniem dla ActionScript (3.0). Okazało się ono stosunkowo proste, jednak nie możliwe do zastosowania we wszystkich przypadkach. Podobnie jak w&nbsp;html, wstawiamy pomiędzy spójniki a&nbsp;następujące po nich wyrazy, znaki twardej spacji (&amp;nbsp;) w&nbsp;miejsce spacji miękkich. Pole tekstowe musimy wypełniać jako pole html (htmlText), gdyż inaczej ciąg &amp;nbsp; nie zostanie potraktowany jako twarda spacja. Wystarczy do tego proste wyrażenie regularne w&nbsp;AS3:</p>
<p><strong><em>poletekstowe.htmlText = str.replace(/\s+([aiouwzAIOUWZ])\s+/g, &#8221; $1&amp;nbsp;&#8221;);</em></strong></p>
<p>Wszystko działa znakomicie w&nbsp;przypadku korzystania z&nbsp;fontów systemowych (use device fonts). Niestety Flash nie embeduje znaku twardej spacji w&nbsp;przypadku pól z&nbsp;antyaliasem. Być może dało by się ten problem jakoś rozwiązać, np. łamiąc automatycznie w&nbsp;odpowiednich miejscach wiersze znakiem końca linii, jednak uniemożliwiło by to justowanie tekstu. Tak więc jeżeli przewidujemy w&nbsp;naszej flashowej aplikacji problem wiszących spójników, od razu nastawiajmy się na korzystanie z&nbsp;fontów systemowych.</p>
<p>Aby uniknąć konieczności zapamiętywania czy też szukania powyższego wyrażenia regularnego, napisałem prostą klasę w&nbsp;AS3. Klasa przenosi do nowej linii litery a, i, o, u, w, z. Oto przykład uzycia.</p>
<p><strong><em>import com.woszkowski.tools.StringTool;<br />
poletekstowe.htmlText = StringTool.suppressSingleLetters(str);</em></strong></p>
<p><embed src="http://www.woszkowski.com/sierotki/suppressSingleLetterExample.swf" quality="high" bgcolor="#ffffff" name="progress-bar" allowscriptaccess="sameDomain" allowfullscreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" align="middle" width="450" height="240"></embed></p>
<p><strong>Pliki do pobrania:</strong><br />
<a href="http://woszkowski.com/sierotki/StringTool.zip" title="Usuwanie sierotek czyli wiszących spójników">StringTool</a> &#8211; klasa do usuwania wiszących spójników oraz przykład uzycia</p>
<p><strong>Linki:</strong><br />
<a href="http://skaldy.com" title="Skaldy" target="_blank">skaldy.com</a> &#8211; pomoc w&nbsp;rozwiązaniu problemu<br />
<a href="http://www.arturkepa.com/wiszace-spojniki-sierotki-wordpress-plugin,92.html" title="sierotki wordpress plugin" target="_blank">sierotki wordpress plugin</a> &#8211; plugin do wordpressa autorstwa <a href="http://arturkepa.com" title="Artur Kępa" target="_blank">Artura Kępy</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.woszkowski.com/sierotki-czyli-problem-wiszacych-spojnikow-we-flashu,68.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Flash Biuletyn II</title>
		<link>http://www.woszkowski.com/flash-biuletyn-ii,59.html</link>
		<comments>http://www.woszkowski.com/flash-biuletyn-ii,59.html#comments</comments>
		<pubDate>Sat, 22 Mar 2008 23:42:05 +0000</pubDate>
		<dc:creator>Paweł Woszkowski</dc:creator>
				<category><![CDATA[AIR]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Papervision3d]]></category>

		<guid isPermaLink="false">http://www.woszkowski.com/falsh-biuletyn-ii,59.html</guid>
		<description><![CDATA[Kolejna porcja wiadomości i&#160;ciekawostek ze świata Flasha.  
Stereoskopia
 A&#160;konkretnie anaglify, czyli wyświetlanie specjalnie przygotowanych obrazów i&#160;oglądanie ich za pomocą okularów, dających wrażenie przestrzeni trójwymiarowej. Efekt ten możemy bardzo łatwo uzyskać za pomocą Papervision3D lub innego engine&#8217;u 3D. Renderujemy obraz z&#160;dwóch przesuniętych względem siebie w&#160;poziomie kamer, kopiujemy kanał czerwony jednej z&#160;nich, kanały zielony i&#160;niebieski drugiej [...]]]></description>
			<content:encoded><![CDATA[<p>Kolejna porcja wiadomości i&nbsp;ciekawostek ze świata Flasha. <img src='http://www.woszkowski.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><strong>Stereoskopia</strong><br />
<img src="http://www.woszkowski.com/wp-content/uploads/2008/03/100_1340.thumbnail.jpg" title="Okulary do oglądania anaglifów" alt="Okulary do oglądania anaglifów" align="left" border="0" hspace="5" vspace="5" /> A&nbsp;konkretnie <a href="http://pl.wikipedia.org/wiki/Anaglif" title="Anaglif" target="_blank">anaglify</a>, czyli wyświetlanie specjalnie przygotowanych obrazów i&nbsp;oglądanie ich za pomocą okularów, dających wrażenie przestrzeni trójwymiarowej. Efekt ten możemy bardzo łatwo uzyskać za pomocą <a href="http://blog.papervision3d.org/" title="Papervision3D" target="_blank">Papervision3D</a> lub innego engine&#8217;u 3D. Renderujemy obraz z&nbsp;dwóch przesuniętych względem siebie w&nbsp;poziomie kamer, kopiujemy kanał czerwony jednej z&nbsp;nich, kanały zielony i&nbsp;niebieski drugiej i&nbsp;powstałe obrazy nakładamy na siebie. Istnieją trzy rodzaje okularów: czerwono-niebieskie, czerwono-cyjankowe i&nbsp;czerwono-zielone. Nie wiem jeszcze które nadają się najlepiej do oglądania tworzonych w&nbsp;ten sposób obrazów, ale już zostały zamówione, więc wkrótce własne przykłady i&nbsp;wyniki eksperymentów. <img src='http://www.woszkowski.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Tymczasem przykłady innych:<br />
<a href="http://mrdoob.com/#/56/" title="Anaglif" target="_blank">http://mrdoob.com/#/56/</a><br />
<a href="http://mrdoob.com/#/57/" title="Anaglif" target="_blank">http://mrdoob.com/#/57/</a><br />
<a href="http://lab.benstucki.net/archives/AnaglyphTest/anaglyphtest.swf" title="Anaglif" target="_blank">http://lab.benstucki.net/archives/AnaglyphTest/anaglyphtest.swf</a></p>
<p><strong><a href="http://code.google.com/apis/youtube/developers_guide_protocol.html" title="YouTube Flash API" target="_blank">YouTube Flash API</a> / filmy w&nbsp;wysokiej jakości</strong><br />
YouTube stworzył <a href="http://code.google.com/apis/youtube/developers_guide_protocol.html" title="YouTube API" target="_blank">API</a> dla Flasha oraz Javascriptu , pozwalające na zamieszczanie na swoich stronach filmów bez standardowego playera. Nawigację możemy teraz tworzyć we własnym zakresie. Najważniejsze, że &#8220;<a href="http://code.google.com/apis/youtube/chromeless_player_reference.html" title="YouTube chromeless player" target="_blank">chromeless player</a>&#8221; pobierany jest spod adresu gdata.youtube.com, gdzie znajduje się plik crossdomain.xml, zawierający upragniony wiersz <em>&lt;allow-access-from domain=&#8221;*&#8221;/&gt;</em>. <img src='http://www.woszkowski.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Oto przykład, że to wszystko na prawdę działa:<br />
<a href="http://woszkowski.com/ytapi/" title="Przykład YouTube API" target="_blank">http://woszkowski.com/ytapi/</a></p>
<p>Inną nowością od YouTube są filmy w&nbsp;lepszej jakości. W&nbsp;ustawieniach konta pod pozycją Jakość odtwarzania filmów wideo (<a href="http://pl.youtube.com/video_quality_settings" title="YouTube video quality settings" target="_blank">http://pl.youtube.com/video_quality_settings</a>) możemy włączyć opcję &#8220;<em>Mam szybkie połączenie. Zawsze odtwarzaj film wideo z&nbsp;wyższą jakością, jeżeli jest dostępna.</em>&#8220;. Od tego momentu filmy będą odtwarzane z&nbsp;większym biterate&#8217;em oraz z&nbsp;większą częstotliwością próbkowania dźwięku. Jednak nadal będzie to kodowanie Flash Video. YouTube oferuje również nieoficjalnie filmy w&nbsp;standardzie H.264. Do ich oglądanie potrzebujemy <a href="http://www.adobe.com/go/EN_US-H-GET-FLASH" title="Flash Player" target="_blank">Flash Playera w&nbsp;wersji 9.0.115</a>. Aby oglądać filmy w&nbsp;tym standardzie, wystarczy na końcu adresu dodać &#8220;&amp;fmt=18&#8243;. Oto przykłady tego samego filmu w&nbsp;różnych jakościach:<br />
Jakość standardowa: <a href="http://www.youtube.com/watch?v=RZYIfUdIyfs" target="_blank">http://www.youtube.com/watch?v=RZYIfUdIyfs</a> (pod warunkiem, że w&nbsp;ustawieniach YT nie ustawiliśmy domyślnie wysokiej jakości)<br />
Jakość wysoka: <a href="http://www.youtube.com/watch?v=RZYIfUdIyfs&amp;fmt=6" target="_blank">http://www.youtube.com/watch?v=RZYIfUdIyfs&amp;fmt=6</a><br />
Kodek H.264: <a href="http://www.youtube.com/watch?v=RZYIfUdIyfs&amp;fmt=18" target="_blank">http://www.youtube.com/watch?v=RZYIfUdIyfs&amp;fmt=18</a></p>
<p><a href="http://developer.yahoo.com/flash/maps/index.html" title="Yahoo Maps Flash API" target="_blank"><strong>Yahoo Maps Flash API</strong></a><br />
Tym razem komponent dla <a href="http://www.adobe.com/products/flex/?promoid=BPDEQ" title="Flex Builder" target="_blank">Flex Buildera</a>. Yahoo wypuściło <a href="http://developer.yahoo.com/flash/maps/index.html" title="Yahoo Maps Flash API" target="_blank">komponent oraz API</a> do swoich map. Umożliwia on bardzo łatwe kontrolowanie mapy z&nbsp;poziomu AS3. Warto zwrócić uwagę na to, że <a href="http://maps.yahoo.com/" title="Yahoo Maps" target="_blank">Yahoo Maps</a> są już bardzo dokładne dla naszego regionu i&nbsp;nic nie stoi na przeszkodzie, żeby częściej z&nbsp;nich korzystać.</p>
<p><a href="http://www.afcomponents.com/components/umap_as3/" title="UMap" target="_blank"><strong>Umap</strong></a><br />
We <a href="http://www.woszkowski.com/flash-biuletyn-i,54.html" title="Flash Biuletyn I" target="_blank">wcześniejszym biuletynie</a> opisywałem komponent <a href="http://www.afcomponents.com/components/g_map/" title="G Map" target="_blank">G Map</a>, umożliwiający obsługę <a href="http://maps.google.com/" title="Google maps" target="_blank">Google Maps</a> z&nbsp;poziomu Flasha. Tym razem <a href="http://www.afcomponents.com/" title="AFC" target="_blank">AFC</a> zaprezentowało komponent <a href="http://www.afcomponents.com/components/umap_as3/" title="UMap" target="_blank">UMap</a>, umożliwiający kontrolę z&nbsp;opziomy AS3 map <a href="http://www.openstreetmap.org/" title="OpenStreetMap" target="_blank">OpenStreetMap</a> oraz <a href="http://dev.live.com/virtualearth/" title="Microsoft Virtual Earth" target="_blank">Microsoft Virtual Earth</a>. O&nbsp;ile OpenStreetMap jest bardzo niedokładny na obszarze Polski, to Microsoft Virtual Earth charakteryzuje się taką dokładnością , że komponent <a href="http://www.afcomponents.com/components/umap_as3/" title="UMap" target="_blank">UMap</a> staje się godny polecenia. <img src='http://www.woszkowski.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><strong><a href="http://www.adobe.com/products/air/" title="AIR" target="_blank">AIR 1.0</a> i&nbsp;<a href="http://www.adobe.com/products/flex/?promoid=BPDEQ" title="Flex Builder 3" target="_blank">Flex Builder 3</a></strong><br />
<a href="http://www.adobe.com/products/air/" title="AIR" target="_blank"><img src="http://www.woszkowski.com/wp-content/uploads/2008/03/air_icon_specialgif.jpg" title="AIR" alt="AIR" align="left" border="0" /></a> Adobe wypuściło oficjalne wersje <a href="http://www.adobe.com/products/air/" title="AIR" target="_blank">Adobe Integrated Runtime</a> oraz <a href="http://www.adobe.com/products/flex/?promoid=BPDEQ" title="Flex Builder" target="_blank">Flex Buildera 3</a>. Jeżeli chodzi o&nbsp;AIR, to mimo, że słyszymy o&nbsp;nim już od dłuższego czasu, jest to dopiero pierwsza oficjalna wersja. Flex również jest dosyć młodym narzędziem, jednak w&nbsp;tym przypadku doczekaliśmy się już wersji nr 3. Zmiany w&nbsp;porównaniu z&nbsp;dwójką nie są duże.</p>
<p><strong><br />
</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.woszkowski.com/flash-biuletyn-ii,59.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Progress Bar</title>
		<link>http://www.woszkowski.com/progress-bar,62.html</link>
		<comments>http://www.woszkowski.com/progress-bar,62.html#comments</comments>
		<pubDate>Tue, 04 Mar 2008 20:24:12 +0000</pubDate>
		<dc:creator>Paweł Woszkowski</dc:creator>
				<category><![CDATA[AS3]]></category>
		<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://www.woszkowski.com/progress-bar,62.html</guid>
		<description><![CDATA[Pracownicy naukowi z&#160; Carnegie Mellon University, New York University oraz AT&#38;T Labs-Research przeprowadzili eksperyment, mający na celu zbadanie wpływu nieliniowego zachowania paska postępu na ludzkie odczucie jego długości trwania. W&#160;tym celu wyodrębnili 8 algorytmów postępu i&#160;pokazywali po dwa (jeden po drugim) grupie badanych osób. Za każdym razem badający miał ocenić, który pasek postępu pokonywał dystans [...]]]></description>
			<content:encoded><![CDATA[<p>Pracownicy naukowi z&nbsp; Carnegie Mellon University, New York University oraz AT&amp;T Labs-Research przeprowadzili eksperyment, mający na celu zbadanie wpływu nieliniowego zachowania paska postępu na ludzkie odczucie jego długości trwania. W&nbsp;tym celu wyodrębnili 8 algorytmów postępu i&nbsp;pokazywali po dwa (jeden po drugim) grupie badanych osób. Za każdym razem badający miał ocenić, który pasek postępu pokonywał dystans od 0 do 100% szybciej, czy też może oba czasy były równe. Oczywiście w&nbsp;rzeczywistości oba czasy były identyczne i&nbsp;trwały 5,5 sekundy. Okazało się, że badający ocenili jako krócej trwające paski postępu, zwalniające na początku i&nbsp;przyspieszające na końcu.</p>
<p><embed src="http://www.woszkowski.com/progress-bar/progress-bar-single.swf" quality="high" bgcolor="#ffffff" name="progress-bar" allowscriptaccess="sameDomain" allowfullscreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" align="middle" height="60" width="500"></embed>Zdecydowanymi liderami okazały się algorytmy:<br />
- Power: f(x) = (x+(1-x)*0.03)^2<br />
- Fast power: f(x) = (x+(1-x)/2)^8</p>
<p>Tak więc aby jak najbardziej zniwelować negatywne odczucia użytkownika wywołane oczekiwaniem na załadowanie gry, strony, prezentacji, zainstalowanie oprogramowania, etc., powinniśmy stosować tego typu nieliniowe algorytmy postępu.<a href="http://www.woszkowski.com/progress-bar/" title="progress bar" target="_blank"></a></p>
<p><a href="http://www.woszkowski.com/progress-bar/" title="progress bar" target="_blank">Wizualizacja wszystkich algorytmów jednocześnie</a>.</p>
<p>Kod źródlowy: <a href="http://www.woszkowski.com/progress-bar/src-single.zip" title="progress bar">src-single.zip</a> [355kB]<br />
Źródło: <a href="http://chrisharrison.net/projects/progressbars/ProgBarHarrison.pdf" title="Rethinking the Progress Bar" target="_blank">Rethinking the Progress Bar</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.woszkowski.com/progress-bar,62.html/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Flash Biuletyn I</title>
		<link>http://www.woszkowski.com/flash-biuletyn-i,54.html</link>
		<comments>http://www.woszkowski.com/flash-biuletyn-i,54.html#comments</comments>
		<pubDate>Tue, 05 Feb 2008 00:33:09 +0000</pubDate>
		<dc:creator>Paweł Woszkowski</dc:creator>
				<category><![CDATA[AS3]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[Papervision3d]]></category>

		<guid isPermaLink="false">http://www.woszkowski.com/flash-biuletyn-i,54.html</guid>
		<description><![CDATA[Jestem dość pilnym subskrybentem wielu kanałów RSS. Wśród nich górują kanały Adobe. Ilość i&#160;jakość przekazywanych tam informacji jest tak duża, że nie sposób podzielić się nimi ze wszystkimi zainteresowanymi. I&#160;nie mówię tutaj tylko o&#160;kolegach &#8220;po fachu&#8221;. Czasami warto pokazać ludziom od kreacji coś, co będzie inspiracją do przyszłych spotkań koncepcyjnych. Czasami warto pokazać ludziom od [...]]]></description>
			<content:encoded><![CDATA[<p>Jestem dość pilnym subskrybentem wielu kanałów RSS. Wśród nich górują kanały Adobe. Ilość i&nbsp;jakość przekazywanych tam informacji jest tak duża, że nie sposób podzielić się nimi ze wszystkimi zainteresowanymi. I&nbsp;nie mówię tutaj tylko o&nbsp;kolegach &#8220;po fachu&#8221;. Czasami warto pokazać ludziom od kreacji coś, co będzie inspiracją do przyszłych spotkań koncepcyjnych. Czasami warto pokazać ludziom od handlu coś, co będą mogli zaproponować klientom. Czasami natomiast warto po prostu pokazać znajomym coś, co im się spodoba. Dlatego zamierzam tutaj co jakiś czas opisywać co ciekawsze &#8220;wydarzenia&#8221; ze świata flasha i&nbsp;jemu bliskich z&nbsp;nadzieją, że dotrę do szerszego grona odbiorców. <img src='http://www.woszkowski.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Tak więc zacznijmy od tego, co wartego uwagi wydarzyło się na przełomie grudnia 2007 i&nbsp;stycznia 2008 roku.</p>
<p><a href="http://seraf.mediabox.fr/wow-engine/as3-3d-physics-engine-wow-engine/" title="WOW" target="_blank"><strong>WOW &#8211; engine 3D podstawowych zasad fizyki</strong></a></p>
<p><a href="http://seraf.mediabox.fr/wow-engine/as3-3d-physics-engine-wow-engine/" title="WOW" target="_blank"><img src="http://www.woszkowski.com/wp-content/uploads/2008/02/wow.jpg" title="WOW" alt="WOW" align="left" hspace="3" vspace="3" /></a>Kilka miesięcy temu światło dzienne ujrzał Box2dFlash &#8211; engine dla AS3, umożliwiający symulację podstawowych zasad fizyki (grawitacja + oddziaływanie między przedmiotami). Tym razem przyszła pora na przestrzeń 3D &#8211; engine <a href="http://seraf.mediabox.fr/wow-engine/as3-3d-physics-engine-wow-engine/" title="WOW" target="_blank">WOW</a>. Duże wrażenie robią przykłady użycia: <a href="http://seraf.mediabox.fr/wow-engine/wow-engine-technical-demo-boundarea-and-sphere/" target="_blank" title="WOW">kule zamknięte w&nbsp;obracającym się sześcianie</a>, <a href="http://seraf.mediabox.fr/wow-engine/wow-engine-technical-advanced-demo-picture/" target="_blank" title="WOW">spadające na ziemię obrazki</a> czy też <a href="http://seraf.mediabox.fr/wow-engine/wow-engine-technical-advanced-demo-cloth-demo-02/" target="_blank" title="WOW">obrazek oblewające kule niczym kawałek płótna</a>. Osobiście jestem ciekaw, czy biblioteka jest bardziej zjadliwa, niż Box2dFlash. <img src='http://www.woszkowski.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><a href="http://www.flashvideofactory.com/test/DEMO720_Heima_H264_500K.html" title="HD video" target="_blank"><strong>Video w&nbsp;rozdzielczości HD w&nbsp;najnowszej wersji Flash Playera (9.0.115)</strong></a></p>
<p>Żeby zdać sobie sprawę o&nbsp;czym piszę, proponuję od razu na samym początku zobaczyć ten <a href="http://www.flashvideofactory.com/test/DEMO720_Heima_H264_500K.html" title="HD video" target="_blank">przykład</a> (klikając dwa razy w&nbsp;film przechodzimy do trybu fullscreen). Oczywiście trzeba mieć zainstalowanego <a href="http://www.adobe.com/products/flashplayer/" title="Adobe Flash Player" target="_blank">Adobe Flash Playera w&nbsp;wersji 9.0.115</a>. Niezłe, prawda? W&nbsp;dodatku całkiem płynnie chodzi. Zastanawiacie się jaki ogromny bitrate musi mieć to video? Otóż jest to video w&nbsp;rozdzielczości 1280&#215;720, formacie mp4 500kbps&#8230; czyli nieco więcej niż mają filmiki z&nbsp;YouTube!!! Fakt, można się przyczepić, że w&nbsp;momentach gdy sporo się na ekranie dzieje widać ślady sporej kompresji, jednak i&nbsp;tak całościowy efekt jest zdumiewający.</p>
<p><a href="http://www.afcomponents.com/components/g_map/" title="G Map" target="_blank"><strong>Google maps prostsze niż kiedykolwiek &#8211; komponent dla Flash</strong></a></p>
<p><a href="http://www.afcomponents.com/components/g_map/" title="g map" target="_blank"><img src="http://www.woszkowski.com/wp-content/uploads/2008/02/gmap.jpg" title="G Map" alt="G Map" align="left" hspace="3" vspace="3" /></a>Dzięki komponentowi <a href="http://www.afcomponents.com/components/g_map/" title="G Map" target="_blank">G Map</a>, stworzonemu przez firmę <a href="http://www.afcomponents.com/" title="AFC" target="_blank">Advanced Flash Components</a>, możemy w&nbsp;banalny sposób korzystać z&nbsp;funkcjonalności <a href="http://maps.google.com/" title="Google maps" target="_blank">Google maps</a>, przede wszystkim na stronach opartych w&nbsp;100% na technologii flash. <a href="http://www.afcomponents.com/components/g_map/" title="g map" target="_blank">G Map</a> umożliwia stawianie markerów, rysowanie linii i&nbsp;kształtów oraz nakładanie warstw, czyli dodawanie własnej funkcjonalności na mapę. Flash developerów ucieszy na pewno fakt, że wstawienie komponentu i&nbsp;dodanie np. własnego punktu na mapie to zaledwie kilka linijek kodu. <img src='http://www.woszkowski.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><a href="http://www.adobe.com/products/player_census/flashplayer/version_penetration.html" title="Flash Player penetration" target="_blank"><strong>Statystyki penetracji wersji Flash Playera z&nbsp;grudnia 2007</strong></a></p>
<p><a href="http://www.adobe.com/products/flashplayer/" title="Adobe Flash Player" target="_blank">Adobe Flash Player</a> w&nbsp;wersji 9.0.0 lub nowszej jest zainstalowany na ponad 94,3% komputerów w&nbsp;Europie. W&nbsp;Stanach Zjednoczonych ten odsetek jest jeszcze większy i&nbsp;wynosi 96,8%. Co to oznacza? Że praktycznie całkowicie możemy przerzucić się na AS3. <img src='http://www.woszkowski.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><a href="http://www.flashdevices.net/2008/01/forecasted-installed-base-of-flash-lite.html" title="Flash Lite forecast" target="_blank"><strong>Prognozy liczby urządzeń wspierających Flash Lite na rok 2008</strong></a></p>
<p>Rynek urządzeń mobilnych rozwija się w&nbsp;ekspresowym tempie. Liczba rodzajów telefonów i&nbsp;urządzeń jest wręcz astronomiczna. Dlatego tworzenie aplikacji i&nbsp;gier na te urządzenia jest wyjątkowo uciążliwe. Nadzieją jest na pewno <a href="http://www.adobe.com/products/flashlite/" title="Flash Lite" target="_blank">Flash Lite</a>. Rozpowszechnienie tego rozwiązania było by zbawieniem dla developerów, gdyż aplikacje i&nbsp;gry napisane pod <a href="http://www.adobe.com/products/flashlite/" title="Flash Lite" target="_blank">Flash Lite</a> działają na każdym urządzeniu, które tą technologię wspiera, podobnie jak to jest ze stronami flash działającymi na różnych przeglądarkach oraz systemach operacyjnych. Prognozy na ten rok są optymistyczne. W&nbsp;Europie środkowej w&nbsp;2008 roku będzie niemal 25 mln. urządzeń wspierających <a href="http://www.adobe.com/products/flashlite/" title="Flash Lite" target="_blank">Flash Lite</a>, z&nbsp;czego ponad 6 mln. w&nbsp;Polsce. Pewną barierą może być to, że dużo z&nbsp;nich nie ma <a href="http://www.adobe.com/products/flashlite/" title="Flash Lite" target="_blank">Flash Lite</a>&#8216;a zainstalowanego fabrycznie jednak mam nadzieję, że będzie to bariera to przeskoczenia a&nbsp;w roku 2009 problem ten zupełnie zniknie. <img src='http://www.woszkowski.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><a href="http://motionandcolor.com/" title="Wrapper" target="_blank"><strong>Wrapper, czyli napisz stronę w&nbsp;HTML i&nbsp;wyświetl ją we Flashu</strong></a><a href="http://motionandcolor.com/" title="Wrapper" target="_blank"></a></p>
<p><a href="http://motionandcolor.com/" title="Wrapper" target="_blank"><img src="http://www.woszkowski.com/wp-content/uploads/2008/02/wrapper.jpg" title="Wrapper" alt="Wrapper" align="left" hspace="3" vspace="3" /></a>Ciekawe rozwiązanie, które ma na pewno sporą przyszłość, choć wg mnie w&nbsp;trochę innej postaci. Na razie głównym celem <a href="http://motionandcolor.com/" title="Wrapper" target="_blank">Wrappera</a> jest zachowanie identycznego wyglądu strony htm niezależnie od przeglądarki. Dodatkowo flash udostępnia nam kilka dodatkowych opcji, jak gradienty oraz filtry. Polega to na tym, że stronę piszemy w&nbsp;html (proponuję zobaczyć źródło tej strony), następnie za pomocą javascript, całość podmieniana jest jednym wielkim flashem a&nbsp;treść przekazywana do niego.  Nie spodziewał bym się jednak przełomu w&nbsp;dziedzinie webmasterki. <img src='http://www.woszkowski.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Osobiście chciałbym zobaczyć <a href="http://motionandcolor.com/" title="Wrapper" target="_blank">Wrappera</a>, jako komponent lub bibliotekę, umożliwiającą ładny rendering kodu html we wnętrzu strony flash.</p>
<p>Na koniec w&nbsp;zasadzie ciekawostka, gdyż wymaga dość skomplikowanej zabawki&#8230; <img src='http://www.woszkowski.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><a href="http://adn.blam.be/papervision/" title="360 video" target="_blank"><strong>Idealna technologia do przeprowadzania relacji sportowych</strong></a></p>
<p><a href="http://adn.blam.be/papervision/" title="360 video" target="_blank"><img src="http://www.woszkowski.com/wp-content/uploads/2008/02/360.jpg" title="360 video" alt="360 video" align="left" hspace="3" vspace="3" /></a>Przepis jest następujący:<br />
- kręcimy film za pomocą dość specyficznej kamery, która mam nadzieję od razu zespala obraz z&nbsp;wielu obiektywów w&nbsp;jedną panoramę,<br />
- nakładamy całość na sferę,<br />
- wrzucamy do <a href="http://blog.papervision3d.org/" title="Papervision3D" target="_blank">Papervision3D</a>,<br />
- oprogramowujemy ruch myszki,<br />
- sami decydujemy w&nbsp;którą stronę się patrzymy!<br />
Ciekawe kiedy obejrzę w&nbsp;tej technologii np. relację z&nbsp;Tour de France. <img src='http://www.woszkowski.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>*Mała adnotacja.  Autorem zdjęć oraz producentem tego sprzętu jest firma <a href="http://www.immersivemedia.com/" title="Immersive Media" target="_blank">Immersive Media</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.woszkowski.com/flash-biuletyn-i,54.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Wesołych Świąt!</title>
		<link>http://www.woszkowski.com/wesolych-swiat,49.html</link>
		<comments>http://www.woszkowski.com/wesolych-swiat,49.html#comments</comments>
		<pubDate>Sat, 22 Dec 2007 23:03:41 +0000</pubDate>
		<dc:creator>Paweł Woszkowski</dc:creator>
				<category><![CDATA[AS3]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Papervision3d]]></category>

		<guid isPermaLink="false">http://www.woszkowski.com/wesolych-swiat,49.html</guid>
		<description><![CDATA[Jak co roku, krótko i&#160;zwięźle, życzę wszystkim z&#160;okazji Świąt oraz Nowego Roku, spełnienia wszystkich marzeń.  
Tradycyjnie przygotowałem z&#160;tej okazji kartkę:

Kartki świąteczne są dla mnie poligonem doświadczalnym. Pewnie dlatego rzadko kiedy trafiają w&#160;gust odbiorców.   Tym razem pod nóż poszła nowa wersja biblioteki Papervision3D oraz biblioteka Box2DFlash. Papervision3D 2.0 oferuje cieniowane materiały. W&#160;bombce użyłem [...]]]></description>
			<content:encoded><![CDATA[<p>Jak co roku, krótko i&nbsp;zwięźle, życzę wszystkim z&nbsp;okazji Świąt oraz Nowego Roku, spełnienia wszystkich marzeń. <img src='http://www.woszkowski.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Tradycyjnie przygotowałem z&nbsp;tej okazji kartkę:</p>
<p><a href="http://www.woszkowski.com/swieta2007/" title="Święta 2007" target="_blank"><img src="http://www.woszkowski.com/wp-content/uploads/2007/12/swieta2007.jpg" alt="Święta 2007" /></a></p>
<p>Kartki świąteczne są dla mnie poligonem doświadczalnym. Pewnie dlatego rzadko kiedy trafiają w&nbsp;gust odbiorców. <img src='http://www.woszkowski.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' />  Tym razem pod nóż poszła nowa wersja biblioteki <a href="http://blog.papervision3d.org/" target="_blank" title="Papervision3D">Papervision3D</a> oraz biblioteka <a href="http://box2dflash.sourceforge.net/" target="_blank" title="Box2DFlash">Box2DFlash</a>. Papervision3D 2.0 oferuje cieniowane materiały. W&nbsp;bombce użyłem cieniowania <a href="http://en.wikipedia.org/wiki/Phong_shading" target="_blank" title="Phong shading">Phonga</a>. Box2DFlash służy do symulacji grawitacji oraz oddziaływania między sobą przedmiotów. Dzięki niej bombka się buja. Efekt jest całkiem fajny, wymaga jednak chyba dość dobrego procesora. <img src='http://www.woszkowski.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<p>Zapraszam również do obejrzenia kartki &#8211; gry, którą oprogramowałem dla <a href="http://www.netizens.pl" target="_blank" title="Netizens">Netizens</a>, czyli firmy w&nbsp;której pracuję. Tutaj również wykorzystałem Box2DFlash.</p>
<p><a href="http://gwiazdka2007.netizens.pl/" target="_blank" title="Netizens - Gwiazdka 2007"><img src="http://www.woszkowski.com/wp-content/uploads/2007/12/netizensgwiazdka2007.jpg" alt="Netizens - Gwiazdka 2007" /></a></p>
<p><strong>Dla przypomnienia kartki z&nbsp;poprzednich lat.</strong></p>
<p>Rok 2006 &#8211; kartka również w&nbsp;3D, jednak engine dość prymitywny, w&nbsp;całości albo w&nbsp;części mojego autorstwa (nie pamiętam).</p>
<p><a href="http://www.woszkowski.com/swieta2006/" target="_blank" title="Święta 2006"><img src="http://www.woszkowski.com/wp-content/uploads/2007/12/swieta2006.jpg" alt="Święta 2006" /></a></p>
<p>Rok 2005 &#8211; posadź swoją choinkę i&nbsp;zostaw na niej życzenia&#8230; dla kogoś szczególnego, dla siebie lub dla ogółu. <img src='http://www.woszkowski.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><a href="http://www.woszkowski.com/swieta2005/" target="_blank" title="Święta 2005"><img src="http://www.woszkowski.com/wp-content/uploads/2007/12/swieta2005.jpg" alt="Święta 2005" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.woszkowski.com/wesolych-swiat,49.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Optymalizacja ActionScript 3.0</title>
		<link>http://www.woszkowski.com/optymalizacja-actionscript-30,42.html</link>
		<comments>http://www.woszkowski.com/optymalizacja-actionscript-30,42.html#comments</comments>
		<pubDate>Sun, 28 Oct 2007 18:53:35 +0000</pubDate>
		<dc:creator>Paweł Woszkowski</dc:creator>
				<category><![CDATA[AS3]]></category>
		<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://www.woszkowski.com/optymalizacja-actionscript-30,42.html</guid>
		<description><![CDATA[Pierwszy w&#160;Europie Adobe MAX,  w&#160;którym miałem szczęście uczestniczyć, za nami. W&#160;trakcie sympozjum (konferencji?) wziąłem udział w&#160;kilku sesjach, które traktowały o&#160;optymalizacji ActionScript 3.0. Poniżej postaram się wymienić najważniejsze sposoby. Duża część z&#160;nich odbiega od przyjętych standardów programowania i&#160;często może zmniejszyć przejrzystość kodu. Dlatego warto je stosować tylko wtedy, gdy zależy nam na maksymalnej wydajności.

minimalizujemy liczbę [...]]]></description>
			<content:encoded><![CDATA[<p>Pierwszy w&nbsp;Europie Adobe MAX,  w&nbsp;którym miałem szczęście uczestniczyć, za nami. W&nbsp;trakcie sympozjum (konferencji?) wziąłem udział w&nbsp;kilku sesjach, które traktowały o&nbsp;optymalizacji ActionScript 3.0. Poniżej postaram się wymienić najważniejsze sposoby. Duża część z&nbsp;nich odbiega od przyjętych standardów programowania i&nbsp;często może zmniejszyć przejrzystość kodu. Dlatego warto je stosować tylko wtedy, gdy zależy nam na maksymalnej wydajności.</p>
<ul>
<li>minimalizujemy liczbę obiektów, efektów i&nbsp;animacji na ekranie</li>
<li>usuwamy obiekty z&nbsp;listy wyświetlania zamiast robić je niewidocznymi</li>
<li>wyrzucamy co się da przed pętlę</li>
<li>przed wejściem w&nbsp;pętlę przypisujemy obliczane w&nbsp;pętli wartości do zmiennych<br />
np. zamiast:<br />
for(var i:int=0 ; i&lt;myArray.length ; i++)<br />
{<br />
//some code…<br />
}<br />
piszemy:<br />
<strong>var len:int = myArray.length;</strong><br />
for(var i:int=0 ; i&lt;len ; i++)<br />
{<br />
//some code…<br />
}</li>
<li>bezwzględnie używamy <a href="http://en.wikipedia.org/wiki/Strong_typing" title="Wikipedia: strong typing" target="_blank">strong typing</a></li>
<li>usuwamy z&nbsp;kodu wszystkie <em>trace</em> lub w&nbsp;opcjach publikacji włączamy <em>omit trace actions</em></li>
<li>unikamy porównywania różnych typów danych</li>
<li>zamiast funkcji getter / setter używamy zmiennych typu public</li>
<li>w pętlach zamiast i++ używamy i+=1 (tak, dla mnie to też był szok <img src='http://www.woszkowski.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  )</li>
<li>stosujemy pętle for each zamiast for in</li>
<li>stosujemy &#8220;&#8221;+k zamiast k.toString()</li>
<li>tworzymy tablice poprzez k = [1,2,3] zamiast k = new Array(1,2,3)</li>
<li>stosujemy optymalne algorytmy (to raczej oczywiste)</li>
<li>staramy się używać typu int zamiast Number (zwłaszcza jako wskaźnika do tablic lub pętli)</li>
<li>nie piszemy długich funkcji, gdyż flash player ma wtedy problem z&nbsp;alokacją rejestrów</li>
<li>jeżeli tylko się da, używamy operacji logicznych zamiast arytmetycznych<br />
np. zamiast:<br />
var mutiplyResult:int = anAge * 8;<br />
piszemy:<br />
var mutiplyResult:int = anAge &lt;&lt; 3;</li>
</ul>
<p><a href="http://www.mediabox.fr/b_MAX+%3A+Optimiser+son+code+AS3+avec+C%C3%A9dric+Tabin.html" title="Cedric Tabin" target="_blank">Tutaj</a> znajdziecie prezentację oraz przykłady, których autorem jest Cedric Tabin, prowadzący sesję <em>Optimizing ActionScript 3 performance</em> na Adobe MAX Barcelona. W&nbsp;dużej mierze opierałem się właśnie na nich.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.woszkowski.com/optymalizacja-actionscript-30,42.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>JPEGEncoder</title>
		<link>http://www.woszkowski.com/jpegencoder,34.html</link>
		<comments>http://www.woszkowski.com/jpegencoder,34.html#comments</comments>
		<pubDate>Thu, 20 Sep 2007 08:05:07 +0000</pubDate>
		<dc:creator>Paweł Woszkowski</dc:creator>
				<category><![CDATA[AS3]]></category>
		<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://www.woszkowski.com/?p=34</guid>
		<description><![CDATA[W AS3, dzięki klasie ByteArray, mamy możliwość operowania danymi binarnymi. Wykorzystując tą możliwość, powstało szereg przydatnych bibliotek, które umożliwiają bezpośrednio we flashu np. kompresję zip, jpg, png, etc. Mnie na razie najbardziej zainteresowała klasa JPEGEncoder.
Aby w&#160;AS2 wygenerować obrazek w&#160;postaci JPG i&#160;zapisać go na serwerze lub dysku, musieliśmy najpierw wysłać wszystkie dane (bajt po bajcie) do [...]]]></description>
			<content:encoded><![CDATA[<p>W AS3, dzięki klasie ByteArray, mamy możliwość operowania danymi binarnymi. Wykorzystując tą możliwość, powstało szereg przydatnych bibliotek, które umożliwiają bezpośrednio we flashu np. kompresję zip, jpg, png, etc. Mnie na razie najbardziej zainteresowała klasa <a href="http://www.bytearray.org/?p=26" title="JPEGEncoder" target="_blank">JPEGEncoder</a>.</p>
<p>Aby w&nbsp;AS2 wygenerować obrazek w&nbsp;postaci JPG i&nbsp;zapisać go na serwerze lub dysku, musieliśmy najpierw wysłać wszystkie dane (bajt po bajcie) do skryptu php, który to generował plik. Jak łatwo się domyślić, za każdym razem trzeba było przesłać astronomiczną liczbę danych. Np. generując kolorowy obrazek 640&#215;480, trzeba było przesłać ok. 921kB danych. W&nbsp;przypadku AS3 i&nbsp;JPEGEncodera, również musimy przesłać dane najpierw na serwer a&nbsp;następnie z&nbsp;serwera na dysk lokalny. Przesyłamy już jednak skompresowane dane, czyli kilkanaście lub kilkadziesiąt razy mniej.</p>
<p>Do komunikacji Flash &lt;-&gt; PHP zostało wykorzystane <a href="http://amfphp.sourceforge.net/" title="AMFphp">AMFphp</a>. Jest to narzędzie RPC (zdalne wywoływanie procedur) dla PHP. AMFphp znacznie ułatwia wymianę danych, zapewnie elementarną autentykację i&nbsp;można go w&nbsp;prosty sposób rozbudowywać.</p>
<p>JPEGEncoder można wykorzystać na wiele sposobów. Pierwsze pomysły jakie się nasuwają, to generowanie avatarów i&nbsp;kartek. Ja wpadłem na inny pomysł, którego wersję beta można znaleźć tutaj:</p>
<p><a href="http://woszkowski.com/jestemwtv/" title="Jeste w&nbsp;tv" target="_blank"><img src="http://www.woszkowski.com/wp-content/uploads/2007/09/jestemwtv.jpg" title="Jestem w&nbsp;tv" alt="Jestem w&nbsp;tv" /></a></p>
<p>Już niedługo bardziej rozbudowana wersja. Miłej zabawy. <img src='http://www.woszkowski.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.woszkowski.com/jpegencoder,34.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
