Monday, February 16, 2009

Sun SPOT Introductory Training

http://www.sunstudentcourses.com/course/view.php?id=12


This course is intended to be used by students wanting to learn how to develop applications for Sun Small Programmable Object Technology (SPOTs).

Solaris

http://www.opensolaris.com/

This is website that people can download the opensolaris..


http://www.opensolaris.com/get/index.jsp#mirrors


There is solaris crash course available

Sunday, February 15, 2009

edit

import javafx.ui.*;

Frame {
title: "Hello World JavaFX"
width: 200
height: 200

content: Label {
text: "Hello World JavaFX"
}

visible: true
}

Open /javafxintro/exercises/exercise3/HelloWorld.fx using JavaFXPad > File > Open

Open /javafxintro/exercises/exercise3/HelloWorld.fx using JavaFXPad > File > Open

/javafxintro/javafxpad.bat

/javafxintro/javafxpad.bat

graphical transformation

* Introduction: This is a introductory program. This illustrates how a liner gradient of colors can be achieved. Modify the code for different colors and different stops.
* Shapes: This illustrated how to create basic shapes such as circles, rectangles and so on with different fill colors, strokes and so on. Modify the code for different values.
* Painting: This is similar to the example above with different fill colors to experiment with.
* Transformations: This illustrates how to use the transform function. You can do Translate, Rotate, Scale or Skew.
* Groups: This illustrated how to have multiple Graphical objects by using the Group keyword. You could add more Graphical components here.
* Swing Components: This illustrates Swing components by overlaying text fields and so on to the previous example.
* Images: This program illustrates how the same transformations used in the earlier example can be used on a graphical object.
* Transparency: This program illustrates how to use opacity which takes a value from 0 to 1, 0 being transparent and 1 being opaque. By default, objects are opaque.
* Filter effects: This program illustrates the usage of the filters such as Shadow, Blur, Noise and ShapeBurst.
* Input events: This program illustrates how to capture input events and details associated with the event such as onMouseClicked and so on.
* Areas: This program illustrates how to Add, Subtract, Intersect and XOR areas.
* Clipping: This program illustrates how you can clip 2D objects using other objects.
* User-defined Graphics Objects: This program illustrates how you can cretate user-defined objects.
* Animation: The final program in the tutorial illustrates how to use dur in conjunction with transform to animate objects. You could try to combine some animations such as animating both horizontally and vertically.

Java FX



http://java.sun.com/javase/technologies/desktop/javawebstart/index.jsp


Verify Java WebStart is installed on my system.


Make sure that Java Web Start is installed on the client system.

import javafx.ui.*;
import javafx.ui.canvas.*;
import javafx.ui.filter.*;

Group {

var x = 0
var y = 0
var alpha = 1

transform: bind translate(x, y)
opacity: bind alpha

onMouseDragged: operation(e) {
// updating x and y will move the group
// since a translation transform is bound to them
x += e.localDragTranslation.x;
y += e.localDragTranslation.y;
}

onMouseClicked: operation(e) {
// updating alpha will fade the group
// since the opacity of the group is bound to it
if (alpha == 1) {
alpha = [0, 1] dur 1000 motion EASEBOTH;
}
}

toolTipText: "Click to fade, or drag to move rectangle"

content:
[Rect {
cursor: HAND
selectable: true
x: 10
y: 10
width: 385
height: 220
fill: LinearGradient {
x1: 0
y1: 0
x2: 1
y2: 0
stops:
[Stop {offset: 0, color: gray},
Stop {offset: .5, color: new Color(.8, .8, .8, 1)},
Stop {offset: 1, color: gray}]
}
stroke: black
strokeWidth: 1
},
Group {

function filt(color:Color, bump:Number, intensity:Number, burstFactor:Number) =
[ShapeBurst {factor: burstFactor},
LightFilter {
highlight: 3
viewDistance: 300
diffuseColor: color
bumpSoftness: bump
light: AmbientLight {intensity: intensity}
}];

content: [
Group {
filter: ShadowFilter {x: 10, y: -9, distance: 10 shadowColor: black, opacity: 0.7 }

content: [
Rect {height: 150, width: 210, transform: scale(2, 2)},
Path {
d: [
MoveTo {
x: 50.0
y: 90.0
absolute: true
},
CurveTo {
x1: 0.0
y1: 90.0
x2: 0.0
y2: 30.0
x3: 50.0
y3: 30.0
smooth: false
absolute: true
},
LineTo {
x: 150.0
y: 30.0
absolute: true
},
CurveTo {
x1: 200.0
y1: 30.0
x2: 200.0
y2: 90.0
x3: 150.0
y3: 90.0
smooth: false
absolute: true
},
ClosePath {},
]
stroke: rgba(0xD9, 0x00, 0x00, 0xff)
strokeWidth: 10.0
transform: scale(2, 2)
filter: valueof filt(red:Color, 6, .5, 4)
},
Path {
d: [
MoveTo {
x: 60.0
y: 80.0
absolute: true
},
CurveTo {
x1: 30.0
y1: 80.0
x2: 30.0
y2: 40.0
x3: 60.0
y3: 40.0
smooth: false
absolute: true
},
LineTo {
x: 140.0
y: 40.0
absolute: true
},
CurveTo {
x1: 170.0
y1: 40.0
x2: 170.0
y2: 80.0
x3: 140.0
y3: 80.0
smooth: false
absolute: true
},
ClosePath {},
]
fill: rgba(0xD9, 0x00, 0x00, 0xff)
transform: scale(2, 2)
filter: valueof filt(red:Color, 5, .5, 7)
},
Group {
content: [
Text {
verticalAlignment: BASELINE
content: 'JavaFX'
font: Font {faceName: 'Verdana', style: BOLD, size: 25.0}
fill: white
x: 50.0
y: 69.0
transform: scale(2, 2)
filter: [ShadowFilter {x: 5, y: -5, distance: 3, shadowColor:black opacity: 0.8}]

}]
}]
}]
}]
}

