public override void Transform(IVector3 v, IOpVector3 vout)
        {
            ITuple3_Double   _v    = v.AsTupleDouble();
            IOpTuple3_Double _vout = vout.AsOpTupleDouble();

            _vout.Set(_v.X, _v.Y, _v.Z);
        }
Beispiel #2
0
        public virtual void Transform(IVector3 v, IOpVector3 vout)
        {
            IOpTuple3_Double _vout = vout.AsOpTupleDouble();

            Vector3d aux = this.Transform(v.ToVector3d());

            _vout.Set(aux.X, aux.Y, aux.Z);
        }
Beispiel #3
0
        public void Mul(IVector3 v, IOpVector3 vout)
        {
            ITuple3_Double   _v    = v.AsTupleDouble();
            IOpTuple3_Double _vout = vout.AsOpTupleDouble();

            _vout.Set(this.M00 * _v.X + this.M01 * _v.Y + this.M02 * _v.Z,
                      this.M10 * _v.X + this.M11 * _v.Y + this.M12 * _v.Z,
                      _v.Z);
        }
Beispiel #4
0
        public void Mul(IVector3 v, IOpVector3 vout)
        {
            ITuple3_Double   _v    = v.AsTupleDouble();
            IOpTuple3_Double _vout = vout.AsOpTupleDouble();

            Contract.Requires((this.M30 * _v.X + this.M31 * _v.Y + this.M32 * _v.Z).EpsilonEquals(0));
            _vout.Set(this.M00 * _v.X + this.M01 * _v.Y + this.M02 * _v.Z,
                      this.M10 * _v.X + this.M11 * _v.Y + this.M12 * _v.Z,
                      this.M20 * _v.X + this.M21 * _v.Y + this.M22 * _v.Z);
        }
Beispiel #5
0
        public static IOpTuple3_Double AsOpTupleDouble(this IOpVector3 v)
        {
            IOpTuple3_Double ret = v as IOpTuple3_Double;

            if (ret != null)
            {
                return(ret);
            }
            return(VectorUtils.Convert <IOpTuple3_Double>(v));
        }
Beispiel #6
0
 public override void Transform(IVector3 v, IOpVector3 vout)
 {
     this.Matrix.Mul(v, vout);
 }