<?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>AS3 : FLEX : AIR  Portalscreen &#187; Flex 3D</title>
	<atom:link href="http://www.portalscreen.com/category/as3-papervision/feed" rel="self" type="application/rss+xml" />
	<link>http://www.portalscreen.com</link>
	<description>Mi Blog personal sobre programación y algo más..</description>
	<lastBuildDate>Wed, 16 May 2012 07:21:14 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Effects on Flex, usando animaciones con Spark</title>
		<link>http://www.portalscreen.com/2011-11/effects-flex-spark-animations.html</link>
		<comments>http://www.portalscreen.com/2011-11/effects-flex-spark-animations.html#comments</comments>
		<pubDate>Mon, 07 Nov 2011 17:25:08 +0000</pubDate>
		<dc:creator>Francisco</dc:creator>
				<category><![CDATA[Adobe Flex]]></category>
		<category><![CDATA[Componentes Flex]]></category>
		<category><![CDATA[Flex 3D]]></category>

		<guid isPermaLink="false">http://www.portalscreen.com/?p=1105</guid>
		<description><![CDATA[La diferencia entre una aplicación profesional y una aplicación poco tratada es la calidad con la que se resuelve la primera de la segunda. Una de las mejoras que podemos realizar a cualquier proyecto que llevemos entre manos, es la inserción de dinamismo entre textos, imágenes o componentes. Este dinamismo lo podemos crear a partir [...]]]></description>
			<content:encoded><![CDATA[<p>La diferencia entre una aplicación profesional y una aplicación poco tratada es la calidad con la que se resuelve la primera de la segunda. Una de las mejoras que podemos realizar a cualquier proyecto que llevemos entre manos, es la inserción de dinamismo entre textos, imágenes o componentes.</p>
<p>Este dinamismo lo podemos crear a partir de los ya conocidos effectos que proporcionaba Adobe Flex en la versión 3, o disponer de los nuevos que han sido incorporados en las últimas versiones. <span id="more-1105"></span>A continuación presentaré un par de ejemplos sencillos pero atractivos a la vista, de como utilizar efectos empleando la clase &lt;s:Animate&gt; y  clases de efectos en la Spark como pueden ser <a title="Clase Sine effect Spark - Adobe Flex" href="http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/spark/effects/easing/Sine.html" target="_blank">Sine</a> o <a title="Clase Power effect - Adobe Flex 4" href="http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/spark/effects/easing/Power.html" target="_blank">Power</a>.</p>
<p>&lt;Animate&gt; es un efecto en el que definimos la acción que debe de seguir el objeto al que es asignado, de tal modo que podemos adaptarle un comportamiento describiendo una acción tipo 3D o transición con varios factores alterados. Lo veréis más claro en el siguiente ejemplo:</p>
<div align="center"><embed wmode="transparent" src="http://www.portalscreen.com/contenido/examples/ps_animation_spark/animateSpark.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="428" height="280"></embed></div>
<p>&nbsp;<br />
Podéis encontrar el código haciendo clic con el botón derecho en el elemento flash y pulsando en <b>&#8220;View Source&#8221;</b>, es un ejemplo muy sencillo y para muchos casos resulta muy útil.</p>
<div id="crp_related"><h3>Esto te interesa:</h3><ol><li><a href="http://www.portalscreen.com/2011-05/galeria-imagenes-hbox.html" rel="bookmark" class="crp_title">Galería de imágenes en componente HBox</a></li><li><a href="http://www.portalscreen.com/2010-03/flex-effects-animation.html" rel="bookmark" class="crp_title">Flex 4: Using Effects and Animation</a></li><li><a href="http://www.portalscreen.com/2011-07/button-invisible-sparkskin.html" rel="bookmark" class="crp_title">Como hacer invisible un componente Button con SparkSkin</a></li><li><a href="http://www.portalscreen.com/2011-05/galeria-imagenes-flex.html" rel="bookmark" class="crp_title">Carousel de imágenes en Flex</a></li><li><a href="http://www.portalscreen.com/2011-01/skin-spark-component.html" rel="bookmark" class="crp_title">Skin spark components en Flex 4</a></li></ol></div>]]></content:encoded>
			<wfw:commentRss>http://www.portalscreen.com/2011-11/effects-flex-spark-animations.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Flex y el Comercio Online, nuevas oportunidades para la telefonía móvil</title>
		<link>http://www.portalscreen.com/2011-09/flex-comercio-online-aplicaciones-moviles.html</link>
		<comments>http://www.portalscreen.com/2011-09/flex-comercio-online-aplicaciones-moviles.html#comments</comments>
		<pubDate>Fri, 23 Sep 2011 23:23:23 +0000</pubDate>
		<dc:creator>Francisco</dc:creator>
				<category><![CDATA[Adobe Flex]]></category>
		<category><![CDATA[Flex 3D]]></category>
		<category><![CDATA[adobe flex]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[Emprendedor]]></category>
		<category><![CDATA[Ideas]]></category>
		<category><![CDATA[marketing]]></category>
		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[RIA flex]]></category>

		<guid isPermaLink="false">http://www.portalscreen.com/?p=1079</guid>
		<description><![CDATA[Es evidente la actual demanda que corre por este tipo de mercado, la venta de aplicaciones para móviles smartphones de última generación. Como ya sabemos, la última versión SDK para Flash Builder (4.5), hace posible el desarrollo de aplicaciones para plataformas tanto Android como iOS, por lo que es hora de sacar todo el partido [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Es evidente la actual demanda que corre por este tipo de mercado, la venta de aplicaciones para móviles smartphones de última generación.<br />
Como ya sabemos, la última versión SDK para Flash Builder (4.5), hace posible el desarrollo de aplicaciones para plataformas tanto Android como iOS, por lo que es hora de sacar todo el partido posible a esta herramienta.<span id="more-1079"></span><br />
Tomando como base la situación actual en la que se encuentra la sociedad no corren tiempos fáciles, pero si prestamos un poco de atención a las estadísticas veremos que estamos en pleno crecimiento en el campo de comercio online.</p>
<p><a href="http://www.portalscreen.com/contenido/archivos/2011/09/comercio_online.jpg"><img class="alignleft size-thumbnail wp-image-1090" style="margin: 10px;" title="Comercio online y tecnología Flex" src="http://www.portalscreen.com/contenido/archivos/2011/09/comercio_online-150x150.jpg" alt="Comercio online y tecnología Flex" width="150" height="150" /></a></p>
<p style="text-align: justify;">Son muchas las soluciones y servicios que hay disponibles en la red, pero también es cierto que existe un amplio abanico de posibilidades que podemos aprovechar para conseguir un poco del pastel a repartir con el comercio online.</p>
<p style="text-align: justify;">Es por esto que al poder crear aplicaciones nativas desde Adobe Flex, se presenta una oportunidad de llegar a un mercado más amplio que el actual para las aplicaciones RIA.</p>
<p style="text-align: justify;">¿Imaginais las posibilidades de poder crear una aplicación utilizando GPS más las API que hay disponibles más la conexión AMFPHP con lenguajes como Php o Python?, la verdad que abre una gran cantidad de posibilidades de negocio para crear y difundir.</p>
<div id="crp_related"><h3>Esto te interesa:</h3><ol><li><a href="http://www.portalscreen.com/2012-01/estadisticas-movil-mcommerce.html" rel="bookmark" class="crp_title">Estadísticas del m-Commerce como fuente de ingresos</a></li><li><a href="http://www.portalscreen.com/2011-03/blueprint-plugin-flash-builder.html" rel="bookmark" class="crp_title">Blueprint, un plugin para Flash builder</a></li><li><a href="http://www.portalscreen.com/2011-11/html5-standard-a-debate.html" rel="bookmark" class="crp_title">HTML5, ¿Nuevo standard o foco de debate?</a></li><li><a href="http://www.portalscreen.com/2011-07/eskimo-flex-iphone-android.html" rel="bookmark" class="crp_title">eSkimo, skins base para aplicaciones iPhone y Android &#8211; Open source</a></li><li><a href="http://www.portalscreen.com/2012-02/crear-app-nativa-ios-android-sencha.html" rel="bookmark" class="crp_title">Aplicaciones nativas para iOS y Android con Sencha Touch</a></li></ol></div>]]></content:encoded>
			<wfw:commentRss>http://www.portalscreen.com/2011-09/flex-comercio-online-aplicaciones-moviles.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Images gallery with papervision3d</title>
		<link>http://www.portalscreen.com/2010-06/gallery-papervision3d.html</link>
		<comments>http://www.portalscreen.com/2010-06/gallery-papervision3d.html#comments</comments>
		<pubDate>Sun, 20 Jun 2010 11:20:30 +0000</pubDate>
		<dc:creator>Francisco</dc:creator>
				<category><![CDATA[Flex 3D]]></category>
		<category><![CDATA[adobe flex]]></category>
		<category><![CDATA[Component Flex]]></category>
		<category><![CDATA[flex 3d]]></category>
		<category><![CDATA[papervision3d]]></category>

		<guid isPermaLink="false">http://www.portalscreen.com/?p=551</guid>
		<description><![CDATA[Hola a todos nuevamente, aquí les traigo un ejemplo práctico de galería de imágenes con papervision3d. Es un ejemplo bastante sencillo pero a la vez práctico e interesante. Espero que les guste, me despido no sin antes invitarles a dejar cualquier comentario o petición, un saludo a todos. &#160; Nota: 1 click para acercar la [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Hola a todos nuevamente, aquí les traigo un ejemplo práctico de galería de imágenes con papervision3d. Es un ejemplo bastante sencillo pero a la vez práctico e interesante. Espero que les guste, me despido no sin antes invitarles a dejar cualquier comentario o petición, un saludo a todos.</p>
<p>&nbsp;</p>
<p><object width="450" height="320"><param value="http://www.portalscreen.com/contenido/archivos/2010/06/galeria.swf" name="movie"><embed width="450" height="320" align="center" src="http://www.portalscreen.com/contenido/archivos/2010/06/galeria.swf"></object><br />
Nota:  1 click para acercar la cámara, 2 click para alejarse.<br />
Download: <a title="Download Gallery Papervision3d" href="http://www.portalscreen.com/downloads/galeria-papervision3d.rar">Galería papervision3D</a></p>
<p>&nbsp;</p>
<p><span id="more-551"></span><br />
 </p>
<div id="crp_related"><h3>Esto te interesa:</h3><ol><li><a href="http://www.portalscreen.com/2011-05/galeria-imagenes-flex.html" rel="bookmark" class="crp_title">Carousel de imágenes en Flex</a></li><li><a href="http://www.portalscreen.com/2011-05/galeria-imagenes-hbox.html" rel="bookmark" class="crp_title">Galería de imágenes en componente HBox</a></li><li><a href="http://www.portalscreen.com/2010-03/papervision3d-for-dummies.html" rel="bookmark" class="crp_title">Papervision3D for Dummies : Hola mundo en 3D</a></li><li><a href="http://www.portalscreen.com/2010-04/flash-iphone-app.html" rel="bookmark" class="crp_title">Adobe AIR para iPhone y Android OS : Flash Pro CS5</a></li><li><a href="http://www.portalscreen.com/2010-03/flex-effects-animation.html" rel="bookmark" class="crp_title">Flex 4: Using Effects and Animation</a></li></ol></div>]]></content:encoded>
			<wfw:commentRss>http://www.portalscreen.com/2010-06/gallery-papervision3d.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rotate x-axis Object Sprite : Flash as3 fp10</title>
		<link>http://www.portalscreen.com/2010-05/rotate-x-axis-object-sprite-flash-as3-fp10.html</link>
		<comments>http://www.portalscreen.com/2010-05/rotate-x-axis-object-sprite-flash-as3-fp10.html#comments</comments>
		<pubDate>Wed, 12 May 2010 22:06:05 +0000</pubDate>
		<dc:creator>Francisco</dc:creator>
				<category><![CDATA[Flex 3D]]></category>
		<category><![CDATA[adobe flash]]></category>
		<category><![CDATA[class as3]]></category>
		<category><![CDATA[Tutoriales]]></category>

		<guid isPermaLink="false">http://www.portalscreen.com/?p=466</guid>
		<description><![CDATA[Aquí les comento un breve ejemplo muy sencillo, de como hacer una rotación sobre un objeto Sprite sin necesidad de aplicar ninguna librería extra tipo papervision. Se trata de utilizar un slider, el cual deberemos de adjuntar a la libreria del proyecto flash, el cual nos servirá para cambiar los valores de rotación x-axis del [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Aquí les comento un breve ejemplo muy sencillo, de como hacer una rotación sobre un objeto Sprite sin necesidad de aplicar ninguna librería extra tipo papervision. Se trata de utilizar un slider, el cual deberemos de adjuntar a la libreria del proyecto flash, el cual nos servirá para cambiar los valores de rotación x-axis del object Sprite y visualizar su rotación en 3D&#8230;</p>
<p><span id="more-466"></span></p>
<p style="text-align: justify;">El código del ejemplo sería este:</p>
<p style="text-align: justify;">&nbsp;</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;"><span style="color: #339933;">**</span> Requires<span style="color: #339933;">:</span>
 <span style="color: #339933;">*</span>  <span style="color: #339933;">-</span> Slider control in Flash library.
 <span style="color: #339933;">*</span>  <span style="color: #339933;">-</span> Publish <span style="color: #000000; font-weight: bold;">for</span> Flash Player <span style="color: #cc66cc;">10</span>.
 <span style="color: #339933;">*/</span>
&nbsp;
<span style="color: #009900;">&#91;</span>SWF<span style="color: #009900;">&#40;</span>width<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;400&quot;</span>, height<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;300&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#93;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">fl.controls.Slider</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">fl.controls.SliderDirection</span><span style="color: #339933;">;</span>
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">fl.events.SliderEvent</span><span style="color: #339933;">;</span>
&nbsp;
var slider<span style="color: #339933;">:</span>Slider <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Slider<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
slider.<span style="color: #006633;">direction</span> <span style="color: #339933;">=</span> SliderDirection.<span style="color: #006633;">HORIZONTAL</span><span style="color: #339933;">;</span>
slider.<span style="color: #006633;">minimum</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span>
slider.<span style="color: #006633;">maximum</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">360</span><span style="color: #339933;">;</span>
slider.<span style="color: #006633;">value</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">45</span><span style="color: #339933;">;</span>
slider.<span style="color: #006633;">tickInterval</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">45</span><span style="color: #339933;">;</span>
slider.<span style="color: #006633;">snapInterval</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">1</span><span style="color: #339933;">;</span>
slider.<span style="color: #006633;">liveDragging</span> <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">true</span><span style="color: #339933;">;</span>
slider.<span style="color: #006633;">addEventListener</span><span style="color: #009900;">&#40;</span>SliderEvent.<span style="color: #006633;">CHANGE</span>, slider_change<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
slider.<span style="color: #006633;">move</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">10</span>, <span style="color: #cc66cc;">10</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
addChild<span style="color: #009900;">&#40;</span>slider<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
var spr<span style="color: #339933;">:</span>Sprite <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Sprite<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
spr.<span style="color: #006633;">graphics</span>.<span style="color: #006633;">lineStyle</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">2</span>, 0xFF0000<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
spr.<span style="color: #006633;">graphics</span>.<span style="color: #006633;">drawRect</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">0</span>, <span style="color: #cc66cc;">0</span>, <span style="color: #cc66cc;">100</span>, <span style="color: #cc66cc;">80</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
spr.<span style="color: #006633;">x</span> <span style="color: #339933;">=</span> <span style="color: #003399;">Math</span>.<span style="color: #006633;">round</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>stage.<span style="color: #006633;">stageWidth</span> <span style="color: #339933;">-</span> spr.<span style="color: #006633;">width</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
spr.<span style="color: #006633;">y</span> <span style="color: #339933;">=</span> <span style="color: #003399;">Math</span>.<span style="color: #006633;">round</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>stage.<span style="color: #006633;">stageHeight</span> <span style="color: #339933;">-</span> spr.<span style="color: #006633;">height</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">/</span><span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
spr.<span style="color: #006633;">rotationX</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">45</span><span style="color: #339933;">;</span>
addChild<span style="color: #009900;">&#40;</span>spr<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
function slider_change<span style="color: #009900;">&#40;</span>evt<span style="color: #339933;">:</span>SliderEvent<span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #000066; font-weight: bold;">void</span> <span style="color: #009900;">&#123;</span>
    spr.<span style="color: #006633;">rotationX</span> <span style="color: #339933;">=</span> evt.<span style="color: #006633;">value</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>Espero que les sirva, un saludo a todos.</p>
<p><!--more--><br />
 </p>
<div id="crp_related"><h3>Esto te interesa:</h3><ol><li><a href="http://www.portalscreen.com/2009-12/papervision-as3.html" rel="bookmark" class="crp_title">Papervision3D : primeros pasos</a></li><li><a href="http://www.portalscreen.com/2010-01/parse-rss-air.html" rel="bookmark" class="crp_title">Lectura de Feed RSS en AIR</a></li><li><a href="http://www.portalscreen.com/2011-07/button-invisible-sparkskin.html" rel="bookmark" class="crp_title">Como hacer invisible un componente Button con SparkSkin</a></li><li><a href="http://www.portalscreen.com/2010-06/sorting-datagrid-adobe-air.html" rel="bookmark" class="crp_title">Sorting DataGrid Control by date in Adobe Air</a></li><li><a href="http://www.portalscreen.com/2010-06/gallery-papervision3d.html" rel="bookmark" class="crp_title">Images gallery with papervision3d</a></li></ol></div>]]></content:encoded>
			<wfw:commentRss>http://www.portalscreen.com/2010-05/rotate-x-axis-object-sprite-flash-as3-fp10.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Papervision3D for Dummies : Hola mundo en 3D</title>
		<link>http://www.portalscreen.com/2010-03/papervision3d-for-dummies.html</link>
		<comments>http://www.portalscreen.com/2010-03/papervision3d-for-dummies.html#comments</comments>
		<pubDate>Wed, 31 Mar 2010 17:28:54 +0000</pubDate>
		<dc:creator>Francisco</dc:creator>
				<category><![CDATA[eBooks]]></category>
		<category><![CDATA[Flex 3D]]></category>
		<category><![CDATA[Component Flex]]></category>
		<category><![CDATA[flex 3d]]></category>
		<category><![CDATA[papervision3d]]></category>
		<category><![CDATA[Tutoriales]]></category>

		<guid isPermaLink="false">http://www.portalscreen.com/?p=337</guid>
		<description><![CDATA[Siempre nos encontramos en el paradigma de encontrar nuevos recursos e inspiraciones de los cuales sacar nuevas ideas que nos aporten algo más para nuesto estilo de desarrollo, pues bien, navegando entre blogs, foros y demás, me he encontrado con un post del cual no he podido mirar hacia otro lado sin recordar aquellos momentos [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Siempre nos encontramos en el paradigma de encontrar nuevos recursos e inspiraciones de los cuales sacar nuevas ideas que nos aporten algo más para nuesto estilo de desarrollo, pues bien, navegando entre blogs, foros y demás, me he encontrado con un post del cual no he podido mirar hacia otro lado sin recordar aquellos momentos de inquietud en investigación y desarrollo con papervision3D, y en las horas que invertí en el aprendizaje, por eso he recogido este gran post, de la mano de los compañeros de <a title="Comunidad flash/flex" rel="no follow" href="http://www.madeinflex.com" target="_blank">made in Flex</a>, en el cual explican muchos aspectos importantes que hay que tener en cuenta cuando eres nuevo y principiante en el desarrollo de aplicaciones en Adobe Air.<a href="http://www.portalscreen.com/contenido/archivos/2010/03/papervision-coverflow.jpg"><img class="aligncenter size-medium wp-image-350" title="papervision-coverflow" src="http://www.portalscreen.com/contenido/archivos/2010/03/papervision-coverflow-300x135.jpg" alt="Papervision3d coverflow" width="300" height="135" /></a><br />
<span style="font-size:9px;">blog oficial : <a href="http://blog.papervision3d.org/" target="_blank">blog papervision</a></spam></p>
<p style="text-align: justify;">Todos los ejemplos que podemos encontrar en los dos ficheros adjuntos, son proyectos Flex Builder 3 e incorporan las librerías necesarias en formato compilado .swc para facilitar la implantación de esta.</p>
<p>Un pequeño resumen de los ejemplos:</p>
<ul>
<li><strong>Hello Sphere:</strong> La mínima expresión de una aplicación Papervision3D.</li>
<li><strong>Primitivas 3D:</strong> Una muestra de las primitivas que vienen con Papervision3D.</li>
<li><strong>Rolling sphere:</strong> Una esfera rotando.</li>
<li><strong>PV3D+Tweener:</strong> Ejemplo de utilización de la librería Tweener conjuntamente con Papervision3D para llevar a cabo animaciones de forma sencilla.</li>
<li><strong>Camera:</strong> Ejemplo de utilización de la cámara debug, con posibilidad de moverla con el teclado y ver en timepo real cómo sus distintos parámetros modifican el renderizado final.</li>
<li><strong>Starfield:</strong> Viajando por un campo de estrellas.</li>
<li><strong>Earth:</strong> Ejemplo de cómo aplicar la textura de un mapa terráqueo a una esfera.</li>
<li><strong>Luces:</strong> Ejemplo de cómo iluminar una escena 3D.</li>
<li><strong>Más luces:</strong> Todos los posibles tipos de luz en un solo ejemplo para ver cómo se diferencian los unos de los otros.</li>
</ul>
<p>
Los slides:</p>
<p><a title="Slides Papervision3D for dummies" rel="no follow" href="http://www.madeinflex.com/wp-content/uploads/2008/10/slides-papervision3d_for_dummies.zip">Slides Papervision3D for dummies</a></p>
<p>Los ejemplos:</p>
<p><a title="Ejemplos Papervision3D for dummies" rel="no follow" href="http://www.madeinflex.com/wp-content/uploads/2008/10/ejemplos-papervision3d_for_dummies.zip">Ejemplos Papervision3D for dummies</a>
</p>
<p><br/><br/></p>
<p>Como siempre, espero que sea de ayuda para todos los lectores y me despido de este post no sin antes invitarles a dejar vuestros comentarios al respecto.<br/><br/> Sepan que pueden preguntar cualquier cosa relacionada con Flex : Flash : Air, y escucho peticiones de post sobre algún tema que les interese conocer. Un saludo para todos.</p>
<p><span id="more-337"></span><br />
<!--adsense--></p>
<div id="crp_related"><h3>Esto te interesa:</h3><ol><li><a href="http://www.portalscreen.com/2010-01/papervision-essentials-ebook.html" rel="bookmark" class="crp_title">Papervision 3D : Essentials (eBook)</a></li><li><a href="http://www.portalscreen.com/2010-06/gallery-papervision3d.html" rel="bookmark" class="crp_title">Images gallery with papervision3d</a></li><li><a href="http://www.portalscreen.com/2009-12/papervision-as3.html" rel="bookmark" class="crp_title">Papervision3D : primeros pasos</a></li><li><a href="http://www.portalscreen.com/2010-04/sketchpad-paint-html5.html" rel="bookmark" class="crp_title">Sketchpad: el paint de Html5</a></li><li><a href="http://www.portalscreen.com/2010-07/jquery-flex-saas.html" rel="bookmark" class="crp_title">JQuery Vs Flex &#8211; Proyectos SAAS</a></li></ol></div>]]></content:encoded>
			<wfw:commentRss>http://www.portalscreen.com/2010-03/papervision3d-for-dummies.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Papervision3D : primeros pasos</title>
		<link>http://www.portalscreen.com/2009-12/papervision-as3.html</link>
		<comments>http://www.portalscreen.com/2009-12/papervision-as3.html#comments</comments>
		<pubDate>Wed, 23 Dec 2009 00:18:26 +0000</pubDate>
		<dc:creator>Francisco</dc:creator>
				<category><![CDATA[Flex 3D]]></category>
		<category><![CDATA[as3 book]]></category>
		<category><![CDATA[papervision3d]]></category>

		<guid isPermaLink="false">http://www.portalscreen.com/?p=89</guid>
		<description><![CDATA[Buenas a todos nuevamente, en este segundo post os quiero hacer llegar la actualidad del 3D en contenidos Web. Se trata de las clases Papervision y la posibilidad de dar un giro al estilo que ahora adoptan o dentro de muy poco adoptarán los entornos web. Hay que destacar, que aún no es posible sacar [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Buenas a todos nuevamente, en este segundo post os quiero hacer llegar la actualidad del 3D en contenidos Web. Se trata de las clases Papervision y la posibilidad de dar un giro al estilo que ahora adoptan o dentro de muy poco adoptarán los entornos web. Hay que destacar, que aún no es posible sacar todo el jugo de posibilidades en cuanto a posicionar nuestra web se refiere, sin embargo si podemos utilizar este entorno como un añadido vistoso a nuestros contenidos, por ejemplos nuestro portfolio, galerías coverflow, etc.</p>
<p style="text-align: justify;"><span id="more-89"></span></p>
<p style="text-align: justify;">En esta primera toma de contacto con las clases Papervision en Action Script 3, os ilustraré un ejemplo sobre una escena 3D básica. Dicho todo esto, aquí tenéis el código que posteriormente comentaremos paso a paso:</p>
<p style="text-align: justify;">

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">package</span>
<span style="color: #009900;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">flash.display.Sprite</span><span style="color: #339933;">;</span>
	<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">flash.events.Event</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">org.papervision3d.cameras.Camera3D</span><span style="color: #339933;">;</span>
	<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">org.papervision3d.materials.WireframeMaterial</span><span style="color: #339933;">;</span>
	<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">org.papervision3d.objects.primitives.Plane</span><span style="color: #339933;">;</span>
	<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">org.papervision3d.scenes.Scene3D</span><span style="color: #339933;">;</span>
	<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">org.papervision3d.view.BasicView</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #009900;">&#91;</span>SWF<span style="color: #009900;">&#40;</span>frameRate<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;31&quot;</span>, width<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;500&quot;</span>, height<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;350&quot;</span>, backgroundColor<span style="color: #339933;">=</span><span style="color: #0000ff;">&quot;0xffffff&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#93;</span>
&nbsp;
	<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> BasicViewSample <span style="color: #000000; font-weight: bold;">extends</span> Sprite
	<span style="color: #009900;">&#123;</span>
        <span style="color: #000000; font-weight: bold;">private</span> var bView<span style="color: #339933;">:</span>BasicView<span style="color: #339933;">;</span>
&nbsp;
		<span style="color: #000000; font-weight: bold;">public</span> function BasicViewSample<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
		<span style="color: #009900;">&#123;</span>
			Init3D<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #009900;">&#125;</span>
&nbsp;
		<span style="color: #000000; font-weight: bold;">private</span> function Init3D<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #000066; font-weight: bold;">void</span>
		<span style="color: #009900;">&#123;</span>
			<span style="color: #666666; font-style: italic;">// Creamos el BasicView que contiene viewport, camera, renderer, etc</span>
			bView <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> BasicView<span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">500</span>, <span style="color: #cc66cc;">350</span>, <span style="color: #000066; font-weight: bold;">false</span>, <span style="color: #000066; font-weight: bold;">false</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
			<span style="color: #666666; font-style: italic;">// añadimos la vista al displayList</span>
			addChild<span style="color: #009900;">&#40;</span>bView<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
			<span style="color: #666666; font-style: italic;">// Configuramos la cámara:</span>
			bView.<span style="color: #006633;">camera</span>.<span style="color: #006633;">focus</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">25</span><span style="color: #339933;">;</span>
            bView.<span style="color: #006633;">camera</span>.<span style="color: #006633;">zoom</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">10</span><span style="color: #339933;">;</span>
            bView.<span style="color: #006633;">camera</span>.<span style="color: #006633;">z</span> <span style="color: #339933;">=</span> <span style="color: #339933;">-</span><span style="color: #cc66cc;">500</span><span style="color: #339933;">;</span>
            bView.<span style="color: #006633;">camera</span>.<span style="color: #006633;">y</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">300</span><span style="color: #339933;">;</span>
            bView.<span style="color: #006633;">camera</span>.<span style="color: #006633;">x</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span>
&nbsp;
			CreateObjects<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
			addEventListener<span style="color: #009900;">&#40;</span><span style="color: #003399;">Event</span>.<span style="color: #006633;">ENTER_FRAME</span>, Loop3D<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #009900;">&#125;</span>
&nbsp;
		<span style="color: #000000; font-weight: bold;">private</span> function CreateObjects<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #000066; font-weight: bold;">void</span>
		<span style="color: #009900;">&#123;</span>
			var mat<span style="color: #339933;">:</span>WireframeMaterial <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> WireframeMaterial<span style="color: #339933;">;</span>
			mat.<span style="color: #006633;">doubleSided</span> <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">true</span><span style="color: #339933;">;</span>
&nbsp;
			var plane<span style="color: #339933;">:</span>Plane <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> Plane<span style="color: #009900;">&#40;</span>mat, <span style="color: #cc66cc;">500</span>, <span style="color: #cc66cc;">500</span>, <span style="color: #cc66cc;">8</span>, <span style="color: #cc66cc;">8</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
			plane.<span style="color: #006633;">rotationX</span> <span style="color: #339933;">=</span> <span style="color: #339933;">-</span><span style="color: #cc66cc;">90</span><span style="color: #339933;">;</span>
&nbsp;
			<span style="color: #666666; font-style: italic;">// lo añadimos a la escena del BasicView.</span>
			bView.<span style="color: #006633;">scene</span>.<span style="color: #006633;">addChild</span><span style="color: #009900;">&#40;</span>plane<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
			<span style="color: #666666; font-style: italic;">//camera.target = plane;</span>
		<span style="color: #009900;">&#125;</span>
&nbsp;
		<span style="color: #000000; font-weight: bold;">private</span> function Loop3D<span style="color: #009900;">&#40;</span>e<span style="color: #339933;">:</span><span style="color: #003399;">Event</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #000066; font-weight: bold;">void</span>
		<span style="color: #009900;">&#123;</span>
			var radio<span style="color: #339933;">:</span>uint <span style="color: #339933;">=</span> <span style="color: #cc66cc;">500</span><span style="color: #339933;">;</span>
			var angulo<span style="color: #339933;">:</span><span style="color: #003399;">Number</span> <span style="color: #339933;">=</span> mouseX <span style="color: #339933;">+</span> <span style="color: #009900;">&#40;</span>stage.<span style="color: #006633;">stageWidth</span> <span style="color: #339933;">/</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
			Camera3D<span style="color: #009900;">&#40;</span>bView.<span style="color: #006633;">camera</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">x</span> <span style="color: #339933;">=</span> radio <span style="color: #339933;">*</span> <span style="color: #003399;">Math</span>.<span style="color: #006633;">cos</span><span style="color: #009900;">&#40;</span>angulo <span style="color: #339933;">/</span> <span style="color: #cc66cc;">100</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
			Camera3D<span style="color: #009900;">&#40;</span>bView.<span style="color: #006633;">camera</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">z</span> <span style="color: #339933;">=</span> radio <span style="color: #339933;">*</span> <span style="color: #003399;">Math</span>.<span style="color: #006633;">sin</span><span style="color: #009900;">&#40;</span>angulo <span style="color: #339933;">/</span> <span style="color: #cc66cc;">100</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
			Camera3D<span style="color: #009900;">&#40;</span>bView.<span style="color: #006633;">camera</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">y</span> <span style="color: #339933;">=</span> <span style="color: #339933;">-</span> mouseY <span style="color: #339933;">+</span> <span style="color: #009900;">&#40;</span>stage.<span style="color: #006633;">stageHeight</span> <span style="color: #339933;">/</span> <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #cc66cc;">100</span><span style="color: #339933;">;</span>
&nbsp;
			<span style="color: #666666; font-style: italic;">// llamamos al método de renderizado del BasicView:</span>
			bView.<span style="color: #006633;">singleRender</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #009900;">&#125;</span>
	<span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p style="text-align: justify;">Como detalle importante, hay que destacar que lo más importante a tener en cuenta es el añadir a la aplicación en sí la escena en la que se basa nuestro escenario 3D, en este caso será BasicView.</p>
<p style="text-align: justify;">La clase BasicView nos proporciona esencialmente todos los objetos necesarios para sacar un render (escena 3D), ya sea, camara, scene entre otros.</p>
<p style="text-align: justify;">
<p style="text-align: justify;">Una vez añadido el objeto heredado de BasicView al stage, lo siguiente es configurar varias características de la camara  3D, tal y como muestra el ejemplo. A parte de dotar a la cámara de una posición en la escena o de adaptarle un zoom específico, también podemos dotarla de una rotación de sus ejes X, Y o Z, entre otros muchos métodos disponibles.</p>
<p style="text-align: justify;">
<p style="text-align: justify;">Centrándonos un poco en la implementación de objetos en la escena, en el ejemplo hemos utilizado un objeto que probablemente será uno de los más comunes, el Plano, mejor dicho clase Plane. Aparte de incluir el objeto, también hemos querido aplicarle un material muy simple, se trata del material WireframeMaterial, que simple mente nos muestra el objeto Plano y los polígonos que lo forman.</p>
<p style="text-align: justify;">
<p style="text-align: justify;">Por último dejad que os comente la función que hace posible este magnífico entorno 3D. Para el ejemplo hemos utilizado el método Enter_Frame de la clase Events. Lo único que hace realmente es llamar a la función Loop3D en cada momento, y ésta es la encargada de montar el escenario en cada momento, rotando los objetos añadidos a la escena a nuestro antojo. Por otro lado y como apoyo para los impetuosos, os recomiendo que echeis un vistazo al método onRenderTick de la clase BasicView, realiza el mismo efecto que Enter_Frame pero es propio de BasicView.</p>
<p style="text-align: justify;">
<p style="text-align: justify;">Dicho todo esto, solo me queda animaros a crear nuevos entornos web basados en este entorno y no menos desearos una feliz navidad y un prospero año nuevo.</p>
<p></br><br />
<!--adsense#3dmax--><br />
</br></p>
<div id="crp_related"><h3>Esto te interesa:</h3><ol><li><a href="http://www.portalscreen.com/2010-05/rotate-x-axis-object-sprite-flash-as3-fp10.html" rel="bookmark" class="crp_title">Rotate x-axis Object Sprite : Flash as3 fp10</a></li><li><a href="http://www.portalscreen.com/2010-01/parse-rss-air.html" rel="bookmark" class="crp_title">Lectura de Feed RSS en AIR</a></li><li><a href="http://www.portalscreen.com/2010-03/papervision3d-for-dummies.html" rel="bookmark" class="crp_title">Papervision3D for Dummies : Hola mundo en 3D</a></li><li><a href="http://www.portalscreen.com/2010-06/sorting-datagrid-adobe-air.html" rel="bookmark" class="crp_title">Sorting DataGrid Control by date in Adobe Air</a></li><li><a href="http://www.portalscreen.com/2010-01/papervision-essentials-ebook.html" rel="bookmark" class="crp_title">Papervision 3D : Essentials (eBook)</a></li></ol></div>]]></content:encoded>
			<wfw:commentRss>http://www.portalscreen.com/2009-12/papervision-as3.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

