Screenshot JavaFX in the browser
Lately Carl Dea and I have started a new project to bring JavaFX 8 into the browser. Today I want to introduce the first two proof-of-concepts that we created to see if this idea is feasible at all.
After seven years in the Czech Republic, we decided that it is time for a change and to move on. It was a great time during which I met a lot of fantastic people and experienced many wonderful and unforgettable moments. In the last month we moved to Freiburg, a beautiful city in the south-west of Germany.
Yesterday was the first day in my new job at Canoo. If you are interested in JavaFX, you have probably already heard about them. Canoo is a company that is focused on UI development with all kinds of technologies. They have been part of the JavaFX community from day one. And yes, by that I mean, Canoo is one of the few companies that has actually used JavaFX Script!
There are many reasons why I am looking forward to the new gig. It allows me to:
- work with JavaFX again and “rejoin” the JavaFX community.
- focus on all things UI: development, UX, design.
- spend more time on blogging and speaking.
- contribute to exciting Open Source initiatives, e.g. OpenDolphin, DataFX, the JavaFX ports etc.
- and last but not least I will work with great people (e.g. Dierk König, Andres Almiray, Hendrik Ebbers, and others) to create beautiful and fun-to-use front ends.
This is the first tutorial explaining the basics of javafx-ik, a library for inverse kinematics with JavaFX. The sources of the library can be downloaded from GitHub.
Last week I had to stay sick at home for a couple of days. On the positive side, I finally found some time to look into my old library for inverse kinematics. I wrote it a couple of years ago for JavaFX 1.x. And I decided to port it to JavaFX 2. The initial version is ready for download.
At this year’s JavaOne, I did a session “JavaFX for Business Application Developers” and a BOF “Live-Coding BOF: Writing a Game with JavaFX”. This post provides the material.
In retrospect it was probably not a good idea to give the AnimationTimer its name, because it can be used for much more than just animation: measuring the fps-rate, collision detection, calculating the steps of a simulation, the main loop of a game etc. In fact, most of the time I saw AnimationTimer in action was not related to animation at all. Nevertheless there are cases when you want to consider using an AnimationTimer for your animation. This post will explain the class and show an example where AnimationTimer is used to calculate animations.
To learn how to use CSS with JavaFX, I wrote a small application and created two new looks with CSS – and I must say I am truly impressed by its capabilities. Look for yourself how much you can do with CSS only.
While most of my posts so far dealt with JavaFX properties and bindings, today I want to write about another part of the JavaFX runtime I also work on: the animation API. In this article I will explain how to write custom animations in JavaFX and use this approach to create a class for sprite animations. (This will also be a good practice for one of my sessions at the conference 33rd Degree. I plan to write a game in JavaFX in just one hour. That’s going to be fun!)
The Horse in Motion
The JavaFX runtime provides two possibilities to create read-only properties. You can either use a wrapper (e.g. ReadOnlyDoubleWrapper) or you can extend an abstract base class (e.g. ReadOnlyDoublePropertyBase). This article shows how these two approaches can be implemented.
Very often one has to create a number of of similar objects. Using JavaFX builders for this task instead of constructors has several advantages as we will see in this article.
In short, builders…
- are easier to read and understand
- avoid some “copy & paste”-bugs
- result in small, but simple code, if builders are reused