This week I finally found some time to take care about two – long overdue – tasks at the Road to tag cloud 1 that I finally brought me somewhere further on my journey to a Wordle like tag clouds:
Open-Source
Over the past months I had more than one request for the code of the tag cloud. I planned to opensource it anyway the first time, but the quality didn’t match: For one I hade some unnecessary restrictions to text which I removed. Thats is the main reason why I called it “object cloud” instead of tag cloud. Now you can use any kind of object that should be arranged. I also seperated for examples and source code and cleaned out some other issues.
The project is hosted available at http://code.google.com/p/as3-object-cloud.
I didn’t find time to take care of build scripts or most of the documentation just yet. Any help with it is appreciated.
Performance
One of my major concerns about the project was its basic performance. No matter which way I will find to arrange the objects more naturally: any had to check whether or not a valid position was found. I could find some major problems on that behalf. The result shows that I wasted quite some frames in the former result: The current implementation looks like more like its ready for daily use.
Depending to the preferences of the algorithms, the quality, speed and shape of the result changes: try some configurations yourself!
Tags: ActionScript 3, Flash, Open Source, Tag Cloud
Hi Martin,
Great example! Been playing with the source and I’ve run into a snag getting it to work: I’m only seeing one iteration in the object cloud. I’ve traced the issue to the ‘nextTry’ timer event handler in AbstractStraightPositionAlogrithm.as. Specifically:
if ( _currentSetNo == 0 )
{
currentShape = _currentShapeSet.shape;
nextChild();
}
_currentSetNo is only 0 at the first timer event. Afterwards it’s been incremented to 1, therefor nextChild() is never called.
Any thoughts? I’ve only now just begun playing with it, so maybe I’m missing something obvious.
Thanks,
Larry
Never mind. Has more to do with me too retarded to know how to use the code base with flash instead of flex. I’m not a flex guy – foo.
Thanks for the clean code and especially for the example.
Have a great life.