zoukankan      html  css  js  c++  java
  • 点云瓦片格式翻译 GISer

    Point Cloud

     

    Contents

     

    Overview

    The Point Cloud tile format enables efficient streaming of massive point clouds for 3D visualization. Each point is defined by a position and by optional properties used to define its appearance, such as color and normal, as well as optional properties that define application-specific metadata.

    Using 3D Tiles terminology, each point is a feature.

    A Point Cloud tile is a binary blob in little endian.

    点云瓦片格式可实现三维可视化领域大规模点云数据的高效流式传输。每个点由一个位置和用于定义其外观的可选属性(例如颜色和法线),以及定义应用程序特定元数据的可选属性组成。
    使用3DTiles术语,每个点都是一个要素;
    点云图块是小端二进制Blob存储的;
    

    Layout

    A tile is composed of a header section immediately followed by a body section. The following figure shows the Point Cloud layout (dashes indicate optional fields):

    一个图块由标题部分和紧跟其后的正文部分组成,下图显示了点云数据的的结构组成(虚线表示可选字段):

    Padding

    A tile's byteLength must be aligned to an 8-byte boundary. The contained Feature Table and Batch Table must conform to their respective padding requirement.

     一个图块的字节长度必须是8字节对齐的,里面包含的FeatureTable和BatchTable必须符合它们各自的填充要求;

    Header

    The 28-byte header contains the following fields:

    28字节的标题部分包括以下字段:

    Field nameData typeDescription
    magic 4-byte ANSI string "pnts". This can be used to identify the content as a Point Cloud tile. 用于证明该文件是一个点云图块
    version uint32 The version of the Point Cloud format. It is currently 1. 点云格式版本,目前均为1
    byteLength uint32 The length of the entire tile, including the header, in bytes. 包括标题部分在内的整个图块字节长度
    featureTableJSONByteLength uint32 The length of the Feature Table JSON section in bytes. Feature Table JSON部分的字节长度
    featureTableBinaryByteLength uint32 The length of the Feature Table binary section in bytes. Feature Table二进制部分的字节长度
    batchTableJSONByteLength uint32 The length of the Batch Table JSON section in bytes. Zero indicates that there is no Batch Table. Batch Table JSON部分的字节长度,0表示没有Batch Table
    batchTableBinaryByteLength uint32 The length of the Batch Table binary section in bytes. If batchTableJSONByteLength is zero, this will also be zero. Batch Table二进制部分的字节长度,如果batchTableJSONByteLength为0,该值也为0

    The body section immediately follows the header section, and is composed of a Feature Table and Batch Table.

    正文部分紧跟在标题部分后面,由一个Feature Table和Batch Table组成。

     Feature Table

    Contains per-tile and per-point values that define where and how to render points. More information is available in the Feature Table specification.

    See Property reference for the pnts feature table schema reference. The full JSON schema can be found in pnts.featureTable.schema.json.

     Feature Table(要素表)包含每个图块和每个点的值,这些信息定义了如何渲染点以及渲染点的位置。更多地信息可以参看 Feature Table规格说明;

     有关pnts要素表结构参考请参阅Property reference部分,完整的JSON结构可以在pnts.featureTable.schema.json部分找到;

    Semantics

     语义

    Point semantics

    These semantics map to an array of feature values that define each point. The length of these arrays must be the same for all semantics and is equal to the number of points. The value for each point semantic must be a reference to the Feature Table binary body; they cannot be embedded in the Feature Table JSON header.

    If a semantic has a dependency on another semantic, that semantic must be defined. If both POSITION and POSITION_QUANTIZED are defined for a point, the higher precision POSITION will be used. If both NORMAL and NORMAL_OCT16P are defined for a point, the higher precision NORMAL will be used.

    点语义

    这些语义映射到定义每个点的特征值数组。 对于所有语义,这些数组的长度必须相同,并且等于点的数量。每个点语义的值必须与特征表的二进制正文相对应,它们不能嵌入到Feature Table JSON的标题部分。

    如果一个语义依赖另一个语义,则必须定义该被依赖的语义。如果一个点的POSITION和POSTION_QUANTIZED都被定义了,则更高精度的POSTION将被使用;如果一个点的NORMAL和NORMAL_OCT16P都被定义了,则更高精度的NORMAL将被采用。

    SemanticData TypeDescriptionRequired
    POSITION float32[3] A 3-component array of numbers containing x, y, and z Cartesian coordinates for the position of the point. white_check_mark Yes, unless POSITION_QUANTIZED is defined.
    POSITION_QUANTIZED uint16[3] A 3-component array of numbers containing x, y, and z in quantized Cartesian coordinates for the position of the point. white_check_mark Yes, unless POSITION is defined.
    RGBA uint8[4] A 4-component array of values containing the RGBA color of the point. red_circle No.
    RGB uint8[3] A 3-component array of values containing the RGB color of the point. red_circle No.
    RGB565 uint16 A lossy compressed color format that packs the RGB color into 16 bits, providing 5 bits for red, 6 bits for green, and 5 bits for blue. red_circle No.
    NORMAL float32[3] A unit vector defining the normal of the point. red_circle No.
    NORMAL_OCT16P uint8[2] An oct-encoded unit vector with 16 bits of precision defining the normal of the point. red_circle No.
    BATCH_ID uint8, uint16 (default), or uint32 The batchId of the point that can be used to retrieve metadata from the Batch Table. red_circle No.

     

    Global semantics

    These semantics define global properties for all points.

    全局语义

    这些语义定义了所有点数据的全局属性

    SemanticData TypeDescriptionRequired
    POINTS_LENGTH uint32 The number of points to render. The length of each array value for a point semantic should be equal to this. white_check_mark Yes.
    RTC_CENTER float32[3] A 3-component array of numbers defining the center position when point positions are defined relative-to-center. red_circle No.
    QUANTIZED_VOLUME_OFFSET float32[3] A 3-component array of numbers defining the offset for the quantized volume. red_circle No, unless POSITION_QUANTIZED is defined.
    QUANTIZED_VOLUME_SCALE float32[3] A 3-component array of numbers defining the scale for the quantized volume. red_circle No, unless POSITION_QUANTIZED is defined.
    CONSTANT_RGBA uint8[4] A 4-component array of values defining a constant RGBA color for all points in the tile. red_circle No.
    BATCH_LENGTH uint32 The number of unique BATCH_ID values. red_circle No, unless BATCH_ID is defined.

    Examples using these semantics can be found in the examples section below.

     使用这些语义的示例可以在下面的example section部分查看。

    Point positions

    POSITION defines the position for a point before any tileset transforms are applied.

     POSITION定义了一个点在所有tileset变换应用之前的位置。

    Coordinate reference system (CRS)

    坐标参考系统

    3D Tiles local coordinate systems use a right-handed 3-axis (x, y, z) Cartesian coordinate system; that is, the cross product of x and y yields z. 3D Tiles defines the z axis as up for local Cartesian coordinate systems (also see coordinate reference system).

     3D瓦片本地坐标系统使用右手3轴(x,y,z)笛卡尔坐标系统,也就是说x和y的叉积产生z。3D瓦片在本地笛卡尔坐标系统中将Z轴定义为向上的(也可参看coordinate reference system)。

    RTC_CENTER

    RTC(relative-to-center)模式下的中心点位

    Positions may be defined relative-to-center for high-precision rendering, see Precisions. If defined, RTC_CENTER specifies the center position and all point positions are treated as relative to this value.

     为了实现高精度的渲染可以将位置定义为依赖中心点位的相对位置,参看Precisions。如果定义了相对位置,则RTC_CENTER标注整个点云的中心位置,其他所有点的位置都是相对于该中心位置的相对值。

    Quantized positions

    量化位置

    If POSITION is not defined, positions may be stored in POSITION_QUANTIZED, which defines point positions relative to the quantized volume. If neither POSITION nor POSITION_QUANTIZED is defined, the tile does not need to be rendered.

    A quantized volume is defined by offset and scale to map quantized positions to a position in local space. The following figure shows a quantized volume based on offset and scale:

    如果没有定义POSITION字段,位置信息可以存储在POSITION_QUANTIZED中,POSTION_QUANTIZED定义的点位置是相对于量化空间来的。如果POSITION和POSITION_QUANTIZED都没有定义,则瓦片不需要被渲染。

    量化空间由偏移量和缩放比例定义,从而将量化位置映射到本地位置。下图展示了一个基于偏移量和缩放比例的量化空间:

    quantized volume

    offset is stored in the global semantic QUANTIZED_VOLUME_OFFSET, and scale is stored in the global semantic QUANTIZED_VOLUME_SCALE. If those global semantics are not defined, POSITION_QUANTIZED cannot be used.

    Quantized positions can be mapped to local space using the following formula:

    POSITION = POSITION_QUANTIZED * QUANTIZED_VOLUME_SCALE / 65535.0 + QUANTIZED_VOLUME_OFFSET

     偏移量存储在全局语义QUANTIZED_VOLUME_OFFSET中,缩放比例则存储在全局语义QUANTIZED_VOLUME_SCALE中。如果这些全局语义未定义,POSITION_QUANTIZED不能使用。

    量化位置可以通过如下公式映射到本地空间中:

    POSITION = POSITION_QUANTIZED * QUANTIZED_VOLUME_SCALE / 65535.0 + QUANTIZED_VOLUME_OFFSET

    Point colors

    点颜色

    If more than one color semantic is defined, the precedence order is RGBA, RGB, RGB565, then CONSTANT_RGBA. For example, if a tile's Feature Table contains both RGBA and CONSTANT_RGBA properties, the runtime would render with per-point colors using RGBA.

    If no color semantics are defined, the runtime is free to color points using an application-specific default color.

    In any case, 3D Tiles Styling may be used to change the final rendered color and other visual properties at runtime.

     如果定义了超过一个的颜色语义,它们的优先顺序如下:RGBA,RGB,RGB365,CONSTANT_RGBA。例如,一个瓦片的Feature Table同时包含RGBA和CONSTANT_GRBA两个属性,运行时将会采用RGBA值进行渲染。如果一个颜色语义都没有定义,运行时将使用应用环境特定的默认颜色对点进行着色。

    任何情况下,都可以使用3D Tiles Styling在运行时更改最终的渲染颜色和其他视觉属性。

    Point normals

    点法向量

    Per-point normals are an optional property that can help improve the visual quality of points by enabling lighting, hidden surface removal, and other rendering techniques. The normals will be transformed using the inverse transpose of the tileset transform.

     每个点法向量是一个可选属性,它能通过激活光照、隐藏面去除以及其他渲染技术改善点的视觉展示效果。

    Oct-encoded normal vectors

    八进制法向量

    Oct-encoding is described in A Survey of Efficient Representations of Independent Unit Vectors. Oct-encoded values are stored in unsigned, unnormalized range ([0, 255]) and then mapped to a signed normalized range ([-1.0, 1.0]) at runtime.

    An implementation for encoding and decoding these unit vectors can be found in CesiumJS's AttributeCompression module.

     八进制编码在《A Survey of Efficient Representations of Independent Unit Vectors》中有描述,八进制编码值以无符号存储,非标准化范围为[0,255],在运行时会映射成有符号的标准化范围[-1.0,1.0]。

    可以在CesiumJS的AttributeCompression模块中找到这些单元向量的的编码和解码实现。

    Batched points

    批处理点

    Points that make up distinct features of the Point Cloud may be batched together using the BATCH_ID semantic. For example, the points that make up a door in a house would all be assigned the same BATCH_ID, whereas points that make up a window would be assigned a different BATCH_ID. This is useful for per-object picking and storing application-specific metadata for declarative styling and application-specific use cases such as populating a UI or issuing a REST API request on a per-object instead of per-point basis.

    The BATCH_ID semantic may have a componentType of UNSIGNED_BYTE, UNSIGNED_SHORT, or UNSIGNED_INT. When componentType is not present, UNSIGNED_SHORT is used. The global semantic BATCH_LENGTH defines the number of unique batchId values, similar to the batchLength field in the Batched 3D Model header.

     可以使用BATCH_ID语义将构成点云不同特征的点一起批处理。例如,构成房屋里门的所有点就可以采用相同的BATCH_ID,而那些构成窗户的点采用另一个不同的BATCH_ID。

    Examples

    示例

    This section is non-normative

    这部分是非规范的。

    These examples show how to generate JSON and binary buffers for the Feature Table.

     这些示例展示了如何为特征表生成JSON和二进制缓冲区。

    Positions only

    只包含位置

    This minimal example has four points on the corners of a unit length square:

    下面这个最小的例子中,在单位长度的正方形的角上有4个点:

    var featureTableJSON = {
        POINTS_LENGTH : 4,
        POSITION : {
            byteOffset : 0
        }
    };
    
    var featureTableBinary = new Buffer(new Float32Array([
        0.0, 0.0, 0.0,
        1.0, 0.0, 0.0,
        0.0, 0.0, 1.0,
        1.0, 0.0, 1.0
    ]).buffer); 

    Positions and colors

    位置和颜色

    The following example has four points (red, green, blue, and yellow) above the globe. Their positions are defined relative to center:

    以下示例在地球上方有四个点(红色、绿色、蓝色和黄色),它们的位置是相对中心定义的。

    var featureTableJSON = {
        POINTS_LENGTH : 4,
        RTC_CENTER : [1215013.8, -4736316.7, 4081608.4],
        POSITION : {
            byteOffset : 0
        },
        RGB : {
            byteOffset : 48
        }
    };
    
    var positionBinary = new Buffer(new Float32Array([
        0.0, 0.0, 0.0,
        1.0, 0.0, 0.0,
        0.0, 0.0, 1.0,
        1.0, 0.0, 1.0
    ]).buffer);
    
    var colorBinary = new Buffer(new Uint8Array([
        255, 0, 0,
        0, 255, 0,
        0, 0, 255,
        255, 255, 0,
    ]).buffer);
    
    var featureTableBinary = Buffer.concat([positionBinary, colorBinary]);

    Quantized positions and oct-encoded normals

    量化位置和八进制法向量

    In this example, the four points will have normals pointing up [0.0, 1.0, 0.0] in oct-encoded format, and they will be placed on the corners of a quantized volume that spans from -250.0 to 250.0 units in the x and z directions:

    在这个示例中,4个点的法向量向上指向[0.0, 1.0, 0.0],并以8进制编码格式表示,并且它们将被放置量化盒的角上,量化体积在X和Z方向上从-250跨度到250.

    var featureTableJSON = {
        POINTS_LENGTH : 4,
        QUANTIZED_VOLUME_OFFSET : [-250.0, 0.0, -250.0],
        QUANTIZED_VOLUME_SCALE : [500.0, 0.0, 500.0],
        POSITION_QUANTIZED : {
            byteOffset : 0
        },
        NORMAL_OCT16P : {
            byteOffset : 24
        }
    };
    
    var positionQuantizedBinary = new Buffer(new Uint16Array([
        0, 0, 0,
        65535, 0, 0,
        0, 0, 65535,
        65535, 0, 65535
    ]).buffer);
    
    var normalOct16PBinary = new Buffer(new Uint8Array([
        128, 255,
        128, 255,
        128, 255,
        128, 255
    ]).buffer);
    
    var featureTableBinary = Buffer.concat([positionQuantizedBinary, normalOct16PBinary]);

    Batched points

    批量点

    In this example, the first two points have a batchId of 0, and the next two points have a batchId of 1. Note that the Batch Table only has two names:

    在这个示例中,前两个点共用一个batchId:0,后两个点共用一个batchId:1。注意Batch Table只有两个名称。

    var featureTableJSON = {
        POINTS_LENGTH : 4,
        BATCH_LENGTH : 2,
        POSITION : {
            byteOffset : 0
        },
        BATCH_ID : {
            byteOffset : 48,
            componentType : "UNSIGNED_BYTE"
        }
    };
    
    var positionBinary = new Buffer(new Float32Array([
        0.0, 0.0, 0.0,
        1.0, 0.0, 0.0,
        0.0, 0.0, 1.0,
        1.0, 0.0, 1.0
    ]).buffer);
    
    var batchIdBinary = new Buffer(new Uint8Array([
        0,
        0,
        1,
        1
    ]).buffer);
    
    var featureTableBinary = Buffer.concat([positionBinary, batchIdBinary]);
    
    var batchTableJSON = {
        names : ['object1', 'object2']
    };

     Per-point properties

    逐点属性

    In this example, each of the 4 points will have metadata stored in the Batch Table JSON and Binary.

    在这个示例中,4个点中每个点的元数据都存储在Batch Table的JSON和Binary部分。

    var featureTableJSON = {
        POINTS_LENGTH : 4,
        POSITION : {
            byteOffset : 0
        }
    };
    
    var featureTableBinary = new Buffer(new Float32Array([
        0.0, 0.0, 0.0,
        1.0, 0.0, 0.0,
        0.0, 0.0, 1.0,
        1.0, 0.0, 1.0
    ]).buffer);
    
    var batchTableJSON = {
        names : ['point1', 'point2', 'point3', 'point4']
    };

    Batch Table

    批处理表

    The Batch Table contains application-specific metadata, indexable by batchId, that can be used for declarative styling and application-specific use cases such as populating a UI or issuing a REST API request.

    • If the BATCH_ID semantic is defined, the Batch Table stores metadata for each batchId, and the length of the Batch Table arrays will equal BATCH_LENGTH.
    • If the BATCH_ID semantic is not defined, then the Batch Table stores per-point metadata, and the length of the Batch Table arrays will equal POINTS_LENGTH.

    See the Batch Table reference for more information.

     批处理表包含特定应用程序的元数据(通过batchId索引),可以用于声明式样式和特定应用程序用例,例如填充UI或发出REST API请求。

    • 如果定义了BATCH_ID,批处理表就会存储每个batchId对应的元数据,批处理表数组的长度将等于BATCH_LENGTH。
    • 如果没有定义BATCH_ID,批处理表就会逐点存储元数据,批处理表的数组长度将等于POINTS_LENGTH。

    Extensions

    扩展

    The following extensions can be applied to a Point Cloud tile.

     下面的扩展可以应用到点云瓦片中。

    File extension and MIME type

    文件扩展和MIME类型

    Point cloud tiles use the .pnts extension and application/octet-stream MIME type.

    An explicit file extension is optional. Valid implementations may ignore it and identify a content's format by the magic field in its header.

     点云瓦片使用.pnts扩展名,MIME类型为application/actet-stream.

    显式文件扩展名是可选的,有效的实现可能会忽略扩展名,直接从文件头的magic字段中识别内容格式。

    Implementation example

    This section is non-normative

    Code for reading the header can be found in PointCloud3DModelTileContent.js in the CesiumJS implementation of 3D Tiles.

     本节是不规范的

    读取文件头的代码可以在CesiumJS的3D瓦片实现PointCloud3DModelTileContent.js中找到。

    Property reference


     Point Cloud Feature Table

    点云要素表

    A set of Point Cloud semantics that contains values defining the position and appearance properties for points in a tile.

    一组点云语义,其中包含定义图块中点的位置和外观属性的值。

    Properties

     TypeDescriptionRequired
    extensions object Dictionary object with extension-specific objects. No
    extras any Application-specific data. No
    POSITION object A BinaryBodyReference object defining the reference to a section of the binary body where the property values are stored. See the corresponding property semantic in Semantics. No
    POSITION_QUANTIZED object A BinaryBodyReference object defining the reference to a section of the binary body where the property values are stored. See the corresponding property semantic in Semantics. No
    RGBA object A BinaryBodyReference object defining the reference to a section of the binary body where the property values are stored. See the corresponding property semantic in Semantics. No
    RGB object A BinaryBodyReference object defining the reference to a section of the binary body where the property values are stored. See the corresponding property semantic in Semantics. No
    RGB565 object A BinaryBodyReference object defining the reference to a section of the binary body where the property values are stored. See the corresponding property semantic in Semantics. No
    NORMAL object A BinaryBodyReference object defining the reference to a section of the binary body where the property values are stored. See the corresponding property semantic in Semantics. No
    NORMAL_OCT16P object A BinaryBodyReference object defining the reference to a section of the binary body where the property values are stored. See the corresponding property semantic in Semantics. No
    BATCH_ID object A BinaryBodyReference object defining the reference to a section of the binary body where the property values are stored. See the corresponding property semantic in Semantics. No
    POINTS_LENGTH object, number [1], number A GlobalPropertyInteger object defining an integer property for all points. See the corresponding property semantic in Semantics. white_check_mark Yes
    RTC_CENTER object, number [3] A GlobalPropertyCartesian3 object defining a 3-component numeric property for all points. See the corresponding property semantic in Semantics. No
    QUANTIZED_VOLUME_OFFSET object, number [3] A GlobalPropertyCartesian3 object defining a 3-component numeric property for all points. See the corresponding property semantic in Semantics. No
    QUANTIZED_VOLUME_SCALE object, number [3] A GlobalPropertyCartesian3 object defining a 3-component numeric property for all points. See the corresponding property semantic in Semantics. No
    CONSTANT_RGBA object, number [4] A GlobalPropertyCartesian4 object defining a 4-component numeric property for all points. See the corresponding property semantic in Semantics. No
    BATCH_LENGTH object, number [1], number A GlobalPropertyInteger object defining an integer property for all points. See the corresponding property semantic in Semantics. No

    Additional properties are allowed.

     

    PointCloudFeatureTable.extensions

    Dictionary object with extension-specific objects.

    • Type: object
    • Required: No
    • Type of each property: Extension

     

    PointCloudFeatureTable.extras

    Application-specific data.

    • Type: any
    • Required: No

     

    PointCloudFeatureTable.POSITION

    A BinaryBodyReference object defining the reference to a section of the binary body where the property values are stored. See the corresponding property semantic in Semantics.

    • Type: object
    • Required: No

     

    PointCloudFeatureTable.POSITION_QUANTIZED

    A BinaryBodyReference object defining the reference to a section of the binary body where the property values are stored. See the corresponding property semantic in Semantics.

    • Type: object
    • Required: No

     

    PointCloudFeatureTable.RGBA

    A BinaryBodyReference object defining the reference to a section of the binary body where the property values are stored. See the corresponding property semantic in Semantics.

    • Type: object
    • Required: No

     

    PointCloudFeatureTable.RGB

    A BinaryBodyReference object defining the reference to a section of the binary body where the property values are stored. See the corresponding property semantic in Semantics.

    • Type: object
    • Required: No

     

    PointCloudFeatureTable.RGB565

    A BinaryBodyReference object defining the reference to a section of the binary body where the property values are stored. See the corresponding property semantic in Semantics.

    • Type: object
    • Required: No

     

    PointCloudFeatureTable.NORMAL

    A BinaryBodyReference object defining the reference to a section of the binary body where the property values are stored. See the corresponding property semantic in Semantics.

    • Type: object
    • Required: No

     

    PointCloudFeatureTable.NORMAL_OCT16P

    A BinaryBodyReference object defining the reference to a section of the binary body where the property values are stored. See the corresponding property semantic in Semantics.

    • Type: object
    • Required: No

     

    PointCloudFeatureTable.BATCH_ID

    A BinaryBodyReference object defining the reference to a section of the binary body where the property values are stored. See the corresponding property semantic in Semantics.

    • Type: object
    • Required: No

     

    PointCloudFeatureTable.POINTS_LENGTH white_check_mark

    A GlobalPropertyInteger object defining an integer property for all points. See the corresponding property semantic in Semantics.

    • Type: object, number [1], number
    • Required: Yes

     

    PointCloudFeatureTable.RTC_CENTER

    A GlobalPropertyCartesian3 object defining a 3-component numeric property for all points. See the corresponding property semantic in Semantics.

    • Type: object, number [3]
    • Required: No

     

    PointCloudFeatureTable.QUANTIZED_VOLUME_OFFSET

    A GlobalPropertyCartesian3 object defining a 3-component numeric property for all points. See the corresponding property semantic in Semantics.

    • Type: object, number [3]
    • Required: No

     

    PointCloudFeatureTable.QUANTIZED_VOLUME_SCALE

    A GlobalPropertyCartesian3 object defining a 3-component numeric property for all points. See the corresponding property semantic in Semantics.

    • Type: object, number [3]
    • Required: No

     

    PointCloudFeatureTable.CONSTANT_RGBA

    A GlobalPropertyCartesian4 object defining a 4-component numeric property for all points. See the corresponding property semantic in Semantics.

    • Type: object, number [4]
    • Required: No

     

    PointCloudFeatureTable.BATCH_LENGTH

    A GlobalPropertyInteger object defining an integer property for all points. See the corresponding property semantic in Semantics.

    • Type: object, number [1], number
    • Required: No

     

    BinaryBodyReference

    An object defining the reference to a section of the binary body of the features table where the property values are stored if not defined directly in the JSON.

    Properties

     TypeDescriptionRequired
    byteOffset number The offset into the buffer in bytes. white_check_mark Yes

    Additional properties are allowed.

     

    BinaryBodyReference.byteOffset white_check_mark

    The offset into the buffer in bytes.

    • Type: number
    • Required: Yes
    • Minimum: >= 0

     

    GlobalPropertyCartesian3

    An object defining a global 3-component numeric property value for all features.


     

    GlobalPropertyCartesian4

    An object defining a global 4-component numeric property value for all features.


     

    GlobalPropertyInteger

    An object defining a global integer property value for all features.


    Property

    A user-defined property which specifies per-feature application-specific metadata in a tile. Values either can be defined directly in the JSON as an array, or can refer to sections in the binary body with a BinaryBodyReference object.

  • 相关阅读:
    实验4-2-4 换硬币 (20分)
    实验4-1-4 求整数的位数及各位数字之和 (15分)
    实验4-1-10 兔子繁衍问题 (15分)
    实验4-1-7 特殊a串数列求和 (20分)
    实验4-1-3 找出最小值 (20分)
    实验4-1-2 求奇数和 (15分)
    实验4-1-1 最大公约数和最小公倍数 (15分)emmm辗转相除法
    实验3-10 高速公路超速处罚 (15分)
    1.使用Lucene开发自己的搜索引擎--倒排索引基础知识
    办公自动化项目从无到有-第三篇系统管理模块
  • 原文地址:https://www.cnblogs.com/HandyLi/p/15498045.html
Copyright © 2011-2022 走看看