示例#1
0
        public void NpyArray_SetShape_Test2()
        {
            int DataSize = 0;


            var NPY_TYPES_Values = Enum.GetValues(typeof(NPY_TYPES));

            foreach (NPY_TYPES desiredType in NPY_TYPES_Values)
            {
                int ExpectedSize = Common.GetDefaultItemSize(desiredType);
                if (ExpectedSize < 0)
                {
                    continue;
                }

                var BaseArray = Common.GetSimpleArray(desiredType, ref DataSize);
                var TestArray = Common.GetSimpleArray(desiredType, ref DataSize);

                NpyArray_Dims NewDims = new NpyArray_Dims()
                {
                    ptr = new npy_intp[] { 2, 2, -1 },
                    len = 3,
                };

                int result = numpyAPI.NpyArray_SetShape(TestArray, NewDims);
                Assert.AreEqual(0, result);

                if (desiredType != NPY_TYPES.NPY_BOOL)
                {
                    Assert.IsTrue(Common.CompareArrays(BaseArray, TestArray));
                }

                Assert.AreEqual(TestArray.dimensions[2], Common.GeneratedArrayLength / 4);
            }
        }
示例#2
0
        public void NpyArray_New__Test1()
        {
            int subtype = 1;

            npy_intp[] dimensions = new npy_intp[1]; // {2,8};
            byte[]     data       = new byte[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 };

            dimensions[0] = data.Length;
            var npArray = numpyAPI.NpyArray_New(subtype, dimensions.Length, dimensions, NPY_TYPES.NPY_USHORT, null, new VoidPtr(data), 2, NPYARRAYFLAGS.NPY_DEFAULT, null);

            NpyArray_Dims newDims = new NpyArray_Dims();

            newDims.ptr = new npy_intp[] { 4, 4 };
            newDims.len = 2;

            numpyAPI.NpyArray_SetShape(npArray, newDims);

            return;
        }