产品服务
解决方案
文档与支持
定价

粒子效果

下载开发文档

鸿蒙地图SDK支持在地图上展示粒子效果,目前支持:雪花、雷雨、雾霾、沙尘、烟花、花瓣多种效果展示及自定义粒子效果。

示例代码

// 添加雪花粒子效果
this.mapController?.showParticleEffectByType(SysEnum.ParticleEffectType.Snow);
private async createBitmapDescriptor(res: Resource): Promise<image.PixelMap> {
const context = getContext();
const uint8 = await context.resourceManager.getMediaContent(res.id);
const buffer = uint8.buffer.slice(uint8.byteOffset, uint8.byteOffset + uint8.byteLength);
const imageSource = image.createImageSource(buffer);
const decodingOptions: image.DecodingOptions = {
editable: false,
desiredPixelFormat: 3,
};
const pixelMap = await imageSource.createPixelMap(decodingOptions);
imageSource.release();
return pixelMap;
}
// 添加自定义粒子效果
const particleOptions = new ParticleOptions();
const position = new LatLng(39.914935, 112.403119);
particleOptions.setParticlePos(position);
const particleImgs: Array<image.PixelMap> = [];
const bullet = await this.createBitmapDescriptor($r('app.media.icon'));
const tail = await this.createBitmapDescriptor($r('app.media.icon'));
particleImgs.push(bullet, tail);
particleOptions.setParticleImgs(particleImgs);
await this.mapController?.customParticleEffectByType(
SysEnum.ParticleEffectType.Fireworks,
particleOptions
);
// 关闭粒子效果
this.mapController?.closeParticleEffectByType(SysEnum.ParticleEffectType.Snow);

展示效果如下:

上一篇

位置短地址分享

下一篇

请求状态码说明

本篇文章对您是否有帮助?