📄 compositematerial.as
字号:
package org.papervision3d.materials{ import flash.display.Graphics; import flash.geom.Matrix; import org.papervision3d.core.draw.IFaceDrawer; import org.papervision3d.core.geom.Face3D; import org.papervision3d.core.geom.Vertex2D; import org.papervision3d.core.proto.MaterialObject3D; import org.papervision3d.objects.DisplayObject3D; public class CompositeMaterial extends MaterialObject3D implements IFaceDrawer { private var materials:Array; public function CompositeMaterial() { init(); } private function init():void { materials = new Array(); } public function addMaterial(material:MaterialObject3D):void { materials.push(material); } public function removeMaterial(material:MaterialObject3D):void { materials.splice(materials.indexOf(material),1); } public function removeAllMaterials(material:MaterialObject3D):void { materials = new Array(); } override public function drawFace3D(instance:DisplayObject3D, face3D:Face3D, graphics:Graphics, v0:Vertex2D, v1:Vertex2D, v2:Vertex2D):int { var num:int = 0; for each(var n:MaterialObject3D in materials){ num += n.drawFace3D(instance, face3D, graphics, v0, v1, v2); } return num; } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -