com.supermap.mapping

类 DynamicLayer

  • java.lang.Object
    • com.supermap.data.InternalHandle
      • com.supermap.data.InternalHandleDisposable
        • com.supermap.mapping.DynamicLayer
  • 所有已实现的接口:
    IDisposable


    public class DynamicLayer
    extends com.supermap.data.InternalHandleDisposable
    动态图层类。

    动态图层是一种特殊的图层类型,当你在下面的应用场景中时,可以考虑使用动态图层:

    1. 当不想往记录集中添加几何对象,而又需要这个几何对象的时候,就可以把这个几何对象临时添加到动态图层。
    2. 当需要对目标进行动态跟踪的时候,如果把目标放到记录集中,要实现动态跟踪就得不断地刷新整个图层,这样会大大影响效率,如果将这个需要进行跟踪的目标放到动态图层上,这样可以获得更好的性能。
    3. 3.当需要进行批量地往记录集中添加几何对象的时候,可以先将这些对象临时放在动态图层上,确信需要添加之后再把动态图层上的几何对象批量地添加到记录集中。

    看了上面的文字,您可能会有这样一个疑问,动态图层的这些应用使用SuperMap的跟踪图层不也一样可以实现么?下面就来看看动态图层相比跟踪图层具有哪些优势吧。

    • SuperMap跟踪图层在地图窗口中只有一个位于地图最上层;而动态图层是地图的一种图层类型,地图中可以创建多个动态图层,动态图层也位于地图的最上层。
    • 动态图层中的几何对象可以单独控制可见性。
    • 动态图层中的对象操作更加方便,直接添加,删除,操作的都是对象本身,没有过多的副本。
    • 动态图层的操作性能更好。

    当开启动态图层硬件加速时,动态图层不支持以下对象的绘制:

    1. 不支持线符号的绘制,只支持普通实线符号对象的绘制;

    2. 不支持岛洞多边形绘制,且不支持填充符号绘制,只支持纯色系统填充符号(System 0)绘制。

    • 构造器详细资料

      • DynamicLayer

        public DynamicLayer()
        构造一个新的DynamicLayer类对象。
      • DynamicLayer

        public DynamicLayer(long handle)
        根据指定的handle构造一个DynamicLayer类对象。
        参数:
        handle -
    • 方法详细资料

      • dispose

        public void dispose()
        释放DynamicLayer对象占用的资源。
      • getCount

        public int getCount()
        返回动态图层中的对象个数。
        返回:
      • isVisible

        public boolean isVisible()
        返回动态图层是否可见。true表示可见;false表示不可见。
        返回:
        一个布尔值,指示动态图层是否可见。true表示可见;false表示不可见。
      • setVisible

        public void setVisible(boolean value)
        设置动态图层是否可见。true表示可见;false表示不可见。
        参数:
        value - 一个布尔值,指示动态图层是否可见。true表示可见;false表示不可见。
      • isSymbolScalable

        public boolean isSymbolScalable()
        返回图层的符号大小是否随图缩放。默认为false。true 表示符号随着图层的缩放而缩放,在图层放大的同时,符号同时也放大。
        返回:
        一个布尔值,指示图层的符号大小是否随图缩放。默认为false。true 表示符号随着图层的缩放而缩放;false表示符号不随图层的缩放而缩放。
      • setSymbolScalable

        public void setSymbolScalable(boolean value)
        设置图层的符号大小是否随图缩放。默认为false。true 表示符号随着图层的缩放而缩放,在图层放大的同时,符号同时也放大。
        参数:
        value - 一个布尔值,指示图层的符号大小是否随图缩放。默认为false。true 表示符号随着图层的缩放而缩放;false表示符号不随图层的缩放而缩放。
      • getSymbolScale

        public double getSymbolScale()
        返回设置动态图层的符号缩放基准比例尺。
        返回:
        返回设置动态图层的符号缩放基准比例尺。
      • setSymbolScale

        public void setSymbolScale(double value)
        设置动态图层的符号缩放基准比例尺。
        参数:
        value - 动态图层的符号缩放基准比例尺。
      • isAntialias

        public boolean isAntialias()
        返回动态图层是否开启反走样,true表示使用反走样;false表示不使用反走样。
        返回:
        一个布尔值,指示动态图层是否开启反走样,true表示使用反走样;false表示不使用反走样。
      • setAntialias

        public void setAntialias(boolean value)
        设置动态图层是否开启反走样,true表示使用反走样;false表示不使用反走样。
        参数:
        value - 一个布尔值,指示动态图层是否开启反走样,true表示使用反走样;false表示不使用反走样。
      • hitTest

        public int hitTest(Point2D point,
                           double tolerance)
        返回满足条件的几何对象的ID。若指定的点与几何对象上最近点的距离是在指定的容限范围内,则该几何对象的 ID 被返回。如果跟踪图层中没有符合条件的几何对象,则返回 -1;如果地图上有多个重叠的几何对象都满足条件,则返回最上面的几何对象的ID。
        参数:
        point - 要测试的点。
        tolerance - 指定的容限。
        返回:
        满足条件的几何对象的ID。
      • add

        public int add(Geometry geometry,
                       String tag)
        向动态图层中添加一个对象。
        参数:
        geometry - 指定的要添加到动态图层中的对象。
        tag - 指定对象的名称,对象名称在动态图层中是唯一的,要来标识该对象。
        返回:
        返回添加到动态图层中的对象的索引值。
      • get

        public Geometry get(String tag)
        返回动态图层中指定名称的对象。
        参数:
        tag - 指定的对象的名称。
        返回:
        返回动态图层中指定名称的对象。
      • set

        public boolean set(String tag,
                           Geometry geometry)
        将动态图层中指定名称的对象设置为新的给定的对象。
        参数:
        tag - 指定的对象名称。
        geometry - 指定的对象,用来替代指定名称的对象。
        返回:
        设置成功返回true;失败返回false。
      • contains

        public boolean contains(Geometry geometry)
        是否包含几何对象
        参数:
        geometry - 几何对象
        返回:
        是否包含
      • containsTag

        public boolean containsTag(String tag)
        是否包含标签
        参数:
        tag - 标签
        返回:
        是否包含
      • remove

        public boolean remove(String tag)
        移除动态图层中指定名称的对象。
        参数:
        tag - 指定的要移除的对象的名称。
        返回:
        移除成功返回true;移除失败返回false。
      • clear

        public void clear()
        清空动态图层中的所有内容。
      • isAvailableTag

        public boolean isAvailableTag(String tag)
        返回指定的对象名称是否可用。在动态图层中对象的名称是唯一的。
        参数:
        tag - 指定的对象名称。在动态图层中对象的名称是唯一的。
        返回:
        返回指定的对象名称是否可用。true表示可用;false表示不可用。
      • getAvailableTag

        public String getAvailableTag(String tag)
        返回动态图层中一个可用的对象名称。在动态图层中对象的名称是唯一的。
        参数:
        tag - 指定的对象名称。在动态图层中对象的名称是唯一的。
        返回:
        可用的对象名称。在动态图层中对象的名称是唯一的。
      • remove

        @Deprecated
        public boolean remove(int index)
        已过时。 
        移除动态图层中指定索引的对象。
        参数:
        index - 指定的要移除的对象的索引值。
        返回:
        移除成功返回true;移除失败返回false。
      • get

        @Deprecated
        public Geometry get(int index)
        已过时。 
        返回动态图层中指定索引的对象。
        参数:
        index - 指定对象的索引值。
        返回:
        返回动态图层中指定索引的对象。
      • set

        @Deprecated
        public boolean set(int index,
                                        Geometry geometry)
        已过时。 
        将动态图层中指定索引的对象设置为新的给定的对象。
        参数:
        index - 指定的索引值。
        geometry - 指定的对象,用来替代指定索引的对象。
        返回:
        设置成功返回true;失败返回false。
      • getTag

        @Deprecated
        public String getTag(int index)
        已过时。 
        返回指定对象的名称。
        参数:
        index - 指定的要获取对象名称的对象的索引值。
        返回:
        返回指定对象的名称。
      • setTag

        @Deprecated
        public boolean setTag(int index,
                                           String tag)
        已过时。 
        设置指定对象的名称。
        参数:
        index - 指定的要设置对象名称的对象的索引值。
        tag - 指定的对象的名称。对象的名称在动态图层中是唯一的。
        返回:
        设置成功返回true;失败返回false。
      • indexOf

        @Deprecated
        public int indexOf(String tag)
        已过时。 
        返回指定对象名称的对象的索引值。
        参数:
        tag - 指定的要获取索引值的对象的名称。
        返回:
        返回指定对象名称的对象的索引值。
      • indexOf

        @Deprecated
        public int indexOf(Geometry geometry)
        已过时。 
        返回指定对象的索引值。
        参数:
        geometry - 指定的要获取索引值的对象。
        返回:
        返回指定对象的索引值。

Copyright © 2021–2024 SuperMap. All rights reserved.