CloudCollection#add
.
and CloudCollection#remove
. Do not call the constructor directly.
CloudCollection
.
Example cumulus clouds
Performance:
Similar to Billboard
, reading a property, e.g., CumulusCloud#show
,
takes constant time. Assigning to a property is constant time but results in
CPU to GPU traffic when CloudCollection#update
is called. The per-cloud traffic is
the same regardless of how many properties were updated. If most clouds in a collection need to be
updated, it may be more efficient to clear the collection with CloudCollection#removeAll
and add new clouds instead of modifying each one.
成员(属性)
cloud.brightness = 1.0; |
cloud.brightness = 0.6; |
cloud.brightness = 0.0; |
-
默认值:
1.0
-
默认值:
Color.WHITE
maximumSize : Cartesian3
Gets or sets the maximum size of the cumulus cloud rendered on the billboard. This defines a maximum ellipsoid volume that the cloud can appear in. Rather than guaranteeing a specific size, this specifies a boundary for the cloud to appear in, and changing it can affect the shape of the cloud.
Changing the z-value of maximumSize
has the most dramatic effect
on the cloud's appearance because it changes the depth of the cloud, and thus the
positions at which the cloud-shaping texture is sampled.
cloud.maximumSize = new Cesium.Cartesian3(14, 9, 10); |
cloud.maximumSize.x = 25; |
cloud.maximumSize.y = 5; |
cloud.maximumSize.z = 17; |
To modify the billboard's actual size, modify the cloud's scale
property.
Gets or sets the scale of the cumulus cloud billboard in meters.
The scale
property will affect the size of the billboard,
but not the cloud's actual appearance.
cloud.scale = new Cesium.Cartesian2(12, 8); |
cloud.scale = new Cesium.Cartesian2(24, 10); |
To modify the cloud's appearance, modify its maximumSize
and slice
properties.
-
默认值:
true
Gets or sets the "slice" of the cloud that is rendered on the billboard, i.e. the specific cross-section of the cloud chosen for the billboard's appearance. Given a value between 0 and 1, the slice specifies how deeply into the cloud to intersect based on its maximum size in the z-direction.
cloud.slice = 0.32; |
cloud.slice = 0.5; |
cloud.slice = 0.6; |
Due to the nature in which this slice is calculated,
values below 0.2
may result in cross-sections that are too small,
and the edge of the ellipsoid will be visible. Similarly, values above 0.7
will cause the cloud to appear smaller. Values outside the range [0.1, 0.9]
should be avoided entirely because they do not produce desirable results.
cloud.slice = 0.08; |
cloud.slice = 0.8; |
If slice
is set to a negative number, the cloud will not render a cross-section.
Instead, it will render the outside of the ellipsoid that is visible. For clouds with
small values of `maximumSize.z`, this can produce good-looking results, but for larger
clouds, this can result in a cloud that is undesirably warped to the ellipsoid volume.
cloud.slice = -1.0; |
cloud.slice = -1.0; |
-
默认值:
-1.0