业务咨询
开发咨询
微信沟通

Class: GeoBuildingRenderer

CMAP~ GeoBuildingRenderer

GeoBuilding样式类


new GeoBuildingRenderer(geoBuilding, param)

构造函数

Parameters:
Name Type Description
geoBuilding CMAP.GeoBuilding

要渲染的GeoBuilding实例

param Object

参数列表

Properties
Name Type Description
type String

GeoBuilding的渲染类型 支持vector,image 默认为vector

color String | Array | Number

当type=vector时生效 填充颜色 默认白色

opacity Number

填充不透明度 默认1

imageUrl Array | String

当type=image时生效 贴图路径

textureWrap String

当type=image时生效 贴图循环方式 CMAP.TextureWrapMode.Stretch 拉伸,CMAP.TextureWrapMode.RepeatY 高度方向平铺 CMAP.TextureWrapMode.Repeat 水平和高度方向均平铺 默认CMAP.TextureWrapMode.RepeatY

textureSize Array

当type=image且textureWrap为RepeatY或Repeat时生效 代表纹理尺寸 数组的每一个值必须大于0 单位:米 GeoBuilding的默认值是[3,3] GeoPolygon的默认值是多边形区域外包矩形的长和宽(基于WebMercator投影计算)

blending Boolean

是否混合 默认不开启

lights Boolean

是否接受光照 type为vector默认是true type为image默认是false type为cool为true切不可修改

useWindow Boolean

是否开启窗户效果 type为cool默认true 其他默认false

useColor Boolean

是否使用颜色叠加 即type为image和cool时 color是否生效 type为image默认值false type为cool默认值为true

windowImageUrl String

窗户贴图的url

windowColor String

窗户颜色 默认白色

windowTextureWrap String

纹理环绕方式 around--环绕 normal--随贴图

windowTextureSize Array

窗户纹理尺寸 仅windowTextureWrap为around时生效 数组的每一个值必须大于0 默认值[300,300]

offset Array

当type=cool时生效 设置窗户贴图的偏移值 array[0]代表x轴偏移,array[1]代表y轴偏移

repeat Array

当type=cool时生效 设置窗户贴图的重复度 array[0]代表x轴重复度,array[1]代表y轴重复度

Members


blending :Boolean

是否混合

Type:
  • Boolean
Example
geoObject.renderer.blending = true;

color :String|Array|Number

设置楼宇填充色 在type为vector时生效

Type:
  • String | Array | Number
Example
geoObject.renderer.type = 'vector';//设置楼的渲染类型为vector(纯色)
geoObject.renderer.color = 'rgb(255,0,0)'; //将颜色设置为红色

extrudeFactor :Number

高度拉伸倍数

Type:
  • Number
Deprecated:
  • 推荐使用geoBuilding.extrudeFactor
Example
geoObject.renderer.extrudeFactor = 2; //设置楼高度放大倍数

extrudeField :String

高度属性字段

Type:
  • String
Deprecated:
  • 推荐使用geoBuilding.extrudeField
Example
geoObject.renderer.extrudeField = 'height'; //设置楼的高度属性字段,该字段可在geoBuilding.userData中找到

imageUrl :Array|String

贴图url 包括顶部的贴图和侧面的贴图 数组第一个代表顶部贴图,第二个代表侧面贴图
如果不区分顶部和侧面,数组中就只有一个元素或者传字符串

Type:
  • Array | String
Example
//设置楼顶部的贴图和侧面的贴图,第一个代表顶部贴图路径,第二个代表侧面的贴图路径
geoObject.renderer.type = 'image';//设置楼的渲染类型为image(贴图)
geoObject.renderer.imageUrl = ['./temp/image1.png','./temp/image1.png'];

lights :Boolean

Type:
  • Boolean
Example
geoObject.renderer.lights = true;

opacity :Number

填充色不透明度 仅在type为vector情况下生效

Type:
  • Number
Example
geoObject.renderer.opacity = 1; //将不透明度设置为1

specularFactor :Array

设置高光强度 [顶面,侧面]

Type:
  • Array
Example
geoObject.renderer.specularFactor = [1,1];

speed :Array

贴图流动速度 [x轴流动速度,y轴流动速度]

Type:
  • Array

textureSize :Array

纹理尺寸单位米 如果是GeoBuilding,侧面贴图时会根据纹理尺寸去计算uv 在textureWrap为repeatY时 设置数组第二个参数生效 第一个参数无效 如果是GeoPolygon,顶面贴图时会根据纹理尺寸去计算uv

Type:
  • Array
Example
geoObject.renderer.textureSize = [3,3];  // 设置贴图纹理尺寸为3*3m

textureWrap :String

设置贴图循环方式,仅对GeoBuilding生效 CMAP.TextureWrapMode.Stretch 拉伸,CMAP.TextureWrapMode.RepeatY 高度方向平铺 CMAP.TextureWrapMode.Repeat 水平和高度方向均平铺

Type:
  • String
Example
geoObject.renderer.textureWrap = CMAP.TextureWrapMode.RepeatY;

type :String

设置楼宇材质类型 vector或image

Type:
  • String
Example
geoObject.renderer.type = 'image'; //设置楼的渲染类型为image(贴图) 设置该属性后需要设置imageUrl
geoObject.renderer.type = 'vector'; //设置楼的渲染类型为vector(纯色) 设置该属性后需要设置color

useColor :Boolean

贴图情况下是否叠加颜色(type=image时 color是否生效)

Type:
  • Boolean

useWindow :Boolean

是否使用窗体效果

Type:
  • Boolean

uvRatio :Array

type为image时生效 代表贴图在x和y方向的重复次数

Type:
  • Array
Example
geoObject.renderer.uvRatio = [10,10];

windowSpeed :Array

窗体贴图流动速度 [x轴流动速度,y轴流动速度]

Type:
  • Array