[Pharo-dev] [Moose-dev] SVG described countries in Roassal

Tudor Girba tudor at tudorgirba.com
Mon Nov 18 16:14:41 EST 2013


Hi,


On Mon, Nov 18, 2013 at 9:44 PM, Alexandre Bergel
<alexandre.bergel at me.com>wrote:

> Hi Stef,
>
> Your email made me think a lot.
>
> > But in roassal you do not have the concept of a polylines?
>
> Actually no, but it is likely that we should. A general way to defines
> polygons is the way to go.
>
> > I do not get why you want to pollute Roassal with SVG names.
> > If you introduce the notion of Path why don;t you do it independent of
> SVG
> > because SVG is one way to represent path.
>
> After having played with Athens, I understand better what you actually
> mean.
> Indeed, the end user should work with a notion of polygon in general, and
> not with SVG.
>
> > Because I think that as a user I do not want to if my code works on svg
> or another external format.
> >
> >> It follows the same pattern no?
> >
> > Yes but this is different because ROBox is a roassal box not an svg or
> another format.
> > If tomorrow you get a pdf reader and access a library of pdf library. Do
> you want your reader to
> > have ROPDFBox?
> >
> > in SVG you also have
> >
> >       • Rectangle <rect>
> >       • Circle <circle>
> >       • Ellipse <ellipse>
> >       • Line <line>
> >       • Polyline <polyline>
> >       • Polygon <polygon>
> >       • Path <path>
> > So I imagine (and hope) that you will not introduce ROSVGRectangle
> ROSVGLine
> > ROSVGCircle?
> >
> > So why introducing ROSVGPath
>
> You are very very right. We indeed do not want to introduce all these
> classes.
>
> Your email made me think about something: rewriting Roassal from scratch,
> but putting the core notions brought by Athens at the center of Roassal. I
> spend some time on getting the camera working in Roassal, but Athens was
> not ready yet. More Roassal will use Athens, and more we are taking
> advantages of the graphic card.
>

This would be so great.


> Also, do we have to wait for the text editor to include Athens in Pharo?
> The text editor is essentially to bootstrap and remove Morphic right? But
> until then, Athens could be part of Pharo. I am now using the Moose image,
> which is nicely packaged with proper fonts and Athens. Since there are many
> users of Roassal on Morphic, it is hard for me to move to 100% Athens.
>

What do you mean? Athens is in Pharo 3.0 by default. We are no longer
loading it manually. You can safely invest all your energy in Athens :).

Doru



> Thanks again for your email
>
> Alexandre
>
>
> >
> >
> > Stef
> >>
> >> Alexandre
> >>
> >>
> >> On Nov 17, 2013, at 8:45 AM, Stéphane Ducasse <
> stephane.ducasse at inria.fr> wrote:
> >>
> >>> I see that you have a loooot of fun.
> >>> Now I have the impression that in the future version you should not
> expose ROSVGPath and others
> >>> because there are at the importer level not Roassal. So why do you
> need to wrap them.
> >>> If there is something missing in SVGPath what is it?
> >>>
> >>> Stef
> >>>
> >>>> Hi!
> >>>>
> >>>> I had fun understanding how countries may be described using SVG.
> >>>> Here is a first shoot:
> >>>>
> >>>> <Screen Shot 2013-11-16 at 5.36.21 PM.png>
> >>>>
> >>>> Moving the mouse above a country name highlight the country. You can
> now rehearse your geography.
> >>>>
> >>>> The complete source code of this example is:
> >>>>
> >>>> -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
> >>>> | view element nameComponent label |
> >>>> view := ROView new.
> >>>>
> >>>> ROSVGPath countries do: [ :k |
> >>>>    element := (ROSVGPath path: (ROSVGPath perform: k)) elementOn: k.
> >>>>    view add: element.
> >>>> ].
> >>>>
> >>>> nameComponent := ROElement new.
> >>>> ROSVGPath countries do: [ :k |
> >>>>    label := ROLabel elementOn: k asString.
> >>>>    label @ ROLightlyHighlightable.
> >>>>    label on: ROMouseEnter do: [ :event | ROBlink highlight: (view
> elementFromModel: event model asSymbol) ].
> >>>>    label on: ROMouseLeave do: [ :event | ROBlink unhighlight: (view
> elementFromModel: event model asSymbol) ].
> >>>>    nameComponent add: label.
> >>>> ].
> >>>> ROGridLayout new
> >>>>    gapSize: -3;
> >>>>    lineItemsCount: 15;
> >>>>    on: nameComponent elements.
> >>>>
> >>>> view add: nameComponent.
> >>>> nameComponent translateTo: 0 @ 400.
> >>>>
> >>>> view openInWindowSized: 1000 @ 700
> >>>> -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
> >>>>
> >>>> Cheers,
> >>>> Alexandre
> >>>> --
> >>>> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
> >>>> Alexandre Bergel  http://www.bergel.eu
> >>>> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
> >>>>
> >>>>
> >>>>
> >>>
> >>
> >> --
> >> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
> >> Alexandre Bergel  http://www.bergel.eu
> >> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
> >>
> >>
> >>
> >>
> >
> > _______________________________________________
> > Moose-dev mailing list
> > Moose-dev at iam.unibe.ch
> > https://www.iam.unibe.ch/mailman/listinfo/moose-dev
>
> --
> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
> Alexandre Bergel  http://www.bergel.eu
> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>
>
>
>
>


-- 
www.tudorgirba.com

"Every thing has its own flow"
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.pharo.org/pipermail/pharo-dev_lists.pharo.org/attachments/20131118/6080ec7c/attachment-0002.html>


More information about the Pharo-dev mailing list