flash on 2013-2-18
http://zarchives.web.fc2.com
♥0 |
Line 71 |
Modified 2013-02-18 15:59:16 |
MIT License
archived:2017-03-20 14:07:27
ActionScript3 source code
/**
* Copyright ohisama ( http://wonderfl.net/user/ohisama )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/fg2j
*/
//http://zarchives.web.fc2.com
package
{
import org.papervision3d.view.BasicView;
import org.papervision3d.objects.primitives.Sphere;
import org.papervision3d.materials.MovieMaterial;
import org.papervision3d.materials.MovieAssetMaterial;
import org.papervision3d.core.animation.clip.AnimationClip3D;
import flash.display.MovieClip;
import flash.geom.Rectangle;
import flash.events.Event;
import flash.events.MouseEvent;
import org.papervision3d.core.animation.channel.Channel3D;
import org.papervision3d.materials.utils.MaterialsList;
import org.papervision3d.core.proto.MaterialObject3D;
import org.papervision3d.materials.ColorMaterial;
import org.papervision3d.core.animation.channel.Channel3D;
import org.papervision3d.core.animation.channel.transform.MatrixChannel3D;
import org.papervision3d.core.animation.curve.Curve3D;
import org.papervision3d.core.animation.key.LinearCurveKey3D;
import org.papervision3d.core.animation.channel.transform.TranslationChannel3D;
public class test_transform extends BasicView
{
public function test_transform()
{
var material : ColorMaterial = new ColorMaterial();
var obj : test_transform_object = new test_transform_object(material, 100, 150, 24, 4);
var chTr : TranslationChannel3D = new TranslationChannel3D(null);
var cvTrX : Curve3D = new Curve3D();
var cvTrY : Curve3D = new Curve3D();
var cvTrZ : Curve3D = new Curve3D();
cvTrX.addKey(new LinearCurveKey3D(0, -50));
cvTrX.addKey(new LinearCurveKey3D(1, 50));
cvTrX.addKey(new LinearCurveKey3D(2, -50));
cvTrY.addKey(new LinearCurveKey3D(0, 0));
cvTrY.addKey(new LinearCurveKey3D(0.5, 50));
cvTrY.addKey(new LinearCurveKey3D(1, 0));
cvTrZ.addKey(new LinearCurveKey3D(0, 0));
chTr.addCurve(cvTrX);
chTr.addCurve(cvTrY);
chTr.addCurve(cvTrZ);
obj.animation.addChannel(chTr);
scene.addChild(obj);
camera.x = 0;
camera.y = 200;
camera.z = -300;
startRendering();
obj.animation.play();
}
}
}
import org.papervision3d.objects.primitives.Cone;
import org.papervision3d.core.proto.MaterialObject3D;
import org.papervision3d.core.controller.AnimationController;
import org.papervision3d.core.animation.channel.transform.TranslationChannel3D;
import org.papervision3d.objects.DisplayObject3D;
import org.papervision3d.core.render.data.RenderSessionData;
import org.papervision3d.core.math.Matrix3D;
class test_transform_object extends Cone
{
public var animation : AnimationController = new AnimationController();
public function test_transform_object(material : MaterialObject3D = null, radius : Number = 100, height : Number = 100, segmentsW : int = 8, segmentsH : Number = 6)
{
super(material, radius, height, segmentsW, segmentsH);
}
public override function project(parent : DisplayObject3D, renderSessionData : RenderSessionData) : Number
{
animation.update();
this.transform = TranslationChannel3D(animation.channels[0]).transform;
return super.project(parent, renderSessionData);
}
}