Exemple #1
0
        public LongVector Intersect(LongVector value)
        {
            LongVector first, second;

            if (this._offset < value._offset)
            {
                first  = this;
                second = value;
            }
            else
            {
                first  = value;
                second = this;
            }

            // Not intersect.
            if ((second._offset + second._length - first._offset) >= (first._length + second._length))
            {
                return(default(LongVector));
            }

            LongVector range;

            range._offset = second._offset;
            range._length = Math.Min(first._offset + first._length, second._offset + second._length) - range._offset;
            return(range);
        }
Exemple #2
0
        public override bool Equals(object obj)
        {
            if (!(obj is LongVector))
            {
                return(false);
            }

            LongVector vector = (LongVector)obj;

            return((this._offset == vector._offset) && (this._length == vector._length));
        }