0
Rebol VID中的javaFx明星代码的等效物(需要AGG用于我猜测的相同效果)? http://www.javafxgame.com/javafx-wish-tree/在JavaFX中绘制Rebol VID中的明星
/*
* Star.fx
*/
package wishtree;
import java.text.SimpleDateFormat;
import java.util.Date;
import javafx.scene.effect.DropShadow;
import javafx.scene.paint.*;
import javafx.scene.shape.Polygon;
import java.lang.Math.*;
/**
* @author Henry Zhang http://www.javafxgame.com
*/
public class Star extends Polygon {
public var name: String = "your name";
public var wish: String = "I want to ...";
public var time: String = getDateString();
public var email: String = "" ;
public var whichColor : Integer ;
def r1 : Double = 15;
def r2 : Double = r1/1.6;
var r = [r1, r2];
var strokeColor =
[ Color.PINK, Color.YELLOW, Color.GOLDENROD, Color.CYAN,
Color.PURPLE, Color.BLUEVIOLET, Color.CORAL, Color.CRIMSON ];
var fillColor =
[ Color.GOLD, Color.BLUE, Color.RED, Color.DARKSLATEBLUE,
Color.DARKORANGE, Color.MAGENTA, Color.BROWN, Color.CHOCOLATE ];
init {
// compute the coordinates of the star polygon
points = for (i in [0..9]) [
r[i mod 2] * cos(toRadians(i*36)),
r[i mod 2] * sin(toRadians(i*36))
];
blocksMouse = true;
strokeWidth = 1;
whichColor = random() * sizeof(strokeColor) as Integer;
effect = DropShadow { color: Color.WHITE };
changeStatus();
}
function getDateString() : String {
var formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
var date = new Date();
return formatter.format(date);
}
public function changeStatus() {
stroke = strokeColor[whichColor];
fill = LinearGradient {
startX: 0 startY: 0 endX: 0 endY: 1.0
proportional: true
stops: [
Stop { offset: 0.1 color: Color.WHITE }
Stop { offset: 1.0 color: fillColor[whichColor]}
]
};
}
}
但特殊的发光效果呢? – 2009-08-19 12:31:57
effect = DropShadow {color:Color.WHITE}; – 2009-08-19 12:33:16