# WaterReflection

#### new Cesium.WaterReflection(options) → Object
MapGIS/Material/WaterReflection.js 79

创建反射水面的实例化对象

Name | Type | Description
--- | --- | ---
`options` | Object | 创建反射水面的参数
Name | Type | Default | Description
--- | --- | --- | ---
`viewer` | Viewer |  | 显示三维地球场景的对象
`positions` | Array.<Cartographic> |  | 构成水面的若干个坐标点
`rippleSize` | Number | `100.0` | optional 水面的波纹大小
`flowDegrees` | Number | `0` | optional 水流方向的角度，表示纹理坐标的旋转，以弧度为单位
`height` | Number | `0.0` | optional 水面的高度
`normalMapUrl` | String | `buildModuleUrl('Assets/Textures/waterNormalsSmall.jpg')` | optional 水面的法线贴图
`waterColor` | Color | `Color(0.2, 0.3, 0.6, 1.0)` | optional 水面的颜色
`waterAlpha` | Number | `0.9` | optional 水面的透明度
`reflectivity` | Number | `0.35` | optional 水面的反射率
`lightDirection` | Cartesian3 | `Cartesian3(0, 0, 1)` | optional 反射光线的方向
`sunShiny` | Number | `100.0` | optional 反射光线的强度
`distortionScale` | Number | `25.0` | optional 水面反射的扭曲尺度
`flowSpeed` | Number | `10.0` | optional 水流的速度

##### Returns:

返回根据参数所生成的反射水面实例化对象

##### Example:

    // 初始化视图对象
    var viewer = new Cesium.Viewer("cesiumContainer");
    // 加载模型
    var url = 'http://develop.smaryun.com:6163/igs/rest/g3d/ZondyModels';
    var index = viewer.scene.layers.appendSceneLayer(url, { duration: 1, maximumScreenSpaceError: 8 });
    // 创建反射水面的范围
    var positions = [
      Cesium.Cartographic.fromDegrees(114.3972, 30.4710, 0.0),
      Cesium.Cartographic.fromDegrees(114.4053, 30.4710, 0.0),
      Cesium.Cartographic.fromDegrees(114.4053, 30.4638, 0.0),
      Cesium.Cartographic.fromDegrees(114.3972, 30.4638, 0.0),
    ];
    // 实例化反射水面的对象
    var water = new Cesium.WaterReflection({
      viewer: viewer,
      positions: positions,
      distortionScale: 2.0,
    });

### Members

#### distortionScale : Number
MapGIS/Material/WaterReflection.js 647

获取或设置反射水面的扭曲尺度，值越大则反射贴图的扭曲程度越高

#### flowSpeed : Number
MapGIS/Material/WaterReflection.js 662

获取或设置反射水面的水流速度，值越大则水流速度越快，该参数仅表示视觉上的水流速度，并不与物理世界的速度相关联

#### height : Number
MapGIS/Material/WaterReflection.js 677

获取或设置反射水面的高度

#### reflectivity : Number
MapGIS/Material/WaterReflection.js 632

获取或设置反射水面的反射率，取值范围为[0,1]，值越大则反射率越高

#### rippleSize : Number
MapGIS/Material/WaterReflection.js 587

获取或设置反射水面的波纹大小，数值越大波纹则波纹越密集

#### waterAlpha : Number
MapGIS/Material/WaterReflection.js 602

获取或设置反射水面的透明度，取值范围为[0,1]，0表示全透明，1表示不透明

#### waterColor : Color
MapGIS/Material/WaterReflection.js 617

获取或设置反射水面的颜色

### Methods

#### destroy()
MapGIS/Material/WaterReflection.js 851

销毁反射水面的实例化对象