[Marble-devel] Drawing a box on the map
tackat at t-online.de
Wed Feb 15 09:05:10 UTC 2012
On Dienstag, 14. Februar 2012 22:22:01 Dennis Nienhüser wrote:
> an easy way (hack) would be to use the selection rubber band Marble uses
> when you hold Ctrl and do the interaction you describe. You can access
> that rectangle via the MarbleWidget::regionSelected(QList<double>)
> signal. The list contains the border points (west, north, east, south,
> in degree).
Unfortunately this feature is faulty at least if used in globe projection and
when selecting an area that contains a pole. So I guess doing it the other way
(using GeoPainter::drawRect() or via the KML approach is a better pick.
> To make it persistent, add your own layer as described in
> the tutorials and have it paint the rectangle. Alternatively, create a
> suitable .kml file with the rectangle, style it and add it to the map
> via MarbleWidget::model()->addGeoDataString() or addGeoDataFile().
> You can also add another event filter on the widget and handle the user
> actions similarly to how MarbleWidgetDefaultInputHandler implements the
> rubber band selection.
> On 14.02.2012 21:42, Kyle Shannon wrote:
> > Hello,
> > I was wondering if it is possible to have the user draw a box on the
> > map in marblewidget.
> > 1) User clicks a point.
> > 2) User drags the mouse to another point.
> > The two points define a rectangle. I would like the drawing to be
> > updated as well as the user drags the mouse. I checked the tutorials,
> > and the GeoPainter examples are all pretty static. My question is
> > where do I start? Do I need to look into Qt api stuff or somewhere in
> > the marble api. I thought I found somenting in the digikam source,
> > but it didn't seem like what I was looking for. I am using the QTONLY
> > build.
> > kss
> > /**
> > *
> > * Kyle Shannon
> > * ksshannon at gmail.com <mailto:ksshannon at gmail.com>
> > *
> > */
> > _______________________________________________
> > Marble-devel mailing list
> > Marble-devel at kde.org
> > https://mail.kde.org/mailman/listinfo/marble-devel
> Marble-devel mailing list
> Marble-devel at kde.org
More information about the Marble-devel