com.supermap.data

类 GeoText3D

  • 所有已实现的接口:
    IDisposable


    public class GeoText3D
    extends Geometry3D
    三维文本几何对象类。

    该类提供了三维文本几何对象的编辑信息,可以通过设置此类来对三维文本几何对象以及其子对象进行编辑操作。

    该类仅在 Windows、Linux 平台版本中支持。

    一个三维文本几何对象是由一个或多个部分组成,每个部分称为三维文本几何对象的一个子对象,每个子对象都是一个 TextPart3D 的实例。三维文本几何对象的文字内容是各个子对象的文字内容之和,还可以通过设置各个子对象的放置位置,使一个三维文本几何对象中的各部分文字具有自己的放置风格。同一个三维文本几何对象的所有子对象都使用相同的文本风格,即使用该类的 setTextStyle() 方法定义的文本风格。

    注意:

    1.三维中的文本采用 BillBoard 技术,文本总是会自动放在最上层显示,始终朝着人,表面和视线垂直,不总是贴地面。

    2.该类的对象调用 getGeoModel() 方法无效,即返回值为null。

    • 构造器详细资料

      • GeoText3D

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

        public GeoText3D(GeoText3D geoText3D)
        根据指定的 GeoText3D 对象构造一个与其相同的新对象。
        参数:
        geoText3D - 指定的 GeoText3D 对象。
      • GeoText3D

        public GeoText3D(TextPart3D part)
        根据指定的参数来构造一个 GeoText3D 的新对象。
        参数:
        part - 给定的三维文本几何对象的子对象。
      • GeoText3D

        public GeoText3D(TextPart3D part,
                         TextStyle textStyle)
        根据指定的参数来构造一个 GeoText3D 的新对象。
        参数:
        part - 给定的三维文本几何对象的子对象。
        textStyle - 指定的文本风格。
    • 方法详细资料

      • getText

        public String getText()
        返回三维文本几何对象的文本字符串。如果该三维文本几何对象有子对象,则其值为子对象的字符串之和。
        返回:
        三维文本几何对象的文本字符串。
      • getPartCount

        public int getPartCount()
        返回三维文本几何对象的子对象个数。
        返回:
        三维文本几何对象的子对象个数。
      • getTextStyle

        public TextStyle getTextStyle()
        返回三维文本几何对象的文本风格。文本风格用于指定文本对象显示时的透明度、缩放比、固定大小、高度和颜色等,目前不支持字体。

        其中缩放比例(getFontScale()/setFontScale())与文本固定大小、文本字体高度的关系如下:

        1)在屏幕图层中,kml中的文本大小只支持缩放比,与文本字体高度和是否固定大小无关;

        2)在三维标签专题图和文本数据集中:

        a. 在 setTextStyle 设置为固定大小的情况下,是通过文本字体高度(setFontHeight())来改变文字在场景中显示的大小。此时的缩放比例 (setFontScale())即使设置了也不生效。

        b. 在 TextStyle 不固定大小的情况下,是通过缩放比例(setFontScale())来改变文字在场景中的显示的大小。文本字体高度(setFontHeight())即使设置了也不生效。

        返回:
        三维文本几何对象的文本风格。
      • setTextStyle

        public void setTextStyle(TextStyle textStyle)
        设置三维文本几何对象的文本风格。文本风格用于指定文本对象显示时的字体、宽度、高度和颜色等。
        参数:
        textStyle - 三维文本几何对象的文本风格。
      • isEmpty

        public boolean isEmpty()
        从类复制的说明: Geometry
        判断几何对象是否为空值,不同的几何对象的是否为空的条件各异,请参见各具体几何类型的该方法。
        覆盖:
        isEmpty 在类中 Geometry
        返回:
        一个布尔值指定几何对象是否为空。
        另请参阅:
        Geometry.offset(double, double)
      • addPart

        public int addPart(TextPart3D part)
        在三维文本几何对象中添加子对象。
        参数:
        part - 待添加的三维文本几何对象的子对象。
        返回:
        添加成功则返回子对象索引,失败时返回-1。
      • getPart

        public TextPart3D getPart(int index)
        返回此 GeoText3D 类实例的指定索引的子对象。
        参数:
        index - 指定的子对象索引。
        返回:
        指定索引的子对象。
        抛出:
        IndexOutOfBoundsException - 如果 index<0 或 index>= getPartCount()
      • insertPart

        public boolean insertPart(int index,
                                  TextPart3D part)
        在三维文本几何对象的指定位置插入一个子对象。
        参数:
        index - 插入的位置,即子对象的索引值。
        part - 要插入的子对象。
        返回:
        插入成功返回 true,否则返回 false。
        抛出:
        IndexOutOfBoundsException - 如果 index <0 或 index>= getPartCount()
      • indexOf

        public int indexOf(TextPart3D part)
        返回指定的子对象在此三维文本几何对象中的索引。
        参数:
        part - 指定的子对象。
        返回:
        指定子对象的索引。
      • removePart

        public boolean removePart(int index)
        删除指定索引的子对象。
        参数:
        index - 指定的子对象索引。
        返回:
        删除成功返回 true,否则返回 false。
        抛出:
        IndexOutOfBoundsException - 如果 index <0 或 index>= getPartCount()
      • setPart

        public boolean setPart(int index,
                               TextPart3D part)
        修改指定索引的子对象,即用新的三维文本子对象来替换原来的三维文本子对象。
        参数:
        index - 指定子对象的索引。
        part - 指定的子对象。
        返回:
        设置成功返回 true,否则返回 false。
        抛出:
        IndexOutOfBoundsException - 如果 index <0 或 index>= getPartCount()
      • clone

        public GeoText3D clone()
        返回当前 GeoText3D 对象的一个拷贝。
        指定者:
        clone 在类中 Geometry
        返回:
        通过克隆操作得到的 GeoText3D 对象。
      • setEmpty

        public void setEmpty()
        从类复制的说明: Geometry
        清空几何对象中的空间数据,但几何对象的标识符和几何风格保持不变。
        覆盖:
        setEmpty 在类中 Geometry
      • dispose

        public void dispose()
        释放该对象所占用的资源。当调用该方法之后,此对象不再可用。
        指定者:
        dispose 在接口中 IDisposable
        指定者:
        dispose 在类中 Geometry
      • fromXML

        public boolean fromXML(String xml)
        从类复制的说明: Geometry
        根据传入的 XML 字符串重新构造几何对象。该 XML 必须符合 GML3.0 规范。

        调用该方法时,首先将该几何对象的原始数据清空,然后根据传入的 XML 字符串重新构造该几何对象。

        GML (Geography Markup Language)即地理标识语言, GML 能够表示地理空间对象的空间数据和非空间属性数据。GML 是基于 XML 的空间信息编码标准,由开放式地理信息系统协会 OpenGIS Consortium (OGC) 提出,得到了许多公司的大力支持,如 Oracle、Galdos、MapInfo、CubeWerx 等。

        GML 作为一个空间数据编码规范,提供了一套基本的标签、公共的数据模型,以及用户构建应用模式(GML Application Schemas)的机制。

        覆盖:
        fromXML 在类中 Geometry
        参数:
        xml - XML 格式的字符串。
        返回:
        如果构造成功返回 true,否则返回 false。
        另请参阅:
        Geometry.offset(double, double)

Copyright © 2021–2024 SuperMap. All rights reserved.