new Geometry
        A geometry representation with attributes forming vertices and optional index data
defining primitives.  Geometries and an Appearance, which describes the shading,
can be assigned to a Primitive for visualization.  A Primitive can
be created from many heterogeneous - in many cases - geometries for performance.
In low-level rendering code, a vertex array can be created from a geometry using Context#createVertexArrayFromGeometry.
Geometries can be transformed and optimized using functions in GeometryPipeline.
Parameters:
| Name | Type | Argument | Description | 
|---|---|---|---|
| options.attributes | GeometryAttributes | Attributes, which make up the geometry's vertices. | |
| options.primitiveType | PrimitiveType | The type of primitives in the geometry. | |
| options.indices | Array | <optional> | Optional index data that determines the primitives in the geometry. | 
| options.boundingSphere | BoundingSphere | <optional> | An optional bounding sphere that fully enclosed the geometry. | 
Example
// Create geometry with a position attribute and indexed lines.
var positions = new Float64Array([
  0.0, 0.0, 0.0,
  7500000.0, 0.0, 0.0,
  0.0, 7500000.0, 0.0
]);
var geometry = new Cesium.Geometry({
  attributes : {
    position : new Cesium.GeometryAttribute({
      componentDatatype : Cesium.ComponentDatatype.DOUBLE,
      componentsPerAttribute : 3,
      values : positions
    })
  },
  indices : new Uint16Array([0, 1, 1, 2, 2, 0]),
  primitiveType : Cesium.PrimitiveType.LINES,
  boundingSphere : Cesium.BoundingSphere.fromVertices(positions)
});
    
	
	
	
	
Members
- 
    attributes :GeometryAttributes
- 
    
    Attributes, which make up the geometry's vertices. Each property in this object corresponds to a GeometryAttribute containing the attribute's data.Attributes are always stored non-interleaved in a Geometry. When geometry is prepared for rendering with Context#createVertexArrayFromGeometry, attributes are generally written interleaved into the vertex buffer for better rendering performance. There are reserved attribute names with well-known semantics. The following attributes are created by a Geometry (depending on the provided VertexFormat. - position- 3D vertex position. 64-bit floating-point (for precision). 3 components per attribute. See VertexFormat#position.
- normal- Normal (normalized), commonly used for lighting. 32-bit floating-point. 3 components per attribute. See VertexFormat#normal.
- st- 2D texture coordinate. 32-bit floating-point. 2 components per attribute. See VertexFormat#st.
- binormal- Binormal (normalized), used for tangent-space effects like bump mapping. 32-bit floating-point. 3 components per attribute. See VertexFormat#binormal.
- tangent- Tangent (normalized), used for tangent-space effects like bump mapping. 32-bit floating-point. 3 components per attribute. See VertexFormat#tangent.
 The following attribute names are generally not created by a Geometry, but are added to a Geometry by a Primitive or GeometryPipeline functions to prepare the geometry for rendering. - position3DHigh- High 32 bits for encoded 64-bit position computed with GeometryPipeline.encodeAttribute. 32-bit floating-point. 4 components per attribute.
- position3DLow- Low 32 bits for encoded 64-bit position computed with GeometryPipeline.encodeAttribute. 32-bit floating-point. 4 components per attribute.
- position3DHigh- High 32 bits for encoded 64-bit 2D (Columbus view) position computed with GeometryPipeline.encodeAttribute. 32-bit floating-point. 4 components per attribute.
- position2DLow- Low 32 bits for encoded 64-bit 2D (Columbus view) position computed with GeometryPipeline.encodeAttribute. 32-bit floating-point. 4 components per attribute.
- color- RGBA color (normalized) usually from GeometryInstance#color. 32-bit floating-point. 4 components per attribute.
- pickColor- RGBA color used for picking, created from Context#createPickId. 32-bit floating-point. 4 components per attribute.
 Examplegeometry.attributes.position = new Cesium.GeometryAttribute({ componentDatatype : Cesium.ComponentDatatype.FLOAT, componentsPerAttribute : 3, values : new Float32Array() });- Default Value:
- undefined
 
 See:
- 
    boundingSphere :BoundingSphere
- 
    
    An optional bounding sphere that fully encloses the geometry. This is commonly used for culling.- Default Value:
- undefined
 
 
- 
    indices :Array
- 
    
    Optional index data that - along with Geometry#primitiveType - determines the primitives in the geometry.- Default Value:
- undefined
 
 
- 
    primitiveType :PrimitiveType
- 
    
    The type of primitives in the geometry. This is most often PrimitiveType.TRIANGLES, but can varying based on the specific geometry.- Default Value:
- undefined
 
 
Methods
- 
    <static> computeNumberOfVertices
- 
    
    
    Computes the number of vertices in a geometry. The runtime is linear with respect to the number of attributes in a vertex, not the number of vertices. Parameters:Name Type Description geometryCartesian3 The geometry. Returns:Number The number of vertices in the geometry.Examplevar numVertices = Cesium.Geometry.computeNumberOfVertices(geometry); 
