変換したpbjの使用テスト
pbjをAS3に変換する
http://wonderfl.net/code/14f2dc3b7971c0a003885f1467eeaa194ad4285d
のテスト兼使い道的な投稿。
素でpbjを使うよりは少しは使い易いと思います。
*
♥0 |
Line 112 |
Modified 2010-01-02 23:23:36 |
MIT License
archived:2017-03-09 21:26:47
ActionScript3 source code
/**
* Copyright zahir ( http://wonderfl.net/user/zahir )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/8pkl
*/
/*
pbjをAS3に変換する
http://wonderfl.net/code/14f2dc3b7971c0a003885f1467eeaa194ad4285d
のテスト兼使い道的な投稿。
素でpbjを使うよりは少しは使い易いと思います。
* */
package{
import flash.display.Graphics;
import flash.display.Sprite;
public class SahderTest extends Sprite{
private var tpg:ThreePointGradient;
private var p1:Array = [50,50];
private var p2:Array = [300,50];
private var p3:Array = [250, 300];
public function SahderTest(){
tpg = new ThreePointGradient();
tpg.point1 = p1;
tpg.color1 = [1,0,1,1];
tpg.point2 = p2;
tpg.color2 = [1,1,0,1];
tpg.point3 = p3;
tpg.color3 = [0,1,1,1];
var g:Graphics = this.graphics;
g.beginShaderFill( tpg );
g.moveTo(p1[0], p1[1]);
g.lineTo(p2[0], p2[1]);
g.lineTo(p3[0], p3[1]);
g.lineTo(p1[0], p1[1]);
g.endFill();
}
}
}
import flash.display.Shader;
import flash.utils.ByteArray;
import mx.utils.Base64Decoder;
class ThreePointGradient extends Shader{
static private var code:ByteArray;
// static initializer
{
// ↓なんか警告出るけど実行はできるからいいかな?
static var dec:Base64Decoder = new Base64Decoder() ;
dec.decode(
"pQEAAACkEgBUaHJlZVBvaW50R3JhZGllbnSgDG5hbWVzcGFjZQBQZXRyaSBMZXNraW5lbjo6RXhh" +
"bXBsZQCgDHZlbmRvcgBQZXRyaSBMZXNraW5lbgCgCHZlcnNpb24AAQCgDGRlc2NyaXB0aW9uAENy" +
"ZWF0ZXMgYSBncmFkaWVudCBmaWxsIHVzaW5nIHRocmVlIHNwZWNpZmllZCBwb2ludHMgYW5kIGNv" +
"bG9ycy4AoQECAAAMX091dENvb3JkAKEBAgAAA3BvaW50MQCiAm1pblZhbHVlAAAAAAAAAAAAogJt" +
"YXhWYWx1ZQBFegAARXoAAKICZGVmYXVsdFZhbHVlAAAAAAAAAAAAoQEEAQAPY29sb3IxAKIEZGVm" +
"YXVsdFZhbHVlAD+AAAAAAAAAAAAAAD+AAAChAQICAAxwb2ludDIAogJtaW5WYWx1ZQAAAAAAAAAA" +
"AKICbWF4VmFsdWUARXoAAEV6AACiAmRlZmF1bHRWYWx1ZQBD+gAAQ/oAAKEBBAMAD2NvbG9yMgCi" +
"BGRlZmF1bHRWYWx1ZQAAAAAAP4AAAAAAAAA/gAAAoQECAgADcG9pbnQzAKICbWluVmFsdWUAAAAA" +
"AAAAAACiAm1heFZhbHVlAEV6AABFegAAogJkZWZhdWx0VmFsdWUAAAAAAEP6AAChAQQEAA9jb2xv" +
"cjMAogRkZWZhdWx0VmFsdWUAAAAAAAAAAAA/gAAAP4AAAKECBAUAD2RzdAAdBgDBAgAQAAIGAMEA" +
"ALAAHQYAMQYAEAAdBgDBAgCwAAIGAMEAALAAHQcAwQYAEAAdCACABwBAADIGAIAAAAAAAgYAgAYA" +
"wAAdCABABgAAADIGAIAAAAAAAgYAgAcAAAAdCAAgBgAAAB0IABAGAIAAHQYAgAYAgAADBgCABwBA" +
"AB0GAEAHAAAAAwYAQAYAwAAdBwAgBgAAAAIHACAGAEAAHQoA8wcAqgAECQAECgAAAAMJAAQIAAAA" +
"HQgABAkAAAAdBgDBAAAQAAIGAMEAALAAHQcAMQYAEAAiBwA0CAAAAB0GAMEHALAAHQcAMQYAEAAy" +
"CQCAAAAAADIJAEA/gAAAHQoAgAcAgAAKCgCACQAAAB0JACAKAAAAHQoAgAcAwAAKCgCACQAAAB0J" +
"ABAKAAAAHQoAIAkAgAAJCgAgCQBAAB0KAIAKAIAAHQoAIAkAwAAJCgAgCQBAAB0KAEAKAIAAHQYA" +
"wQkAsAAdCQCABgAAAB0JAEAGAAAAHQkAIAYAAAAdCQAQBgAAADIKAPA/gAAAAgoA8wkAGwAdCwDz" +
"AQAbAAMLAPMKABsAHQwA8wMAGwADDADzCQAbAAELAPMMABsAHQkAgAYAQAAdCQBABgBAAB0JACAG" +
"AEAAHQkAEAYAQAAyCgDwP4AAAAIKAPMJABsAHQwA8wsAGwADDADzCgAbAB0NAPMEABsAAw0A8wkA" +
"GwABDADzDQAbAB0FAPMMABsA" );
code = dec.toByteArray();
dec = null;
}
public function ThreePointGradient(){
super( code );
}
public function get name():String{
return data[ "name" ];
}
public function get nameSpace():String{
return data[ "nameSpace" ];
}
public function get vendor():String{
return data[ "vendor" ];
}
public function get version():String{
return data[ "version" ];
}
public function get description():String{
return data[ "description" ];
}
public function get color2():Array{
return data[ "color2" ].value;
}
public function set color2( value:Array ):void{
data[ "color2" ].value = value;
}
public function get color1():Array{
return data[ "color1" ].value;
}
public function set color1( value:Array ):void{
data[ "color1" ].value = value;
}
public function get color3():Array{
return data[ "color3" ].value;
}
public function set color3( value:Array ):void{
data[ "color3" ].value = value;
}
public function get point3():Array{
return data[ "point3" ].value;
}
public function set point3( value:Array ):void{
data[ "point3" ].value = value;
}
public function get point1():Array{
return data[ "point1" ].value;
}
public function set point1( value:Array ):void{
data[ "point1" ].value = value;
}
public function get point2():Array{
return data[ "point2" ].value;
}
public function set point2( value:Array ):void{
data[ "point2" ].value = value;
}
}