the world is a pixel
Posts tagged script
Creating a lot of thumbnails with Shell script
Sep 25th
This script create a thumbnail with width 100 of each png file in the actual directory.
#!/bin/sh for i in *.png do echo "convert -thumbnail 100 $i $i" convert -thumbnail 100 $i $i done
Java, showing script engines
Sep 10th
A simple code to show the script engines installed in your system.
As it uses the JSR-223 you need at least java 6.
import javax.script.ScriptEngineManager; import javax.script.ScriptEngineFactory; import java.util.List; public class ListEngines { public static void main(String[] args){ ScriptEngineManager manager = new ScriptEngineManager(); List <ScriptEngineFactory> engines = manager.getEngineFactories(); for(ScriptEngineFactory engine: engines){ String name = engine.getEngineName(); String lang = engine.getLanguageName(); String ver = engine.getLanguageVersion(); System.out.println(name+" "+lang+" "+ver); } } }
$ java -version
java version “1.6.0_0″
OpenJDK Runtime Environment (build 1.6.0_0-b11)
OpenJDK Client VM (build 1.6.0_0-b11, mixed mode, sharing)
$ javac ListEngines.java
$ java ListEngines
Mozilla Rhino ECMAScript 1.6
For now I just have Rhino ECMAScript (JavaScript) engine accessible that comes with Java 6. I’m trying now to call Jython and JRuby code.
Script to Installing JavaFX Compiler
Jul 16th
Right in this moment you can choose between three options to develop JavaFX:
- Use the old version of JavaFX, interpreted. Not recommended.
- Use the JavaFX Milestone 3. Little bit old but more stable.
- Use the JavaFX Continuous Build. Is more dangerous but give us fresh builds. :)
I did this little script to download the last version of JavaFX continuos build and install it for you.
#!/bin/sh envfile=$HOME/.bash_profile #download and unpatch the last build of JavaFx mkdir jfx cd jfx wget http://openjfx.java.sun.com/hudson/job/openjfx-compiler/lastBuild/artifact/openjfx-compiler/dist//*zip*/dist.zip unzip dist.zip rm dist.zip #set files at bin folder as executable chmod +x dist/bin/* #add those executables to the path echo "PATH=\$PATH:`pwd`/dist/bin" >> $envfile
Save this script as install_jfx.sh and execute it. Probably you want to execute it at you home directory. If you want to install JavaFX to root change envfile for /root/.bash_profile, if you want to install to all users change for /etc/profile. I tested this script successfully on my Ubuntu 8.04.
After that open a new terminal and try to see if javafx, javafxc and javafxdoc are available. You can test your enviroment with this simple program.
import javafx.ui.*; import java.lang.*; Frame { visible: true content: FlowPanel { content: Button { var n = 0 text: bind Integer.toString(n) action: function() { n++; } } } }
Save it as Counter.fx, compile with javafxc Counter.fx and so execute it with javafx Counter.fx.
To know more, take a look into the preliminary JavaFX API or in the article Using JavaFX GUI Toolkit.
Terminal with colors in OpenSolaris
May 7th

As the earlies versions of OpenSolaris, my terminal is without colors. That’s a little annoying. As the default user uses Bash you can configure your Bash options in the file ~/.bashrc. Insert in the last lines of your .bashrc file:
alias ls=’ls –color=auto’
Save, close and open your terminal (or just type source ~/.bashrc).

JavaFX: Color picker
Feb 19th
An simple color picker that can be also used as a gadget.
import javafx.ui.*;
import javafx.ui.canvas.*;
var colors = [red:Color, orange:Color, yellow:Color, green:Color,
cyan:Color,blue:Color, magenta:Color, gray:Color];
var chosenColor: Paint;
chosenColor = black:Color;
var x = 120;
var y = 70;
Canvas{
content: Group{
transform: bind translate(x,y)
content: [Star{
points: sizeof colors
rin: 30
rout: 50
fill: bind chosenColor
onMouseDragged: operation(e) {
x += e.localDragTranslation.x;
y += e.localDragTranslation.y;
}
},
foreach (i in [1..sizeof colors]) Circle {
var: self
transform: [rotate(i*360/sizeof colors,0,0), translate(50,0)]
radius: 10
fill: colors[i%sizeof colors]
onMouseClicked: operation (e){
chosenColor = self.fill;
}
}]
}
}
Draggable and Growable Ball in JavaFX
Feb 16th
Two simple JavaFX code handling onMouseDragged event.
import javafx.ui.*;
import javafx.ui.canvas.*;
Canvas {
content: Circle {
var x = 50
var y = 50
transform: bind translate(x, y)
radius: 30
fill: red
onMouseDragged: operation(e) {
x += e.localDragTranslation.x;
y += e.localDragTranslation.y;
}
}
}
import javafx.ui.*;
import javafx.ui.canvas.*;
Canvas {
content: Circle {
var x = 50
var y = 50
var radius = 30
transform: bind translate(x, y)
radius: bind radius
fill: red
onMouseDragged: operation(e) {
if (e.button == 1){
x += e.localDragTranslation.x;
y += e.localDragTranslation.y;
}
if (e.button == 3) {
radius += e.localDragTranslation.x;
}
}
}
}
import javafx.ui.*;
import javafx.ui.canvas.*;
Canvas {
content: [
Rect {x: 50, y: 50, width: 50, height: 50, fill: orange },
Circle {
var x = 50
var y = 50
var radius = 30
var color = red:Color
transform: bind translate(x, y)
radius: bind radius
fill: bind color
onMouseDragged: operation(e) {
if (e.button == 1){
x += e.localDragTranslation.x;
y += e.localDragTranslation.y;
}
if (e.button == 3) {
radius += e.localDragTranslation.x;
}
}
onMousePressed: operation(e){
color = Color {blue: 0.0, green: 0.0, red: 1.0, opacity: 0.5};
}
onMouseReleased: operation(e){
color = red:Color;
}
}]
}
You can test this examples with thhe JavaFX Pad or using Netbeans with the JavaFX Plugin.












