当前位置: 首页 > 文档资料 > ThingJS 文档中心 >

Class: GeoPolygonRenderer

优质
小牛编辑
127浏览
2023-12-01

CMAP~ GeoPolygonRenderer

GeoPolygon样式类


new GeoPolygonRenderer(geoPoloygon, param)

构造函数

Parameters:
NameTypeDescription
geoPoloygonCMAP.GeoPolygon

需要设置样式的GeoPolygon

paramObject

参数列表

Properties
NameTypeDescription
typeString

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

colorString | Array | Number

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

opacityNumber

填充不透明度 默认1

imageUrlArray | String

当type=image时生效 贴图路径

textureWrapString

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

textureSizeArray

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

blendingBoolean

是否混合 默认不开启

lightsBoolean

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

useWindowBoolean

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

windowImageUrlString

窗户贴图的url

windowColorString

窗户颜色 默认白色

windowTextureWrapString

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

windowTextureSizeArray

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

offsetArray

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

repeatArray

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

outlineTypeString

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

outlineLineTypeString

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

outlineImageUrlString

type=image 贴图url

outlineWidthNumber

线宽度

outlineSizeAttenuationBoolean

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

outlineSpeedNumber

流动速度 默认0

outlineEffectBoolean

是否开启特效 默认false

outlineColorString | Array | Number

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

outlineOpacityArray

线不透明度 默认1

outlineUvRatioArray

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

outlineBlendingBoolean

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

outlineTextureWrapNumber

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

outlineTextureSizeNumber

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

outlineGrowSpeedNumber

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

outlineGrowLoopBoolean

线生长是否循环,默认是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(贴图) 设置该属性后需要设置imageUrlgeoObject.renderer.type = 'vector'; //设置楼的渲染类型为vector(纯色) 设置该属性后需要设置color

useWindow :Boolean

是否使用窗体效果

Type:
  • Boolean

uvRatio :Array

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

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