aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/classes/share/javax/media/j3d/BoundingBox.java5
-rw-r--r--src/classes/share/javax/media/j3d/BoundingPolytope.java4
-rw-r--r--src/classes/share/javax/media/j3d/BoundingSphere.java17
-rw-r--r--src/classes/share/javax/media/j3d/Bounds.java16
4 files changed, 27 insertions, 15 deletions
diff --git a/src/classes/share/javax/media/j3d/BoundingBox.java b/src/classes/share/javax/media/j3d/BoundingBox.java
index c0a30b2..b1baee4 100644
--- a/src/classes/share/javax/media/j3d/BoundingBox.java
+++ b/src/classes/share/javax/media/j3d/BoundingBox.java
@@ -1838,6 +1838,11 @@ private void setInfiniteBounds() {
return centroid;
}
+public void getCenter(Point3d center) {
+ center.add(lower, upper);
+ center.scale(0.5d);
+}
+
void translate(BoundingBox bbox, Vector3d value) {
if (bbox == null || bbox.boundsIsEmpty) {
setEmptyBounds();
diff --git a/src/classes/share/javax/media/j3d/BoundingPolytope.java b/src/classes/share/javax/media/j3d/BoundingPolytope.java
index e9e62df..b95eeb3 100644
--- a/src/classes/share/javax/media/j3d/BoundingPolytope.java
+++ b/src/classes/share/javax/media/j3d/BoundingPolytope.java
@@ -1714,6 +1714,10 @@ public class BoundingPolytope extends Bounds {
return centroid;
}
+public void getCenter(Point3d center) {
+ center.set(centroid);
+}
+
/**
* if the passed the "region" is same type as this object
* then do a copy, otherwise clone the Bounds and
diff --git a/src/classes/share/javax/media/j3d/BoundingSphere.java b/src/classes/share/javax/media/j3d/BoundingSphere.java
index e7bec53..d25424a 100644
--- a/src/classes/share/javax/media/j3d/BoundingSphere.java
+++ b/src/classes/share/javax/media/j3d/BoundingSphere.java
@@ -272,16 +272,13 @@ public BoundingSphere(Bounds[] boundsObjects) {
updateBoundsStates();
}
- /**
- * Returns the position of this bounding sphere as a point.
- * @param center a Point to receive the center of the bounding sphere
-
- */
- public void getCenter(Point3d center) {
- center.x = this.center.x;
- center.y = this.center.y;
- center.z = this.center.z;
- }
+/**
+ * Returns the position of this bounding sphere as a point.
+ * @param center a Point to receive the center of the bounding sphere
+ */
+public void getCenter(Point3d center) {
+ center.set(this.center);
+}
/**
* Sets the position of this bounding sphere from a point.
diff --git a/src/classes/share/javax/media/j3d/Bounds.java b/src/classes/share/javax/media/j3d/Bounds.java
index 9a0daf6..5759d50 100644
--- a/src/classes/share/javax/media/j3d/Bounds.java
+++ b/src/classes/share/javax/media/j3d/Bounds.java
@@ -170,11 +170,17 @@ public abstract class Bounds extends Object implements Cloneable {
*/
public abstract Bounds closestIntersection( Bounds[] boundsObjects);
- /**
- * Returns the center of the bounds
- * @return bounds center
- */
- abstract Point3d getCenter();
+/**
+ * Returns the center of the bounds
+ * @return bounds center
+ */
+abstract Point3d getCenter();
+
+/**
+ * Gets the centroid of this bounding region.
+ * @param center a Point to receive the centroid of the bounding region
+ */
+public abstract void getCenter(Point3d center);
/**
* Combines this bounding object with a bounding object so that the