mando este post si pueden ayudarme en esta comunidad, tengo el siguiete codigo:
- package
- {
- import flash.display.BitmapData;
- import flash.display.Sprite;
- import flash.events.Event;
- import flash.media.Camera;
- import flash.media.Video;
- import flash.utils.ByteArray;
- import org.libspark.flartoolkit.core.FLARCode;
- import org.libspark.flartoolkit.core.param.FLARParam;
- import org.libspark.flartoolkit.core.raster.rgb.FLARRgbRaster_BitmapData;
- import org.libspark.flartoolkit.core.transmat.FLARTransMatResult;
- import org.libspark.flartoolkit.detector.FLARSingleMarkerDetector;
- import org.libspark.flartoolkit.support.pv3d.FLARBaseNode;
- import org.libspark.flartoolkit.support.pv3d.FLARCamera3D;
- import org.papervision3d.lights.PointLight3D;
- import org.papervision3d.materials.BitmapFileMaterial;
- import org.papervision3d.materials.BitmapMaterial;
- import org.papervision3d.materials.utils.MaterialsList;
- import org.papervision3d.objects.primitives.Cube;
- import org.papervision3d.objects.primitives.Sphere;
- import org.papervision3d.render.BasicRenderEngine;
- import org.papervision3d.scenes.Scene3D;
- import org.papervision3d.view.Viewport3D;
- [SWF(width="640", height="480", frameRate="30", backgroundColor="#FFFFFF")]
- public class RAumentada extends Sprite
- {
- [Embed(source="marco4.pat", mimeType="application/octet-stream")]
- private var marker:Class;
- [Embed(source="camera_para.dat", mimeType="application/octet-stream")]
- private var cam_params:Class;
- //cariables de createFLAR
- private var ar_params:FLARParam;
- private var ar_marker:FLARCode;
- //variables de createCam
- private var ar_vid:Video;
- private var ar_cam:Camera;
- //variable de createBMP
- private var ar_bmp:BitmapData;
- private var ar_raster:FLARRgbRaster_BitmapData;
- private var ar_detection:FLARSingleMarkerDetector;
- //variables de createPapervision
- private var ar_scene:Scene3D;
- private var ar_3dcam:FLARCamera3D;
- private var ar_basenode:FLARBaseNode;
- private var ar_viewport:Viewport3D;
- private var ar_renderengine:BasicRenderEngine;
- private var ar_transmat:FLARTransMatResult;
- private var ar_circle:Sphere;
- public function RAumentada()
- {
- createFLAR();
- createCam();
- createBMP();
- createPapervision();
- createSolvision();
- addEventListener(Event.ENTER_FRAME, loop);
- }
- public function createFLAR()
- {
- ar_params = new FLARParam();
- ar_marker = new FLARCode(16, 16);
- ar_params.loadARParam(new cam_params() as ByteArray);
- ar_marker.loadARPatt(new marker());
- }
- public function createCam()
- {
- ar_vid = new Video(640, 480);
- ar_cam = Camera.getCamera();
- ar_cam.setMode(640, 480, 30);
- ar_vid.attachCamera(ar_cam);
- addChild(ar_vid);
- }
- public function createBMP()
- {
- ar_bmp = new BitmapData(640,480);
- ar_bmp.draw(ar_vid);
- ar_raster = new FLARRgbRaster_BitmapData(ar_bmp);
- ar_detection = new FLARSingleMarkerDetector(ar_params, ar_marker, 80);
- }
- public function createPapervision()
- {
- ar_scene = new Scene3D();
- ar_3dcam = new FLARCamera3D(ar_params);
- ar_basenode = new FLARBaseNode();
- ar_renderengine = new BasicRenderEngine();
- ar_transmat = new FLARTransMatResult();
- ar_viewport = new Viewport3D();
- var ar_light:PointLight3D = new PointLight3D();
- ar_light.x = 1000;
- ar_light.y = 1000;
- ar_light.z = -1000;
- var ar_bitmap:BitmapFileMaterial;
- ar_bitmap = new BitmapFileMaterial("earth.jpg");
- ar_bitmap.doubleSided = true;
- ar_circle = new Sphere(ar_bitmap, 50, 80, 80);
- ar_scene.addChild(ar_basenode);
- ar_basenode.addChild(ar_circle);
- addChild(ar_viewport);
- }
- public function createSolvision()
- {
- ar_scene2 = new Scene3D();
- ar_3dcam2 = new FLARCamera3D(ar_params);
- ar_basenode2 = new FLARBaseNode();
- ar_renderengine = new BasicRenderEngine();
- ar_transmat2 = new FLARTransMatResult();
- ar_viewport2 = new Viewport3D();
- var ar_light:PointLight3D = new PointLight3D();
- ar_light.x = 1000;
- ar_light.y = 1000;
- ar_light.z = -1000;
- var ar_bitmap2:BitmapFileMaterial;
- ar_bitmap2 = new BitmapFileMaterial("sunmap.jpg");
- ar_bitmap2.doubleSided = true;
- ar_circle2 = new Sphere(ar_bitmap2, 50, 80, 80);
- ar_scene2.addChild(ar_basenode2);
- ar_basenode2.addChild(ar_circle2);
- addChild(ar_viewport2);
- }
- private function loop(e:Event):void
- {
- ar_bmp.draw(ar_vid);
- ar_circle.rotationY +=6;
- try
- {
- if(ar_detection.detectMarkerLite(ar_raster, 80) && ar_detection.getConfidence() > 0.5)
- {
- ar_detection.getTransformMatrix(ar_transmat);
- ar_basenode.setTransformMatrix(ar_transmat);
- ar_renderengine.renderScene(ar_scene, ar_3dcam, ar_viewport);
- }
- }
- catch(e:Error){}
- }
- }
- }
y lo qeu quisiera saber, seria, que tengo que cambiar para que esta clase identifique más de un marco y despliegue marco correspondiente "una esfera con la textura que le corresponde". Por favor les agradeceria su pronta respuesta.

está resuelto