Exemplo n.º 1
0
 public bool Equals(object obj)
 {
     if (obj is PBRVector2)
     {
         PBRPoint2 v = (PBRPoint2)obj;
         return(this._x == v.X && this._y == v.Y);
     }
     return(false);
 }
Exemplo n.º 2
0
    public PBRVector2 Offset(PBRPoint2 p)
    {
        PBRVector2 o = p - _pMin;

        if (_pMax.X > _pMin.X)
        {
            o.X /= _pMax.X - _pMin.X;
        }
        if (_pMax.Y > _pMin.Y)
        {
            o.Y /= _pMax.Y - _pMin.Y;
        }
        return(o);
    }
Exemplo n.º 3
0
 public PBRPoint2 Lerp(PBRPoint2 p)
 {
     return(new PBRPoint2(Mathf.Lerp(p.X, _pMin.X, _pMax.X), Mathf.Lerp(p.Y, _pMin.Y, _pMax.Y)));
 }
Exemplo n.º 4
0
 public BoundingBox2D(PBRPoint2 p1, PBRPoint2 p2)
 {
     _pMin = new PBRPoint2(p1);
     _pMax = new PBRPoint2(p2);
 }
Exemplo n.º 5
0
 public BoundingBox2D(PBRPoint2 p)
 {
     _pMin = _pMax = new PBRPoint2(p);
 }
Exemplo n.º 6
0
 public BoundingBox2D()
 {
     _pMax = new PBRPoint2(float.PositiveInfinity, float.PositiveInfinity);
     _pMin = new PBRPoint2(0, 0);
 }
Exemplo n.º 7
0
 public bool Inside(PBRPoint2 p, BoundingBox2D box)
 {
     return((p.X >= box.PMin.X && p.X <= box.PMax.X) && (p.Y >= box.PMin.Y && p.Y <= box.PMax.Y));
 }
Exemplo n.º 8
0
 public void BoundingSphere(PBRPoint2 p, float rad)
 {
     p   = (_pMin + _pMax) / 2;
     rad = Inside(p, this) ? p.Distance(p, _pMax) : 0;
 }
Exemplo n.º 9
0
 public float Distance(PBRPoint2 p1, PBRPoint2 p2)
 {
     return((p2 - p1).Length());
 }
Exemplo n.º 10
0
 public PBRPoint2(PBRPoint2 v) : base(v)
 {
 }
Exemplo n.º 11
0
 public float DistanceSquare(PBRPoint2 p1, PBRPoint2 p2)
 {
     return((p2 - p1).LengthSquared());
 }