Hi,
I am using this following code to display images using xml.Everything is working fine for me but i have to add background image or border to the displayed image using function [COLOR=#FF6600]BitmapFileMaterial.[/COLOR]
If any body knows please help me or guide me with some other way like using BitmapData or Bitmap Class but same functionality.
Hope i got the answer here.
Thanks,
Amar
/*
Modified by Min Thu
http://www.flashmo.com
AS3 References and Credits
http://blog.papervision3d.org/
http://theflashblog.com/?p=306
http://www.gotoandlearn.com/
http://www.onerutter.com/
http://labs.blitzagency.com/
http://vilebody.wordpress.com/2007/11/29/3d-papervision-plane-events/
/
import org.papervision3d.scenes.;
import flash.display.Shape;
import org.papervision3d.cameras.;
import org.papervision3d.objects.;
import org.papervision3d.materials.*;
import flash.display.Sprite;
import flash.events.MouseEvent;
import flash.display.Graphics;
var container:Sprite = new Sprite();
container.x = stage.stageWidth * 0.5;
container.y = stage.stageHeight * 0.5;
addChild(container);
var scene:Scene3D = new MovieScene3D(container);
var cam:Camera3D = new Camera3D();
cam.zoom = 4.5;
tn_title.text = “”;
tn_desc.text = “”;
tn_url.text = “”;
var p_dict:Dictionary=new Dictionary();
var pc:Plane = new Plane();
pc.visible = false;
cam.target = pc;
var numOfRotations:Number = 2;
var yPos:Number = 0;
var angle:Number = 0;
var filename_list = new Array();
var url_list = new Array();
var url_target_list:Array = new Array();
var title_list = new Array();
var description_list = new Array();
var background_list = new Array();
var folder:String = “thumbnails/”;
var i:Number;
var total:Number;
var flashmo_xml:XML = new XML();
var loader:URLLoader = new URLLoader();
loader.load(new URLRequest(“thumbnail_list.xml”));
loader.addEventListener(Event.COMPLETE, create_thumbnail);
function create_thumbnail(e:Event):void
{
flashmo_xml = XML(e.target.data);
total = flashmo_xml.record.length();
var anglePer:Number = ((Math.PI*2) * numOfRotations) / total;
for( i = 0; i < total; i++ )
{
url_list.push( flashmo_xml.record*.link.toString() );
url_target_list.push( "_blank" );
title_list.push( flashmo_xml.record*.title.toString() );
description_list.push( flashmo_xml.record*.description.toString() );
background_list.push( flashmo_xml.record*.background.toString() );
[COLOR=#FF6600] ////// how to add border to this bitmap return data[/COLOR]
[COLOR=#FF6600] var bfm:BitmapFileMaterial = new BitmapFileMaterial(
folder + flashmo_xml.record*.image.toString());
bfm.oneSide = false;
bfm.smooth = true;[/COLOR]
var p:Plane = new Plane(bfm, 140, 105, 2, 2);
scene.addChild(p);
var p_container:Sprite = p.container;
p_container.name = "flashmo_" + i;
p_dict[p_container] = p;
p_container.buttonMode = true;
p_container.addEventListener(MouseEvent.ROLL_OVER,p_rollover);
p_container.addEventListener( MouseEvent.ROLL_OUT, p_rollout );
p_container.addEventListener( MouseEvent.CLICK, p_click );
p.x = Math.cos(i * anglePer) * 400;
p.z = Math.sin(i * anglePer) * 400;
p.y = yPos += 40;
p.rotationY = (-i*anglePer) * (180/Math.PI) + 270;
}
}
var sp2:Sprite = new Sprite();
function p_rollover(me:MouseEvent)
{
var sp:Sprite = me.target as Sprite;
sp.alpha = 0.4;
var s_no:Number = parseInt(sp.name.slice(8,10));
tn_title.text = title_list[s_no];
tn_desc.text = description_list[s_no];
tn_url.text = url_list[s_no];
}
function p_rollout(me:MouseEvent)
{
var sp:Sprite = me.target as Sprite;
sp.alpha = 1;
tn_title.text = “”;
tn_desc.text = “”;
tn_url.text = “”;
}
function p_click(me:MouseEvent)
{
var sp:Sprite = me.target as Sprite;
var s_no:Number = parseInt(sp.name.slice(8,10));
navigateToURL(new URLRequest(url_list[s_no]), url_target_list[s_no]);
}
addEventListener(Event.ENTER_FRAME, render);
function render(e:Event):void
{
var dist:Number = ((stage.mouseY) - stage.stageHeight * 0.5) * 0.00001;
var dist2:Number = ((stage.mouseX) - stage.stageWidth * 0.5) * 0.000125;
angle += dist2;
cam.x = Math.cos(angle) * 760;
cam.z = Math.sin(angle) * 760;
cam.y += dist;
if(cam.y < 100) cam.y = 100;
if(cam.y > 780) cam.y = 780;
pc.y = cam.y;
scene.renderCamera(cam);
}