I like the fact that we are caring more and more about what may look like as details. But
this easily sum up and are really important.
Alexandre
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel
http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
On Jul 3, 2014, at 4:13 PM, Tudor Girba <tudor(a)tudorgirba.com> wrote:
Beautiful!
Doru
On Thu, Jul 3, 2014 at 8:27 PM, Alexandre Bergel <alexandre.bergel(a)me.com> wrote:
Hi!
Daniel has worked on additional circle layouts, which are now included in Roassal.
We now have RTEquidistantCircleLayout and RTWeightedCircleLayout in addition to
RTCircleLayout and RTCenteredCircleLayout
Consider this small script:
=-=-==-=-==-=-==-=-=
| view aux |
view := RTView new.
aux := RTEllipse new.
aux color: Color red.
1 to: 20 do: [ :i |
aux sizeElement: i*4+5.
view add: (aux elementOn: i) ].
RTCircleLayout
new
initialRadius: 150;
on: view elements.
view open
=-=-==-=-==-=-==-=-=
It produces the output:
<Screen Shot 2014-07-03 at 2.14.59 PM.png>
There are two recurrent problems with this rendering:
- circles are not centered
- circles overlaps and this overlap can be avoided since there is spaces between the
small circles. The layout does not consider the size of the elements
RTEquidistantCircleLayout and RTWeightedCircleLayout address these problems.
In the script above, replacing RTCircleLayout by RTWeightedCircleLayout produces the
following:
<Screen Shot 2014-07-03 at 2.17.20 PM.png>
The space is allocated to each element according to its size.
A variation of this situation may be seen with the following:
=-=-==-=-==-=-==-=-=
| view aux |
view := RTView new.
aux := RTEllipse new.
aux color: Color red.
1 to: 10 do: [ :i |
aux sizeElement: i*10+5.
view add: (aux elementOn: i) ].
RTWeightedCircleLayout
new
initialRadius: 150;
on: view elements.
view open
=-=-==-=-==-=-==-=-=
The script produces
<Screen Shot 2014-07-03 at 2.20.07 PM.png>
It may happens however that you want always the same space between the elements. You
should therefore use RTEquidistantCircleLayout as in:
=-=-==-=-==-=-==-=-=
| view aux |
view := RTView new.
aux := RTEllipse new.
aux color: Color red.
1 to: 10 do: [ :i |
aux sizeElement: i*10+5.
view add: (aux elementOn: i) ].
RTEquidistantCircleLayout
new
initialRadius: 150;
on: view elements.
view open
=-=-==-=-==-=-==-=-=
It produces the following:
<Screen Shot 2014-07-03 at 2.20.18 PM.png>
The work of Daniel may be found in Roassal2.
Thanks Daniel!
Cheers,
Alexandre
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel
http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
_______________________________________________
Moose-dev mailing list
Moose-dev(a)iam.unibe.ch
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
--
www.tudorgirba.com
"Every thing has its own flow"
_______________________________________________
Moose-dev mailing list
Moose-dev(a)iam.unibe.ch
https://www.iam.unibe.ch/mailman/listinfo/moose-dev