|
|
|
@ -32,6 +32,8 @@ |
|
|
|
|
package com.jme3.scene.debug; |
|
|
|
|
|
|
|
|
|
import com.jme3.bounding.BoundingBox; |
|
|
|
|
import com.jme3.math.Vector3f; |
|
|
|
|
import com.jme3.scene.Geometry; |
|
|
|
|
import com.jme3.scene.Mesh; |
|
|
|
|
import com.jme3.scene.VertexBuffer; |
|
|
|
|
import com.jme3.scene.VertexBuffer.Format; |
|
|
|
@ -100,8 +102,23 @@ public class WireBox extends Mesh { |
|
|
|
|
updateBound(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public void fromBoundingBox(BoundingBox bbox){ |
|
|
|
|
updatePositions(bbox.getXExtent(), bbox.getYExtent(), bbox.getZExtent()); |
|
|
|
|
/** |
|
|
|
|
* Create a geometry suitable for visualizing the specified bounding box. |
|
|
|
|
* |
|
|
|
|
* @param bbox the bounding box (not null) |
|
|
|
|
* @return a new Geometry instance in world space |
|
|
|
|
*/ |
|
|
|
|
public static Geometry fromBoundingBox(BoundingBox bbox) { |
|
|
|
|
float xExtent = bbox.getXExtent(); |
|
|
|
|
float yExtent = bbox.getYExtent(); |
|
|
|
|
float zExtent = bbox.getZExtent(); |
|
|
|
|
WireBox mesh = new WireBox(xExtent, yExtent, zExtent); |
|
|
|
|
Geometry result = new Geometry("bounding box", mesh); |
|
|
|
|
|
|
|
|
|
Vector3f center = bbox.getCenter(); |
|
|
|
|
result.setLocalTranslation(center); |
|
|
|
|
|
|
|
|
|
return result; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
} |