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

Class: GeoPolygonRenderer

CMAP~ GeoPolygonRenderer

GeoPolygon样式类


new GeoPolygonRenderer(geoPoloygon, param)

构造函数

Parameters:
Name Type Description
geoPoloygon CMAP.GeoPolygon

需要设置样式的GeoPolygon

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时生效 贴图路径

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轴重复度

outlineType String

线的类型 type有vector(纯色)和image(贴图)两种

outlineLineType String

GeoLine的线的类型 支持Line(宽度为1个像素),Pipe(管状线),Plane(片状线,可以设置宽度,宽度不随距离远近变化,像素级) Route(道路线,宽度代表实际距离)

outlineImageUrl String

type=image 贴图url

outlineWidth Number

线宽度

outlineSizeAttenuation Boolean

lineType为Plane时 线宽度是否代表实际像素大小 默认false

outlineSpeed Number

流动速度 默认0

outlineEffect Boolean

是否开启特效 默认false

outlineColor String | Array | Number

type=vector 线填充色(rgba数组) 默认白色

outlineOpacity Array

线不透明度 默认1

outlineUvRatio Array

贴图在x轴和y轴的重复次数 默认[1,1]

outlineBlending Boolean

设置线的混色,type为image 默认为true type为vector 默认false

outlineTextureWrap Number

当type=image时生效 贴图循环方式 CMAP.TextureWrapMode.Stretch 拉伸,CMAP.TextureWrapMode.Repeat 平铺

outlineTextureSize Number

type=image 且textureWrap为CMAP.TextureWrapMode.Repeat时生效 含义为贴图代表的实际距离(单位:米) 默认1

outlineGrowSpeed Number

线生长速度,默认是0,不生长

outlineGrowLoop Boolean

线生长是否循环,默认是THING.LoopType.Repeat 循环生长

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:
  • 推荐使用geoObject.extrudeFactor
Example
geoObject.renderer.extrudeFactor = 2; //设置楼高度放大倍数

extrudeField :String

高度属性字段

Type:
  • String
Deprecated:
  • 推荐使用geoObject.extrudeField
Example
geoObject.renderer.extrudeField = 'height'; //设置楼的高度属性字段,该字段可在geoObject.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
geoItem.renderer.opacity = 1; //将不透明度设置为1

outlineBlending :Boolean

设置边线的混色,type为image 默认为true type为vector 默认false

Type:
  • Boolean
Example
geoObject.renderer.outlineBlending = true; //设置边线的叠加混色

outlineColor :String|Array|Number

outlineType=vector时 边线填充颜色(rgb) 默认是[255,0,0]

Type:
  • String | Array | Number
Example
geoLine.renderer.outlineType = 'vector';
geoLine.renderer.outlineColor = 'rgb(255,0,0)'; //线填充颜色设为红色 仅当type=vector时生效

outlineColorMapping :Object

设置边线渐变色填充

Type:
  • Object
Example
geoItem.renderer.outlineColorMapping = {'0':'rgb(255,0,0)', '0.5':'rgb(0,255,0)', '1.0':'rgb(0,0,255)'};

outlineEffect :Boolean

边线是否开启发光特效

Type:
  • Boolean
Example
geoObject.renderer.outlineEffect = true; //线开启发光特效

outlineGlowStrength :Number

设置边线发光强度,前提是开启了effect

Type:
  • Number
Example
geoObject.renderer.outlineGlowStrength = 1.0;

outlineGrowLoop :Boolean

边线生长是否循环

Type:
  • Boolean
Example
geoLine.renderer.outlineGrowLoop = THING.LoopType.Repeat; //设置线循环生长

outlineGrowSpeed :Number

边线的生长速度

Type:
  • Number
Example
geoObject.renderer.outlineGrowSpeed = 1; //线生长速度1

outlineImageUrl :String

outlineType=image时 边线贴图url

Type:
  • String
Example
geoObject.renderer.outlineType = 'image';//线的类型设为image(贴图)
geoObject.renderer.outlineImageUrl = 'example.com/1.png'; //线的贴图url设为'example.com/1.png' 仅当type=vector时生效

outlineLineType :String

边线的形状 有Line(宽度为1个像素的像素线),Plane(可设置宽度的像素线),Pipe(管状线),Route(道路线)四种

Type:
  • String
Example
geoObject.renderer.outlineLineType = 'Plane'; //线的形状设为Plane(可设置宽度的像素线)
geoObject.renderer.outlineLineType = 'Line'; //线的形状设为Line(一个像素的线)
geoObject.renderer.outlineLineType = 'Pipe'; //线的形状设为Pipe(管状线,宽度单位是实际大小)
geoObject.renderer.outlineLineType = 'Route'; //线的形状设为Route(道路线,宽度单位是实际大小)

outlineOpacity :Number

边线填充色不透明度

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

outlineSizeAttenuation :Boolean

outlineLineType为Plane时 边线宽度是否代表实际像素大小 默认false

Type:
  • Boolean
Example
geoObject.renderer.outlineSizeAttenuation = true; //设置线宽度代表实际像素大小

outlineSpeed :Number

边线流动速度

Type:
  • Number
Example
geoObject.renderer.outlineSpeed = 2; //线的流动速度设为2

outlineTextureWrap :String

边线贴图模式

Type:
  • String
Example
geoObject.renderer.outlineTextureWrap = 'stretch';

outlineType :String

边线的渲染类型 type有vector(纯色)和image(贴图)两种

Type:
  • String
Example
geoObject.renderer.outlineType = 'vector'; //线的类型设为vector(纯色)
geoObject.renderer.outlineType = 'image'; //线的类型设为image(贴图)

outlineUvRatio :Array

边线贴图在x轴和y轴的重复次数

Type:
  • Array

outlineWidth :Number

边线宽度 参考GeoLineRenderer中的width

Type:
  • Number
Example
geoObject.renderer.outlineWidth = 10; //线的宽度设为10

specularFactor :Number

设置高光强度

Type:
  • Number
Example
geoObject.renderer.specularFactor = 1;

textureSize :Array

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

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

textureWrap :String

设置贴图循环方式,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

useBoundary :Boolean

多边形是否使用围栏 默认false

Type:
  • Boolean

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];