public virtual Vector3d [] GetNVector3dValues()
        {
            var count    = ElementCount * TimeSampleCount;
            var timesArr = new Vector3d [(int)count];

            unsafe {
                int typeSize = sizeof(Vector3d);

                fixed(Vector3d *arrptr = timesArr)
                MDLMemoryHelper.FetchValues(typeSize, (IntPtr)arrptr, count, _GetDouble3Array);
            }

            return(timesArr);
        }
        public virtual Matrix4d [] GetNMatrix4dValues()
        {
            var count    = ElementCount;
            var timesArr = new Matrix4d [(int)count];

            unsafe {
                int typeSize = sizeof(Matrix4d);

                fixed(Matrix4d *arrptr = timesArr)
                MDLMemoryHelper.FetchValues(typeSize, (IntPtr)arrptr, count, _GetDouble4x4Array);
            }

            return(timesArr);
        }
        public virtual Vector3 [] GetNVector3Values(double time)
        {
            var count    = ElementCount;
            var timesArr = new Vector3 [(int)count];

            unsafe {
                int typeSize = sizeof(Vector3);

                fixed(Vector3 *arrptr = timesArr)
                MDLMemoryHelper.FetchValues(typeSize, (IntPtr)arrptr, count, time, _GetFloat3Array);
            }

            return(timesArr);
        }
        public virtual Matrix4 [] GetNMatrix4Values()
        {
            var count    = TimeSampleCount;
            var timesArr = new Matrix4 [(int)count];

            unsafe {
                int typeSize = sizeof(Matrix4);

                fixed(Matrix4 *arrptr = timesArr)
                MDLMemoryHelper.FetchValues(typeSize, (IntPtr)arrptr, count, _GetFloat4x4Array);
            }

            return(timesArr);
        }
        public virtual Vector2 [] GetVector2Values()
        {
            var count    = TimeSampleCount;
            var timesArr = new Vector2 [(int)count];

            unsafe {
                int typeSize = sizeof(Vector2);

                fixed(Vector2 *arrptr = timesArr)
                MDLMemoryHelper.FetchValues(typeSize, (IntPtr)arrptr, count, _GetFloat2Array);
            }

            return(timesArr);
        }
        public virtual Quaterniond [] GetQuaterniondValues()
        {
            var count    = ElementCount * TimeSampleCount;
            var timesArr = new Quaterniond [(int)count];

            unsafe {
                int typeSize = sizeof(Quaterniond);

                fixed(Quaterniond *arrptr = timesArr)
                MDLMemoryHelper.FetchValues(typeSize, (IntPtr)arrptr, count, _GetDoubleQuaternionArray);
            }

            return(timesArr);
        }
        public virtual Quaternion [] GetQuaternionValues(double time)
        {
            var count    = ElementCount;
            var timesArr = new Quaternion [(int)count];

            unsafe {
                int typeSize = sizeof(Quaternion);

                fixed(Quaternion *arrptr = timesArr)
                MDLMemoryHelper.FetchValues(typeSize, (IntPtr)arrptr, count, time, _GetFloatQuaternionArray);
            }

            return(timesArr);
        }
Пример #8
0
        public virtual Quaterniond [] GetQuaterniondValues(nuint maxCount)
        {
            var timesArr = new Quaterniond [(int)maxCount];

            unsafe {
                int typeSize = sizeof(Quaterniond);
                fixed(Quaterniond *arrptr = timesArr)
                {
                    var rv = MDLMemoryHelper.FetchValues(typeSize, (IntPtr)arrptr, maxCount, _GetDoubleQuaternionArray);

                    Array.Resize(ref timesArr, (int)rv);
                }
            }

            return(timesArr);
        }
Пример #9
0
        public virtual Quaternion [] GetQuaternionValues(nuint maxCount)
        {
            var timesArr = new Quaternion [(int)maxCount];
            int typeSize = Marshal.SizeOf(typeof(Quaternion));

            unsafe
            {
                fixed(Quaternion *arrptr = timesArr)
                {
                    var rv = MDLMemoryHelper.FetchValues(typeSize, (IntPtr)arrptr, maxCount, _GetFloatQuaternionArray);

                    Array.Resize(ref timesArr, (int)rv);
                }
            }

            return(timesArr);
        }