Vector3
- public class Shape<Vector3> extends BaseShape
BaseShape.MatType, BaseShape.Mode
构造器和说明 |
---|
Shape(BaseShape.MatType matType)
构造方法
|
限定符和类型 | 方法和说明 |
---|---|
void |
clear()
清除对象
|
void |
drawBuildingOneSide(java.util.List<Point3D> pList)
渲染墙的一面
2+++++++++++++1
+ +
+ +
3+++++++++++++0
|
void |
drawBuildingOneSide(Vector3 vector0,
Vector3 vector1,
Vector3 vector2,
Vector3 vector3)
渲染墙的一面
V2++++++++++++V1
+ +
+ +
V3++++++++++++V0
|
void |
drawCube(Vector offset,
Vector size)
绘制size大小的立方体
|
void |
drawCubeOutline(Vector offset,
Vector size)
绘制立方体轮廓线
|
void |
drawCustomMesh(java.util.ArrayList<Vertex> vertices,
java.util.ArrayList<java.lang.Integer> triangleIndices)
绘制自定义网格
使用sceneform原生的属性进行绘制
|
void |
drawCustomMesh(Material material,
java.util.ArrayList<Vertex> vertices,
java.util.ArrayList<java.lang.Integer> triangleIndices)
绘制自定义网格
使用sceneform原生的属性进行绘制
|
void |
drawCylinder(Point3D fromP3d,
Point3D toP3d,
float radius)
通过底(顶)的圆心位置、半径绘制圆柱
|
void |
drawCylinder(Vector3 from,
Vector3 to,
float radius)
已过时。
|
void |
drawCylinder(Vector vector,
float radius)
通过底面圆的半径、高的矢量绘制圆柱
|
void |
drawHalfTorus(float r1,
float r2,
int side)
绘制水平的半环状对象
|
void |
drawHorizontalPolygon(java.util.List<Point3D> pointList)
通过点集,绘制水平多边形
此方法点集,须是首尾相连的点
建议:这些点对象在同一水平面(即同一高度)
|
void |
drawLine(java.util.List<Point3D> point3DList)
连续的多点之间画线
|
void |
drawLine(Point3D fromP3d,
Point3D toP3d)
两点间画线
|
void |
drawLine(Vector vector)
以父节点为起点,以vector为矢量画线
|
void |
drawPolygon(BaseShape.Mode mode,
java.util.List<Point3D> pointList)
通过点集,绘制多边形
|
void |
drawPolygon(BaseShape.Mode mode,
java.util.List<Point3D> pointList,
java.util.ArrayList<Vector> normalVectorList)
通过点集,绘制多边形
|
void |
drawPrism(java.util.List<Point3D> bottomPointList,
java.util.List<Point3D> topPointList)
绘制棱柱
|
void |
drawQuadrangle(Vector3 a,
Vector3 b,
Vector3 c,
Vector3 d,
int type)
绘制四边形(protected)
|
void |
drawRegularPolygon(float r,
int side)
绘制正多边形
|
void |
drawSphere(float radius)
绘制球体
|
void |
drawSphere(Vector offset,
float radius)
绘制球体
|
void |
drawTorus(float r1,
float r2,
int side)
绘制水平的环状对象
|
AREffectElement |
getParentElement()
获取父节点元素
|
void |
setParentNode(AREffectElement element)
设置父节点
|
void |
setParentNode(EffectView arView)
设置父节点
|
getColor, getColorRGBA, getMetallic, getRadius, getReflectance, getRoughness, getSelectionColor, getSelectionTextureMap, getShapeMaterial, getShapeStyle, getTextureMap, isRenderable, isSelected, isShadowCaster, isShadowReceiver, select, setColor, setColor, setColor, setMetallic, setRadius, setReflectance, setRenderable, setRoughness, setSelectionColor, setSelectionTextureMap, setShadowCaster, setShadowReceiver, setShapeStyle, setTextureMap, unSelect, updateMaterial
public Shape(BaseShape.MatType matType)
matType
- 材质类型(透明/不透明)public void drawPolygon(BaseShape.Mode mode, java.util.List<Point3D> pointList)
mode
- 绘制模式pointList
- 三维点集public void drawHorizontalPolygon(java.util.List<Point3D> pointList)
pointList
- 三维点集public void drawCube(Vector offset, Vector size)
offset
- 偏移矢量(以父节点为基准,在父节点的位置上的偏移量)size
- 大小public void drawCubeOutline(Vector offset, Vector size)
offset
- size
- public void drawSphere(Vector offset, float radius)
offset
- 偏移量(相对父节点)radius
- 球半径public void drawSphere(float radius)
radius
- 球半径public void drawPrism(java.util.List<Point3D> bottomPointList, java.util.List<Point3D> topPointList)
bottomPointList
- 底面顶点集topPointList
- 顶面顶点集
备注:底面顶点顺序与顶面顶点顺序需一一对应,切底面(顶面)顶点需首尾相连public void drawCylinder(Vector vector, float radius)
vector
- 圆柱高的矢量radius
- 半径public void drawCylinder(Point3D fromP3d, Point3D toP3d, float radius)
fromP3d
- 起点位置(底部圆心位置)toP3d
- 终点位置(顶部圆心位置)radius
- 0.0005f@Deprecated public void drawCylinder(Vector3 from, Vector3 to, float radius)
from
- 起点位置(底部圆心位置)to
- 终点位置(顶部圆心位置)radius
- 0.0005fpublic void drawLine(Vector vector)
vector
- 方向矢量public void drawLine(java.util.List<Point3D> point3DList)
point3DList
- public void drawTorus(float r1, float r2, int side)
r1
- r2
- side
- public void drawHalfTorus(float r1, float r2, int side)
r1
- r2
- side
- public void drawRegularPolygon(float r, int side)
r
- 几何中心到顶点的距离side
- 多边形边数public void drawCustomMesh(Material material, java.util.ArrayList<Vertex> vertices, java.util.ArrayList<java.lang.Integer> triangleIndices)
使用sceneform原生的属性进行绘制
material
- 材质vertices
- 顶点集triangleIndices
- 顶点索引com.google.are.sceneform.rendering.Material
,
com.google.are.sceneform.rendering.Vertex
public void drawCustomMesh(java.util.ArrayList<Vertex> vertices, java.util.ArrayList<java.lang.Integer> triangleIndices)
使用sceneform原生的属性进行绘制
vertices
- 顶点集 (包含空间点与贴图坐标的映射关系)triangleIndices
- 坐标索引 (三个一组,逆时针顺序)com.google.are.sceneform.rendering.Material
,
com.google.are.sceneform.rendering.Vertex
public void drawQuadrangle(Vector3 a, Vector3 b, Vector3 c, Vector3 d, int type)
public void drawBuildingOneSide(java.util.List<Point3D> pList)
2+++++++++++++1
+ +
+ +
3+++++++++++++0
pList
- the vertex list of the side which the order ispublic void drawBuildingOneSide(Vector3 vector0, Vector3 vector1, Vector3 vector2, Vector3 vector3)
V2++++++++++++V1
+ +
+ +
V3++++++++++++V0
vector0
- vector1
- vector2
- vector3
- public void drawPolygon(BaseShape.Mode mode, java.util.List<Point3D> pointList, java.util.ArrayList<Vector> normalVectorList)
mode
- 绘制模式pointList
- 三维点集normalVectorList
- 顶点法向量public void setParentNode(AREffectElement element)
element
- public void setParentNode(EffectView arView)
arView
- public AREffectElement getParentElement()