Hi Martin,
thanks for your help. You were absolutly right, the gc.show()-method created
the frame. But that actually means, that my JMapPane isn't working at all.
The code now looks like that:
MapContext mc = new DefaultMapContext();
StyleBuilder sb = new StyleBuilder();
org.geotools.styling.Style style =
sb.createStyle(sb.createRasterSymbolizer());
StreamingRenderer renderer = new StreamingRenderer();
HashMap hints = new HashMap();
hints.put("memoryPreloadingEnabled", Boolean.TRUE);
renderer.setRendererHints(hints);
mc.addLayer(gc, style);
JMapPane mp = new JMapPane(new BorderLayout(), true, renderer, mc);
mp.setBounds(230, 10, 600, 600);
mp.setReset(true);
mp.repaint();
this.getContentPane().add(mp);
Nothing appears on my frame, BUT, if I click on the area where the JMapPane
SHOULD be, I get a NullPointerException, so obviously I'm still missing
something. I think it's a problem with the MapContext or the Renderer, maybe
some additional options need to be set?!
Greetings and thanks for your help again, Salke
Martin Schmitz-5 wrote:
>
> Hello Salke,
>
> I think your "strange" behavior comes from:
>
> gc.show();
>
> This (test method) opens a frame and shows the grid.
> Comment this line out to avoid this.
> To show your grid in "your own" JMapPane/MapContext it is additionally
> necessary to invoke
>
> JMapPane.setReset(true);
> JMapPane.repaint();
>
> after adding a new layer to the MapContext.
>
> @Geotools-Developers:
> Maybe it is time to provide the JavaDoc for JMapPane, where also the
> setReset(.) issue is mentioned. There often are the same questions on
> this list...
>
> Kind regards
>
> Martin Schmitz
>
>
> Salke schrieb:
>> Hi,
>>
>> I started using geotools today, so I am pretty new to this impressive
>> library. I am using a JMapPane to display raster data I got from a WMS
>> (geoserver). The layer is displayed properly, BUT: As soon as I create
>> the
>> JMapPane-object, it's opening its own frame displaying the loaded layer
>> inside. 0o Looking at the documentation I found out that JMapPane is a
>> subclass of a "normal" JPanel, how can it open it's own frame? :X
>>
>> I want the JMapPane to be displayed inside my mainframe, which is a
>> normal
>> JFrame.
>>
>> Another question: How can I use the controls for Zooming and Panning I
>> read
>> about in some posts and parts of the documentation) At the moment, it
>> looks
>> like a static image beeing simply displayed. Some source is following,
>> maybe
>> it helps to find a way out of the magic frame-creation :)
>>
>> URL myURL = new
>> URL("http://localhost:8080/geoserver/wms");
>> WebMapServer wms = new WebMapServer(myURL);
>> GetMapRequest mapRequest = wms.createGetMapRequest();
>> mapRequest.addLayer(currentLayer);
>> mapRequest.setFormat("image/png");
>> mapRequest.setDimensions(600, 600);
>> mapRequest.setBBox(currentLayer.getLatLonBoundingBox());
>>
>> BufferedImage image =
>> ImageIO.read(wms.issueRequest(mapRequest).getInputStream());
>> GeneralEnvelope envelope = new
>> GeneralEnvelope(currentLayer.getLatLonBoundingBox());
>>
>> GridCoverageFactory factory = new
>> GridCoverageFactory();
>> GridCoverage2D gc = factory.create("GridCoverage",
>> image, envelope);
>> gc.show();
>>
>> MapContext mc = new DefaultMapContext();
>> StyleBuilder sb = new StyleBuilder();
>> org.geotools.styling.Style style =
>> sb.createStyle(sb.createRasterSymbolizer());
>>
>> StreamingRenderer renderer = new StreamingRenderer();
>>
>> HashMap hints = new HashMap();
>> hints.put("memoryPreloadingEnabled", Boolean.TRUE);
>> renderer.setRendererHints(hints);
>>
>> mc.addLayer(gc, style);
>> JMapPane mp = new JMapPane(null, true, renderer, mc);
>>
>> // this points to this class that is a subclass of
>> JFrame
>> // the JMapPane is even "displayed" (own frame) without
>> this line 0o
>> this.getContentPane().add(mp);
>
>
> -------------------------------------------------------------------------
> This SF.net email is sponsored by DB2 Express
> Download DB2 Express C - the FREE version of DB2 express and take
> control of your XML. No limits. Just data. Click to get it now.
> http://sourceforge.net/powerbar/db2/
> _______________________________________________
> Geotools-gt2-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/geotools-gt2-users
>
>
--
View this message in context:
http://www.nabble.com/Strange-JMapPane-behaviour-tf3736310.html#a10602763
Sent from the geotools-gt2-users mailing list archive at Nabble.com.
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Geotools-gt2-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geotools-gt2-users