Projected Media Surface
Constructors
Properties
AltitudeMode used by movable object
Indicates the shape's normal (non-highlight) attributes.
Base altitude level of shape sides. Is dependent on altitudeMode. Ground level by default.
3D-projection-only soft-edge fade margin in normalised UV units (range 0..0.5). The fragment shader ramps interior alpha 0..1 across the inner 0..fadeMargin strip on each side, blending the projection's frustum boundary into the surrounding terrain instead of guillotining at the unit-square edge.
Indicates the shape's highlight attributes.
Optional 4x4 matrix mapping a world WGS84-ECEF position to image clip space, applied per-fragment on the terrain surface. When non-null the shape switches from the planar 2D-homography path (which approximates as if the four corners lie on a flat plane) to a true 3D camera-frustum projection path that's mathematically correct over arbitrary relief.
Draw sides of the shape which extend from the defined position and altitude to baseAltitude level.
Determines whether this shape's geometry follows the terrain surface or is fixed at a constant altitude.
Indicates whether the shape is highlighted.
true when this shape's referencePosition coincides with where the user actually sees the shape (Placemark, Label, sightlines — the reference is the rendered location). false for shapes whose reference is computed from extended geometry and may sit far from where the user grabbed (Polygon centroid, Path centroid, Mesh).
Optional lambda to control current shape visibility based on its attributes and frame render context
Maximum number of intermediate edge intervals across a half-equator (PI radians) of arc. Per-edge subdivision count is scaled by edge length: steps = round(maximumNumEdgeIntervals * distanceRadians / PI), then further adjusted by polarThrottle near the poles for surface shapes. 3D shapes use the unthrottled count. A value of 0 disables intermediate vertex generation.
Pole-throttle factor: higher values shrink the subdivision step near ±90° latitude so the straight 2D lon/lat segments between samples more closely follow the true great-circle path. A value of 0 disables throttling (uniform step).
A position associated with the object that indicates its aggregate geographic position. The chosen position varies among implementers of this interface. For objects defined by a list of positions, the reference position is typically the first position in the list. For symmetric objects the reference position is often the center of the object. In many cases the object's reference position may be explicitly specified by the application.
Direct GPU-backed Texture for the quad's interior. Takes precedence over ShapeAttributes.interiorImageSource when set. Use this for content that's already on the GPU - e.g. an Android SurfaceTexture driven by MediaPlayer (typically wrapped as an earth.worldwind.render.OesExternalTexture) or any render-to-texture output. When the texture's target is GL_TEXTURE_EXTERNAL_OES, the OES variant of the surface quad shader is used automatically; the interior projection logic is otherwise unchanged.
Functions
Apply simplestyle stroke / fill / stroke-width to a Path or Polygon's attributes. Writes outline / interior color only when there's an explicit value to apply — either the feature's stroke / fill property OR a non-null defaultLineColor / defaultFillColor. With both null (the default), an absent property leaves the renderable's existing color alone — important when the layer's shapeAttributes supplied an intentional template colour at construction time (e.g. Shapefile's translucent blue) that would otherwise be clobbered by auto-style.