/* */ package NET.worlds.scape; /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ public class BoundBoxTemp /* */ { /* 25 */ private static Recycler recycler = new Recycler(); /* */ /* */ public Point3Temp lo; /* */ /* */ public Point3Temp hi; /* */ /* */ public static BoundBoxTemp make(Point3Temp a, Point3Temp b) /* */ { /* 33 */ BoundBoxTemp t = (BoundBoxTemp)recycler.alloc(); /* */ /* 35 */ if (t == null) /* */ { /* 37 */ recycler.recycle(new BoundBoxTemp()); /* 38 */ t = (BoundBoxTemp)recycler.alloc(); /* */ } /* */ /* 41 */ t.lo = Point3Temp.make(a); /* 42 */ t.hi = Point3Temp.make(b); /* */ /* 44 */ if (a.x > b.x) /* */ { /* 46 */ t.lo.x = b.x; /* 47 */ t.hi.x = a.x; /* */ } /* */ /* 50 */ if (a.y > b.y) /* */ { /* 52 */ t.lo.y = b.y; /* 53 */ t.hi.y = a.y; /* */ } /* */ /* 56 */ if (a.z > b.z) /* */ { /* 58 */ t.lo.z = b.z; /* 59 */ t.hi.z = a.z; /* */ } /* 61 */ return t; /* */ } /* */ /* */ public static BoundBoxTemp make(BoundBoxTemp b) /* */ { /* 66 */ return make(b.lo, b.hi); /* */ } /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ public boolean contains(Point3Temp p) /* */ { /* 78 */ return (p.x >= this.lo.x) && (p.x <= this.hi.x) && /* 79 */ (p.y >= this.lo.y) && (p.y <= this.hi.y) && /* 80 */ (p.z >= this.lo.z) && (p.z <= this.hi.z); /* */ } /* */ /* */ public boolean isEmpty() /* */ { /* 85 */ return (this.lo.x == this.hi.x) && (this.lo.y == this.hi.y) && (this.lo.z == this.hi.z); /* */ } /* */ /* */ /* */ /* */ /* */ public boolean overlaps(BoundBoxTemp r) /* */ { /* 93 */ return (this.hi.x >= r.lo.x) && (r.hi.x >= this.lo.x) && /* 94 */ (this.hi.y >= r.lo.y) && (r.hi.y >= this.lo.y) && /* 95 */ (this.hi.z >= r.lo.z) && (r.hi.z >= this.lo.z); /* */ } /* */ /* */ /* */ /* */ /* */ public void encompass(Point3Temp p) /* */ { /* 103 */ if (p.x < this.lo.x) /* 104 */ this.lo.x = p.x; /* 105 */ if (p.y < this.lo.y) /* 106 */ this.lo.y = p.y; /* 107 */ if (p.z < this.lo.z) /* 108 */ this.lo.z = p.z; /* 109 */ if (p.x > this.hi.x) /* 110 */ this.hi.x = p.x; /* 111 */ if (p.y > this.hi.y) /* 112 */ this.hi.y = p.y; /* 113 */ if (p.z > this.hi.z) { /* 114 */ this.hi.z = p.z; /* */ } /* */ } /* */ /* */ /* */ /* */ public String toString() /* */ { /* 122 */ return "BoundBoxTemp[lo=" + this.lo + ", hi=" + this.hi + "]"; /* */ } /* */ } /* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\scape\BoundBoxTemp.class * Java compiler version: 6 (50.0) * JD-Core Version: 0.7.1 */