GeoKone.NET Updated :: Much Faster, More Responsive, New Features

New version of http://GeoKone.NET is online! This version is a big one, completely rewritten, not anymore using the Processing.JS library, but instead only Javascript/Canvas techniques, which means it’s much faster and more responsive overall. Took a while to convert the existing Processing.js java -like parsed code to pure Javascript, but definitely worth it. Procesing.js is good for simple visualizations and prototyping stuff, but for production and achieving better performance it’s a no go.

GeoKone.NET 0.99 In Action

GeoKone.NET 0.99 In Action

Release Notes

  • Completely rewritten everything using only javascript+canvas drawing operations. Much faster, lighter and loads faster!
  • Update Dojo (used for the HTML UI) from 1.6 to 1.9.
  • Only active formations are re-drawn when modifying formations. This is a big drawing optimization and allows you to create much more complex scenes without having to re-draw all the formations all the time. Achieved with using multiple canvas elements on the page, and sorting formations based on their z-index, so that the active formations are always in the middle canvas, while the background and foreground stay unmodified. This means huge improvements in usage and drawing speeds, especially with more complex scenes :)
  • Now uses HTML5 Blob for saving images in browsers that support this. Much faster and better method for exporting PNG images, doesn’t seem to crash the browser anymore. The browsers that do not support this (Safari 5 notably) will fall back to base64 URI encoded saving.
  • Read and Save local files. You can now drag and drop local scene files to GeoKone and they will load using the HTML5 FileReader interface. Fallback for importing JSON still exist for browsers that do not support FileReader (Safari 5 again)
  • Better formation container, shows transition effects when you add formations or remove them, and feedback for when joggling polyforms with j/k.
  • Compressed all the javascript source files into one file, optimizing the loading time
  • Small tweaks and bug fixes all around. So much changes and refactoring the code.

As always, for full details, see the ChangeLog.

Approaching The Vision

This is a big release, as it the .NET version is getting so much closer to actually reaching the 1.0 version that I have in my plans and visions. My plan is to complete the .NET version and then leverage the drawing engine/loading engine of the .NET version for other Web -related sites / visualizations also, and this is why I have chosen to continue on developing the HTML5 -version instead of moving to native code.

I am pretty confident that I will be able to get the performance and features out of Javascript/Canvas/HTML5 that is required to complete this task. I would also like to see people sharing their creations with others and remixing content.

One big thing I want to add is also more features, like Spiral -formations based on the e^ or log/lin functions, hopefully adding more variability in the formations you can make.

Figuring out a way to continue working on GeoKone.NET

I also have plans for GeoKone Pro, like exporting Vector Images or other features targeted at artists and those who want to use their work in other media, like printing or image manipulation. This will mean some kind of subscription service, but I assure the standard version of GeoKone.NET will be always free, only the Pro features will have the subscription fee.

I am a lone developer, working alone on GeoKone.NET. Luckily though I have support on the marketing and idea side from Jennifer @ Stralim Technologies (check her site out if you are in Colorado and looking for a great web designer!), but mostly I am figuring this thing out by myself and trying to see what I am actually creating and how I could continue on working this without having to sacrifice too much of my own work and also getting energy back in exchange to continue developing this forwards.

I am setting up a donation feature also for the upcoming releases, so this will also hopefully generate some funds to run the servers and enable people continue enjoying GeoKone.NET :) I am really paying currently for the servers myself also, and even though I would like to make this thing completely free, I have to figure out a way to fully continue developing GeoKone without having to work too much on other projects.

Try it out! In Your Browser!

Now go to http://GeoKone.NET and start Expressing Geometry!

GeoKone 0.97.05 Out – New Line Join Mode Parameter

Hey All, just released a minor update of GeoKone.NET. This release adds support for the Line Join parameter, allowing you to create rounded, beveled or square line joins:

Rounded David Star With Shadows

Rounded Line Join David Star With Shadows

Here we can see what effect the rounded mode has, the line joins are rounded to create a more smooth look. This is actually just direct support for the Processing.js strokeJoin parameter, you can see here how the different modes affect line drawing. The shadow in the scene is created by copying all the formations, setting their color and stroke to black, offsetting the y by a nice amount and then adjusting the opacity to a smaller value, creating a shadow like effect behind the actual formation.

