当前位置: 首页 > 知识库问答 >
问题:

以编程方式滚动JMapViewer映射

赵鸿畴
2023-03-14

我有一个JMapViewer作为JFrame上的面板和一个按钮。如果我按下按钮,我希望JMapViewer显示滚动的地图摘录。

我试图通过lat/lon设置另一个显示位置,但我不知道如何获得旧的mapcenter lat/lon值..?

我的按钮Actionlistener,它应该显示一个稍微向上移动的地图摘录:

btn_PanUp.addActionListener(new ActionListener(){

    @Override
    public void actionPerformed(ActionEvent arg0) {
         jmv.setDisplayPositionByLatLon(lat+0.01, lon, zoom)
         jmv.invalidate();
    }
});

但是我不知道如何获得地图中心当前的LAT/LON值。我如何获得它们?

共有1个答案

汤跃
2023-03-14

查看JMapViewer,有一个名为getPosition()的方法,它为您提供了当前的地图中心。

来源:https://github.com/balloob/jmapviewer/blob/master/org/openstreetmap/gui/jmapviewer/jmapviewer.java

 /**
     * Calculates the latitude/longitude coordinate of the center of the
     * currently displayed map area.
     * 
     * @return latitude / longitude
     */
    public Coordinate getPosition() {
        double lon = OsmMercator.XToLon(center.x, zoom);
        double lat = OsmMercator.YToLat(center.y, zoom);
        return new Coordinate(lat, lon);
    }
 类似资料:
  • 问题内容: 如何滚动到代码底部?还是以更通用的方式,到子视图的任何一点? 问题答案: 您可以使用UIScrollView的功能滚动到内容视图的任何部分。假设您的scrollView是,这是一些滚动到底部的代码: 希望有帮助!

  • 我使用的是一个自定义视图,我添加了滚动条,如下所示: 现在有没有办法找出滚动条的像素厚度?对于垂直滚动条,我想找出宽度,对于水平滚动条,我想找出高度,两者都以像素为单位。 有没有办法通过编程实现这一点?

  • 问题内容: 我有一个带有用于内容的内部DIV的HTML页面。内部DIV有自己的滚动条。我想自动滚动到DIV中的某个位置。 我怎样才能做到这一点?(请注意,我不想自动滚动“窗口”滚动条-我已经知道如何执行此操作) 需要跨平台解决方案 问题答案: div具有您可以设置的属性(及其pal,)。

  • 问题内容: 使用jQuery,我想禁用主体的滚动: 我的想法是: 组 捕获当前 绑定到正文滚动事件,将scrollTop / scrollLeft设置为捕获的值。 有没有更好的办法? 更新: 我知道有人会在想“为什么他不只是在面板上使用?”。 请不要提出这个建议,因为我还有其他原因。 问题答案: 我发现执行此操作的唯一方法与您所描述的类似: 抓住当前滚动位置(不要忘记水平轴!)。 将溢出设置为隐藏

  • 本文向大家介绍在iOS中以编程方式禁用滚动视图?,包括了在iOS中以编程方式禁用滚动视图?的使用技巧和注意事项,需要的朋友参考一下 滚动视图是iOS开发人员遇到的最困难和最复杂的主题之一。在这里,我们将看到如何以编程方式禁用滚动视图。 要禁用它,我们需要使滚动视图的“ isScrollEnabled”属性为false。 将以下代码复制到文件中。

  • 我有一个滚动视图,里面有很多布局,一步一步地出现(按钮1显示布局1,...)。最后一步,我的最后一个按钮显示一个页脚。 在每次出现布局时,我希望scrollview滚动到底部。我的页脚出现时也一样。 布局文件 kt文件