resium
Version:
React components for Cesium
34 lines (25 loc) • 1 kB
text/typescript
import { CumulusCloud as CesiumCumulusCloud } from "cesium";
import { createCesiumComponent, PickCesiumProps } from "../core";
/*
@summary
`CumulusCloud` is a Cloud primitive in the `CloudCollection`.
*/
/*
@scope
Only inside [CloudCollection](/components/CloudCollection) component.
A CumulusCloud object will be attached to the parent CloudCollection.
*/
export type CumulusCloudCesiumProps = PickCesiumProps<CesiumCumulusCloud, typeof cesiumProps>;
export type CumulusCloudProps = CumulusCloudCesiumProps;
const cesiumProps = ["show", "position", "scale", "maximumSize", "slice", "brightness"] as const;
const CumulusCloud = createCesiumComponent<CesiumCumulusCloud, CumulusCloudProps>({
name: "CumulusCloud",
create: (context, props) => context.cloudCollection?.add(props),
destroy(element, context) {
if (context.cloudCollection && !context.cloudCollection.isDestroyed()) {
context.cloudCollection.remove(element);
}
},
cesiumProps,
});
export default CumulusCloud;