Also, Calculation of Stroke Weights Has Been Fixed in this release. Unfortunately, there was a bug in all version from up to 0.96 how the Stroke Weight values based on the Stroke Weight Ratio was calculated, I had typed a + instead of a * in the formula that counts what the stroke weight should be in relation to the line weight, and with the previous versions the stroke weight was just being added to the line weight, which is not what I originally intended. Now the strokeWeight is actually directly in relation to the lineweight, eg. if we have a lineWeight of 1.0, and stroke ratio of 2.0, the strokeWeight will be twice as thick as the lineWeight.

Another Variation With Rounded Lines - The Shadows Add Nice Depth Also! :)

Another Variation With Rounded Lines – The Shadows Add Nice Depth Also! :)

So this formula has now been fixed, But Unfortunately All Previous Scenes That Are Not Saved In The GeoKone Server, that use the Stroke value will show incorrect, and you will have to fix the stroke weights manually. I have fixed the values for those scenes that were saved to the GeoKone.NET server, so no worries about those.

Also, the Scene Server was down for a while, while I was looking for a new place to host the server, wasn’t really a good option to run the server at home. But now it has found a new home, and I hope to actually keep it running there so I can implement the social features I have been planning for GeoKone.NET.

Translucent Life - More Subtle Effect with Strokes, Round Lines and Opacity

Translucent Life – More Subtle Effect with Strokes, Round Lines and Opacity

Ok, now have fun with GeoKone.NET and Create Some Geometry! :)

GeoKone 0.96.05 Beta Released ! Much Snappier !

New Version of http://GeoKone.NET is Live!

GeoKone is now Much Snappier! Optimized the code so that after idle time the screen is no longer updated constantly, only when the parameters of the polyforms change. This makes the UI much snappier to use and makes GeoKone much more responsive, and uses far less CPU, resulting in the browser not getting all unresponsive during usage.

EDIT: Ok, update.. I tested this on my other machine (Mac Mini 2.0GHz, 2GB RAM) and it ran GeoKone slow like molasses with Chrome. With Safari it was usable, but not nearly as fast as on my main laptop. Oh how fun it is to program the HTML5 canvas! :I Back to the drawing board .. I will anyway have to figure out the core version of what will be GeoKone.NET 1.0, skim down everything else, make these features working and then focus on the desktop C++/OpenGL version, I feel I’ve had it with this web programming and all it’s little gimmicks that it requires to get it working smoothly.

Made With GeoKone

Made With GeoKone

Thumbnail feature was removed for this release, as I’m trying to figure out what are the most essential features for the web version to have, and the thumbnail was eating down performance. Maybe I will enable it back in the WebGL version.

Otherwise, work continues on the OpenGL/C++ version of libgeokone, a library for rendering GeoKone scenes with native performance and OpenGL for smooth animation and display of GeoKone scenes. When the libgeokone part is finished I will integrate the OpenGL drawing code into WebGL version, bringing _much_ faster drawing and hopefully even animation of the GeoKone Scenes.

Also thinking about moving the GeoKone hosted on Amazon so I could finally enable the server functionality again, but that will have to wait until next version.

First Public release of GeoKone, sacred geometry generator! Check out http://GeoKone.NET !

Whew, it has been hectic. All the coding, making visuals for TAWA, partying (Astral Projection, Astrix & Skazi yesterday, whew!) has really been awesome but at the same time very demanding.

But finally (or over a week now, released on 11.11.11) there is a public version of GeoKone in action at http://GeoKone.NET :) It is still a public BETA version, some features are still incomplete (I have only 10 fingers, at least for now) so please try it out and see what you think :) Any feedback is appreciated. I will try to make it easy to send feedback as soon as some of the more core features are in place that I have been planning.


Check out the Facebook Page for some cool new images generated with GeoKone! And Like the page if you like this kinda stuff, thanks! :) Go to http://GeoKone.NET, Sign Up for an account at the link on the top right of the screen and start generating some funky stuff!