what a good use of metaphor.
2008.12.24.00:38 RE:Paint Tsunami, The Great Wave
I like this painting so much. from print to paint again
208.12.24.00:38 RE:Paint Kurt
Kurt.
It is xmas now.
How are u? how u celebrate your x'mas.
I bet u will gather will 3 or 4 close friends and stay at home. you never like crowded places. miss the time u swing your guitar while we are fixing dinner beside the kitchen.
I am as fine as always. Now I live in taiwan. The south region of tainan actually. As u wished. now i am finally really a teacher now. I teach multimedia in university now.
dont worry my health. i am so fine here. nice food. nice air. wonderful nights that i seldom go out (nearly 0%) but sit and think and create artwork. what a life, right.
still sometime chatted with HK friends. they a nice and we are even closer than we were when I was there. Love. pure love.
Man.... miss u so much.
Take Care.
pong
2008.12.22.20:30 Pixel Picasso
the pixel shift to another pixel with color & position changes
the journey is pale and landing with full color
Accumulate the result via a BitmapData()
I love bitmap. Irving knew that I will like this years ago.
Friends are amazing. Happy Holidays. my pals!
2008.12.21.05:19 VIDEO FROM A VIDEO
我後悔我的數學不夠好
I so regret that didn't learn MATH well when I was young
MATRIX TRANSFORM
2008.12.18.01:14-04:46 EDGE-The Piano Player
What if the edge is the score?
What if our shape is music?
What if the time we spend and the gesture we make is Music?
import mx.transitions.Tween;
import flash.display.BitmapData;
import flash.geom.*;
// panelEDGE : collect & display the edge from panelBMP's analysis
// panelBMP : show the BMP finally generated from the panelPIC
// panelPIC : generate the picture pattern
// butExec :
// butEdge : exec findEDGE()
stgW = 700;
stgH = 400;
edgeThickness = 0;
edgeColorUp = 0x0000FF;
edgeColorDown = 0x00FF00;
edgeAlpha = 100;
//
var BMPdata:BitmapData = new BitmapData(stgW, stgH, false, 0x000000);
panelBMP.attachBitmap(BMPdata,this.getNextHighestDepth());
//
//
function genScreen(iconMode, picTotal, choice) {
// 1 load pic to panelPIC
allPicContainer = panelPIC.createEmptyMovieClip("allPicContainer", 0);
allPicContainer._y = stgH;
t = picTotal-1;
attachID = "graphic_Icon"+choice;
allPicContainer.onEnterFrame = function() {
iconMC = allPicContainer.attachMovie(attachID, "mc"+t, t);
iconMC._x = (picTotal-t)*50;
iconMC.gotoAndStop(t+1);
t--;
if (t<0) {
delete this.onEnterFrame;
}
//
allPicContainer._width = stgW;
allPicContainer._yscale = allPicContainer._xscale;
// 2 map the visual to the panelBMP
if (iconMode == 0) {
BMPdata.fillRect(new Rectangle(0, 0, stgW, stgH),0x000000);
}
BMPdata.draw(panelPIC);
};
}
function findEdge() {
pianoUpArray = new Array();
pianoDownArray = new Array();
// compare top pixel profile line
for (i=0; i<stgW; i++) {
for (j=0; j<stgH; j++) {
var pixelValue = BMPdata.getPixel(i, j);
if (pixelValue != 0) {
pianoUpArray.push([i, j, pixelValue]);
break;
}
}
}
// compare down pixel profile line
for (i=0; i<stgW; i++) {
for (j=stgH-1; j>=0; j--) {
var pixelValue = BMPdata.getPixel(i, j);
if (pixelValue != 0) {
pianoDownArray.push([i, j, pixelValue]);
break;
}
}
}
// draw the edge
panelEDGE.clear();
//
panelEDGE.lineStyle(edgeThickness,edgeColorUp,edgeAlpha);
panelEDGE.moveTo(pianoUpArray[0][0],pianoUpArray[0][1]);
//
for (var e = 1; e<pianoUpArray.length; e++) {
panelEDGE.lineTo(pianoUpArray[e][0],pianoUpArray[e][1]);
}
//
//
panelEDGE.lineStyle(edgeThickness,edgeColorDown,edgeAlpha);
panelEDGE.moveTo(pianoUpArray[0][0],pianoUpArray[0][1]);
for (var e = 0; e<pianoDownArray.length; e++) {
panelEDGE.lineTo(pianoDownArray[e][0],pianoDownArray[e][1]);
}
//
var panelEDGE_twnAlpha:Tween = new Tween(panelEDGE, "_alpha", mx.transitions.easing.Strong.easeOut, 0, 100, 1, true);
var panelPIC_twnAlpha:Tween = new Tween(panelBMP, "_alpha", mx.transitions.easing.Strong.easeOut, 100, 50, 1, true);
}
function playPiano() {
interval = 25;
walk = 0;
soundFile = "piano_lines";
//
piano0.stop();
piano1.stop();
piano0 = new Sound();
piano1 = new Sound();
//
piano0.attachSound(soundFile);
piano1.attachSound(soundFile);
//
playHead.onEnterFrame = function() {
step = walk%stgW;
this._x = step;
//
if (this.hitTest(panelEDGE) && step%interval == 0) {
// UP
for (u=0; u<pianoUpArray.length; u++) {
var activeNoteX = pianoUpArray[u][0];
var activeNoteY = int(pianoUpArray[u][1]/stgH*80);
if (step == activeNoteX) {
piano0.setVolume(random(71)+30);
piano0.start(activeNoteY,1);
trace("activeNoteY0 : "+activeNoteY);
}
}
// DOWN
for (u=0; u<pianoDownArray.length; u++) {
var activeNoteX = pianoDownArray[u][0];
var activeNoteY = int(pianoDownArray[u][1]/stgH*80);
if (step == activeNoteX) {
piano1.setVolume(random(71)+30);
piano1.start(activeNoteY,1);
trace("activeNoteY1 : "+activeNoteY);
}
}
piano0.setVolume(piano0.getVolume()-1);
piano1.setVolume(piano1.getVolume()-1);
} else {
if (piano0.getVolume()>0) {
piano0.setVolume(piano0.getVolume()-2);
}
if (piano1.getVolume()>0) {
piano1.setVolume(piano1.getVolume()-2);
}
}
//
walk++;
};
}
function resetApp() {
allPicContainer.removeMovieClip();
//
BMPdata.fillRect(new Rectangle(0, 0, stgW, stgH),0x000000);
panelBMP._alpha = 100;
panelEDGE.clear();
//
delete playHead.onEnterFrame;
playHead._x = -10;
//
piano0.stop();
piano1.stop();
}
butExec.onPress = function() {
genScreen(random(2),random(26)+5,random(2));
};
butEdge.onPress = function() {
findEdge();
};
butSing.onPress = function() {
playPiano();
};
butReset.onPress = function() {
resetApp();
};
2008.12.17.01:30 school intro
blossom is the word. As the students said.
Build by:
AS2-the active icons
motion-the extrude
DIGITALISM-music
2008.12.16.01:45-04:52 SeaShell Piano
I really have such great students. Mutual inspired. and all being inspired by the nature.
I love my life.
2008.12.16.04:46 INSIDE MY HEAD
so grainy.... the distortion process by youtube is just like the making of Korean's KimChi
2008.12.14.03:29 SeaWaveStarDust
I need to grip it tight. this night is so special. that spark of thought and the following processes... so efficient, so accurate
2008.12.13.07:00 LEARNING AT UPPER DECK
putting some of the result together
try to use them to speak a story.
the weakest part of mine, is to let things justify and have a reason.
2008.12.13.06:26 IN TAINAN HOME
testing AS2/3 video output possibilities in FLASH CS3. having fun with tween class started to shake hand with BITMAPDATA. not a bad experience so far.
2008.12.08 FALLING HD
trying hard but not hard enough to learn AS3.0 and thousands of softwares/techs/skills include management skill/ leadership.
fucking hell. this is really discouraging.
what is the message behind!? I dont work hard enough?
what is it?!
I PLAYED GUITAR 20 YEARS almost. fucking hell.
2008.12.08 THE FIRST TOUCH TABLE
hope I can really dig things out from this.
My life is used for experiencing but not arguing with life.