http://java.sun.com/javase/technologies/desktop/javawebstart/index.jsp

http://java.sun.com/javase/technologies/desktop/javawebstart/index.jsp

Java FX Resource

Resources

* http://openjfx.dev.java.net
* http://www.sun.com/software/javafx/index.jsp
* http://openjfx.dev.java.net/JavaFX_Programming_Language.html
* http://jfx.wikia.com/wiki/Main_Page
* http://java.sun.com/products/javawebstart
* http://download.java.net/general/openjfx/demos/tutorial.jnlp
* http://blogs.sun.com/chrisoliver/resource/swing.html
* http://evc-cit.info/jfx/makeapi/api/index.html
* http://blogs.sun.com/chrisoliver/entry/more_f3_demos

deployment

배치

Java FX script

The purpose of JavaFX Script is to make GUI programming easier in general
that leverages Rapid Prototyping of a dynamic language and the type and code

safelty of static compilation

Support: Swing

static typeing for good IDE support
compile-time error reporting

type inference, declararive syntax, and automatic data -binding with full support

for 2d graphics

1. 2d graphics
2. standard swing component

3. declararive animation

4. import java classes
5. new java objects = methods
6. implement java interfaces


GOAL: intro to java FX script language .
JavaFXenvironment first with JavaFXPad - lightwieght tool

-create graphic elements

basic of using java 2D in javaFX script using java2D Tutorial


creating 2D objects.

1.Rectangle
2.circle


3. adding 2D andm animatin effects


#.Swing applicatoin
. Java FX Application using NetBean

Saturday, February 14, 2009

Ruby on Rail project2 complete.

It was so tough things to do Ruby on Rail from scratch but it could be done with only reading the learning material from internet.

Ruby on Rail is very easy to adding the additional filed to the existing web blog by netbean IDE. Netbean IDE can easily create the with windows icon manipulation.

Tip for the Rail console.

This is the command to activated the Rail console without this command line
Rail won't work. I spent lots of time to learn this things...


Rails Console


ActiveRecord.methods.size


ActiveRecord.methods
ActiveRecord::Base.methods.size

ActiveRecord::Base.methods


Message.column_names






Add another field to a table through migration

Right click helloworld project node ans selecte

Generate

Rails Generator>

Generate: migration
Arguments: Topic : string

Migrate Database -> To current Version


Services
helloword_development
Tables
messages
***is here


Modify the controller
value to the name attribute of the @hello

@hello.name = "Sang Shin"

@hello.topic = "Ruby"


Modify the viewer



My topic is <%= @hello.topic %>


# Observe that the Rails Generator dialog box appears.
# Select migration from the Generate drop-down menu.
# For the Arguments field, enter AddNameToMessage name:string. (Figure-2.12

below)
# Click OK. This will create a new migration file.



have to change the class name

AddNameToMessage2 topic:string



Migrate Database->to Current Version

Friday, February 13, 2009

part 1

As of NetBeans 5.0, the IDE's GUI Builder has been revamped to make it more powerful and intuitive, liberating users to build professional-looking GUIs without an intimate understanding of layout managers. NetBeans' new GUI Builder eliminates the difficulties of building GUIs, enabling you to lay out your forms by simply placing components where you want them.

You will learn basic concepts of GUI building using NetBeans GUI Builder. You can use either NetBeans IDE 6.0 or 5.5.1. You will do two exercises. The first exercise guides you through the process of creating the graphical user interface (GUI), which includes creating GUI layout container, adding, resizing, and aligning components. In the second exercise, you will learn how to associate an event handler to a component.

Real World Technologies -- NetBeans GUI Builder, JRuby, JavaFX, and JavaME - Earn a Certificate!

Real World Technologies -- NetBeans GUI Builder, JRuby, JavaFX, and JavaME - Earn a Certificate!

Sun student course

http://www.sunstudentcourses.com/course

#
Introduction to Sun SPOTs
This course is intended to be used by students wanting to learn how to develop applications for Sun Small Programmable Object Technology (SPOTs).
#
Real World Technologies: NetBeans GUI Builder, JRuby, JavaFX, and JavaME

* Teacher: Sang Shin
* Teacher: Doris Chen

This is an introduction level course that leads you to the basics of JavaFX, NetBeans GUI, JRuby, and JavaME programming. When you finish this course you will earn a certificate.

Ruby on Rail with Ken C

My name is ken C, I am a programmer in brisbane.

I have learned the computer programming language and I found that Ruby on Rail is one of the very fast creating way to make the web product.