GeoBuildingStyle(param)

new GeoBuildingStyle(param)

构造函数

Parameters:
Name Type Description
param Object 参数列表
Properties
Name Type Attributes Default Description
opacity Number <optional>
1 不透明度,如果设置gradient,opacity仅影响顶面
color Array.<Number> <optional>
[1,1,1] 叠加的颜色,如果设置gradient,color仅影响顶面
depthWrite Boolean <optional>
true 是否写入深度
depthTest Boolean <optional>
true 是否进行深度测试
blending Boolean <optional>
false 是否混色
lights Boolean <optional>
false 是否接受光照
tailing Boolean <optional>
false 物体的拖尾效果(垂直发光)
radial Boolean <optional>
false 物体的屏幕径向拖尾效果(扩散发光)
effect Boolean <optional>
false 发光效果
glowStrength Number <optional>
0.5 发光强度
url Array.<String> | String <optional>
填充图片的路径 如果传数组 代表顶面和侧面的贴图 如果传一个路径 代表顶面侧面都用该贴图
textureWrap TextureWrapMode <optional>
'RepeatY' 贴图模式
textureSize Array.<Number> <optional>
纹理尺寸 单位米 数组 代表x方向和y方向的属性
window WindowStyle <optional>
窗体效果
sideType THING.SideType <optional>
THING.SideType.Front 正面/背面/双面渲染
repeat Array.<Number> <optional>
[1,1] 重复度 数组 代表x方向和y方向的属性
specularFactor Array.<Number> <optional>
[1,1] 高光强度 数组 代表顶面和侧面的属性
envMap BaseTextureStyle <optional>
环境图(evnMap)样式
aoMap BaseTextureStyle <optional>
环境光遮蔽贴图(aoMap)样式
metalness Array.<Number> <optional>
[0.0,0.0] 金属度属性 材质像金属的程度 数组 代表顶面和侧面的属性
roughness Array.<Number> <optional>
[1.0,1.0] 粗糙度属性 材质的粗糙程度 数组 代表顶面和侧面的属性
gradient Object <optional>
渐变色 格式为 {0:'rgba(255,0,0,1)',0.5:'rgba(0,255,0,1)',1.0:'rgba(0,0,255,1)'}(也支持rgb) 设置gradient之后,侧面的贴图和颜色都会覆盖
Example
const style = THING.EARTH.GeoBuildingStyle(
    {
     effect: true,
  	blending: false,
  	envMap: {
  		intensity: 3.45,
  		url: "image1.png",
  	},
  	textureWrap: THING.EARTH.TextureWrapMode.Stretch,
  	metalness: [0.4, 0.4],
  	roughness: [0.49, 0.22],
  	glowStrength: 0.1,
  	textureSize: [3, 3],
  	lights: false,
  	tailing: false,
  	window: {
  		url: "image4.png",
  	},
  	url: [
  		"image2.png",
  		"image3.png",
  	],
   }
 )

Extends

Members

aoMap :BaseTextureStyle

获取/设置 环境光遮蔽贴图(aoMap)的样式

Example
geoObject.style.aoMap = {url:'../uGeo/aoMap.png',intensity:0.85};

blending :Boolean

开启/关闭混色

Overrides:
Default Value:
  • false
Example
geoObject.style.blending = true;

color :Array.<Number>|String

设置建筑/多边形的颜色 如果设置了style.gradient,color仅影响顶面

Overrides:
Example
geoObject.style.color = [1,0,0];//设置geoObject的颜色为红色

depthTest :Boolean

获取/设置是否进行深度测试

Overrides:
Default Value:
  • true

depthWrite :Boolean

获取/设置是否写入深度

Overrides:
Default Value:
  • true

effect :Boolean

获取/设置 发光效果

Overrides:
Default Value:
  • false
Example
geoObject.style.effect = true; //开启发光效果

envMap :BaseTextureStyle

获取/设置 环境图(envMap)的样式

Example
geoObject.style.envMap = {url:'../uGeo/envMap.png',intensity:1.0};

glowStrength :Number

获取/设置发光强度

Overrides:
Default Value:
  • 0.5

gradient :Object

渐变色 如果设置gradient会覆盖侧面的贴图和color 格式为 {0:'rgba(255,0,0,1)',0.5:'rgba(0,255,0,1)',1.0:'rgba(0,0,255,1)'}(也支持rgb)

lights :Boolean

获取/设置是否接受光照

Overrides:
Default Value:
  • false

metalness :Array.<Number>

设置金属度,第一个为顶面金属度,第二个为侧面金属度

Default Value:
  • [0.0,0.0]
Example
geoObject.style.metalness = [0.8,0.2];

opacity :Number

设置建筑/多边形的透明度 如果设置了style.gradient,opacity仅影响顶面

Overrides:
Default Value:
  • 1.0
Example
geoObject.style.opacity = 0.5;//设置geoObject的透明度为0.5

outlineColor :Array.<Number>

勾边颜色

Overrides:
Example
geoPoint.style.outlineColor = [1,0,0];//设置geoPoint红色勾边
geoPoint.style.outlineColor = null;//取消勾边

radial :Boolean

开启/关闭物体的屏幕径向拖尾效果(扩散发光)

Overrides:
Default Value:
  • false

repeat :Array.<Number>

获取/设置贴图在 x 轴和 y 轴的重复次数

Default Value:
  • [1,1]

roughness :Array.<Number>

设置金属度,第一个为顶面粗糙度,第二个为侧面粗糙度

Example
geoObject.style.roughness = [0.0,0.8];

sideType :THING.SideType

设置对象正面/背面/双面渲染

Default Value:
  • THING.SideType.Back
Example
geoObject.style.sideType = THING.SideType.Back;

specularFactor :Array.<Number>

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

Author:
Default Value:
  • [1,1]
Example
geoObject.style.specularFactor = [1,1];

speed :Array.<Number>

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

Default Value:
  • [0,0]

tailing :Boolean

开启/关闭物体的拖尾效果(垂直发光)

Overrides:
Default Value:
  • false

textureSize :Array

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

Author:
Example
geoObject.style.textureSize = [3,3];  // 设置贴图纹理尺寸为3*3m

textureWrap :TextureWrapMode

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

Default Value:
  • RepeatY
Example
geoObject.style.textureWrap = THING.EARTH.TextureWrapMode.RepeatY;

url :String|Array.<String>

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

Example
//设置楼顶部的贴图和侧面的贴图,第一个代表顶部贴图路径,第二个代表侧面的贴图路径
geoObject.style.url = ['./temp/image1.png','./temp/image1.png'];

window :WindowStyle

获取/设置 窗体的样式