public class Material3D
extends com.supermap.data.InternalHandleDisposable
构造器和说明 |
---|
Material3D()
默认构造函数,构造一个新的Material3D对象。
|
Material3D(Material3D materialSrc)
根据给定的 Material3D 对象构造一个与其完全相同的新对象
|
Material3D(String name)
根据材质名称,构造一个新的Material3D对象。
|
限定符和类型 | 方法和说明 |
---|---|
int |
addTexture(String imagePath)
添加纹理图片。
|
int |
addTexture(TextureData data)
材质增加纹理。
|
boolean |
check()
检查材质对象是否合法。
|
void |
dispose()
释放该对象所占用的资源。
|
static Material3D |
fromJSON(String jsonFile)
已过时。
|
static Material3D |
fromJSON(String jsonFile,
boolean isExternalTextures)
通过JSON导入material3D。
|
Color |
getMaterialColor()
返回材质颜色。
|
MaterialType |
getMaterialType()
返回材质类型。
|
Matrix |
getMatrix(int iTexture)
返回材质矩阵。
|
String |
getName()
返回材质名称。
|
TextureData |
getTexture()
已过时。
|
TextureData |
getTexture(int index)
返回材质的纹理,根据索引获取纹理。
|
int |
getTextureCount()
返回材质上的纹理个数。
|
ArrayList<TextureData> |
getTextures()
返回纹理贴图集合。
|
TextureWrapMode |
getTextureWrapMode(int iTexture)
设置纹理贴图模式。
|
boolean |
removeTexture(int index)
材质移除纹理。
|
void |
removeTextures()
移除Material3D对象上的所有纹理。
|
void |
setMaterialColor(Color value)
设置材质颜色。
|
void |
setName(String value)
设置材质名称
材质名称作为材质的唯一标识,当设置的材质名称相同时,材质也需要相同。
|
void |
setPosition(int iTexture,
Point3D pnt)
设置纹理坐标在XYZ方向上的偏移。
|
void |
setRotate(int iTexture,
double dbX,
double dbY,
double dbZ)
设置纹理UV的旋转角度。
|
void |
setScale(int iTexture,
double dbX,
double dbY,
double dbZ)
设置纹理UV的缩放比例。
|
void |
setTexture(TextureData value)
已过时。
|
void |
setTextures(ArrayList<TextureData> value)
设置纹理贴图集合。
|
void |
setTextureWrapMode(int iTexture,
TextureWrapMode mode)
设置纹理贴图模式。
|
boolean |
toJSON(String jsonFile)
将模型数据中的材质输出为json文件,支持导出纹理。
|
boolean |
updateTexture(int index,
TextureData data)
材质更新纹理。
|
public Material3D()
public Material3D(Material3D materialSrc)
materialSrc
- 给定的 Material3D 对象public Material3D(String name)
name
- 材质名称public void dispose()
public void setName(String value)
材质名称作为材质的唯一标识,当设置的材质名称相同时,材质也需要相同。如材质名称相同而材质不同,会出现被追加对象的材质修改成追加对象的材质。
value
- 指定的材质名称。public String getName()
public ArrayList<TextureData> getTextures()
public void setTextures(ArrayList<TextureData> value)
value
- 纹理贴图集合。public int addTexture(TextureData data)
data
- 纹理数据。IllegalStateException
- 当前对象已被释放。public boolean removeTexture(int index)
index
- 将要移除纹理的序号。IllegalStateException
- 当前对象已被释放。public boolean updateTexture(int index, TextureData data)
index
- 将要更新纹理的序号。data
- 纹理数据。IllegalStateException
- 当前对象已被释放。@Deprecated public TextureData getTexture()
public TextureData getTexture(int index)
index
- 索引。IllegalStateException
- 当前对象已被释放。@Deprecated public void setTexture(TextureData value) throws IOException
IOException
public void setMaterialColor(Color value)
value
- 材质颜色public Color getMaterialColor()
public boolean check()
public void setPosition(int iTexture, Point3D pnt)
iTexture
- 指定的贴图索引,如果只有一张贴图,则输入0。pnt
- 指定UV在XYZ方向上的偏移值,一般为Point3D类型。public void setRotate(int iTexture, double dbX, double dbY, double dbZ)
iTexture
- 指定的贴图索引,如果只有一张贴图,则输入0。dbX
- X方向的旋转角度(弧度)。dbY
- Y方向的旋转角度(弧度)。dbZ
- Z方向的旋转角度(弧度)。public void setScale(int iTexture, double dbX, double dbY, double dbZ)
iTexture
- 指定的贴图索引,如果只有一张贴图,则输入0。dbX
- X方向缩放倍数。dbY
- Y方向缩放倍数。dbZ
- Z方向缩放倍数。public Matrix getMatrix(int iTexture)
iTexture
- 材质矩阵序号。public void setTextureWrapMode(int iTexture, TextureWrapMode mode)
iTexture
- 指定的贴图索引,如果只有一张贴图,则输入0。mode
- 纹理贴图模式。public TextureWrapMode getTextureWrapMode(int iTexture)
iTexture
- 指定的贴图索引,如果只有一张贴图,则输入0。public void removeTextures()
public MaterialType getMaterialType()
public int addTexture(String imagePath)
imagePath
- 纹理图片路径。public int getTextureCount()
@Deprecated public static Material3D fromJSON(String jsonFile)
jsonFile
- json文件全路径。public static Material3D fromJSON(String jsonFile, boolean isExternalTextures)
jsonFile
- json文件全路径。isExternalTextures
- 是否外挂纹理。public boolean toJSON(String jsonFile)
jsonFile
- json文件全路径。Copyright © 2021–2024 SuperMap. All rights reserved.