Java 图形中的二维顶点
我在Box2D中有一个多边形形状。形状是一个三角形,我希望有3个顶点。事实上,我创建的所有形状都将输出8个顶点。为什么会这样?如果我输出顶点计数,那总是正确的数量。我不想渲染不必要的线,我想从形状中获取顶点数据Java 图形中的二维顶点,java,box2d,vertex,vertices,Java,Box2d,Vertex,Vertices,我在Box2D中有一个多边形形状。形状是一个三角形,我希望有3个顶点。事实上,我创建的所有形状都将输出8个顶点。为什么会这样?如果我输出顶点计数,那总是正确的数量。我不想渲染不必要的线,我想从形状中获取顶点数据 @Override public void setShape(Vec2[] vector) { // TODO Auto-generated method stub super.setShape(vector); //A NEW SHAPE shape
@Override
public void setShape(Vec2[] vector) {
// TODO Auto-generated method stub
super.setShape(vector);
//A NEW SHAPE
shape = new PolygonShape();
//THE TRIANGLES VECTORS
Vec2[] vec = new Vec2[3];
vec[0] = new Vec2(10, 0);
vec[1] = new Vec2(0, 10);
vec[2] = new Vec2(0, 0);
//SET THE VERTICES
shape.set(vec, vec.length);
}
@Override
public void render() {
// TODO Auto-generated method stub
super.render();
//GET THE VERTICES
Vec2[] vector = shape.m_vertices;
System.out.print("\n" + "Vertices: " + vector.length);
}
将始终输出8。为什么? < P>多边形在原始C++代码中表示,它有固定的8个顶点,可能是出于性能原因。你正在看到这一结果 将跟踪实际顶点计数,因此只需将其用于渲染