示例#1
0
        public static void TEST()
        {
            try
            {
                var ch = false;

                while (!ch)
                {
                    ch = IOSystem.InterfacedViewChoice(new string[]
                    {
                        "Метод наименьших квадратов:",
                        "Метод Гаусса",
                        "Метод Грама-Шмидта"
                    },

                                                       new EmptyD[]
                    {
                        LSMTest,
                        GaussTest,
                        GramSchmidtTest
                    }
                                                       );
                }

                //BigTest();
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
示例#2
0
        public static void TEST()
        {
            while (true)
            {
                var  testerNames = Enum.GetNames(typeof(TesterName));
                bool testResult  = IOSystem.InterfacedViewChoice(testerNames.Skip(1).ToArray(), new EmptyD[] {
                    DerSystemsTEST.TEST,
                    FincValueFindersTest.TEST,
                    IntegralTEST.TEST,
                    LinAlTester.TEST,
                    SplineTest.TEST
                });

                if (!testResult)
                {
                    Console.WriteLine("Введите корректные значения!");
                    Console.WriteLine();
                    continue;
                }

                Console.WriteLine();
                Console.WriteLine("Хотите выйти? y/n");
                if (Console.ReadLine().ToLower() == "y")
                {
                    break;
                }
                Console.WriteLine();
            }
        }
示例#3
0
        public IOSystem GetIOHandler()
        {
            global::System.IntPtr cPtr = assimp_swigPINVOKE.Importer_GetIOHandler(swigCPtr);
            IOSystem ret = (cPtr == global::System.IntPtr.Zero) ? null : new IOSystem(cPtr, false);

            return(ret);
        }
示例#4
0
        public static void TEST()
        {
            while (true)
            {
                var  testerNames = Enum.GetNames(typeof(TesterName));
                bool testResult  = IOSystem.InterfacedViewChoice(testerNames.Skip(1).ToArray(), new EmptyD[] {
                    CustomListsTester.TEST,
                    SortTest.TEST,
                    HashTableTest.TEST,
                    BinaryTreeTester.TEST,
                    GraphTester.TEST
                });

                if (!testResult)
                {
                    Console.WriteLine("Введите корректные значения!");
                    Console.WriteLine();
                    continue;
                }

                Console.WriteLine();
                Console.WriteLine("Хотите выйти? y/n");
                if (Console.ReadLine().ToLower() == "y")
                {
                    break;
                }
                Console.WriteLine();
            }
        }
示例#5
0
 /// <summary>
 /// Constructor for a specific scene to export
 /// </summary>
 public XFileExporter(AssimpSharp.Scene scene, IOSystem iosystem, string path, string file)
 {
     //Properties = Properties;
     IOSystem = iosystem;
     Path = path;
     File = file;
     Scene = scene;
     SceneOwned = false;
     End = "\n";
     WriteFile();
 }
示例#6
0
 public override bool CanRead(string file, IOSystem ioHandler, bool checkSig)
 {
     if (!checkSig)
     {
         return SimpleExtensionCheck(file, "obj");
     }
     else
     {
         var tokens = new[] { "mtllib", "usemtl", "v ", "vt ", "vn ", "o ", "g ", "s ", "f " };
         return SearchFileHeaderForToken(ioHandler, file, tokens);
     }
 }
示例#7
0
        static void SimpleTest()
        {
            fprav += EasyMethod;

            double[] x = new double[] { 1.0 };
            double[,] rez;
            RangeKutta rk = new RangeKutta(0, 1, x, 0.1);

            while (true)
            {
                var ch = IOSystem.SafeSimpleChoice("Выберите метод: ", new string[]
                {
                    "Range Kutta 2 порядка",
                    "Range Kutta 4 порядка",
                    "Метод Эйлера",
                    "Закончить тест"
                });

                //Console.WriteLine();

                var endWork = false;

                switch (ch)
                {
                case 0:
                    rez = rk.MetodRK2(fprav);
                    Write(rez, 0.0, 1.0, 0.1);
                    break;

                case 1:
                    rez = rk.MetodRK4(fprav);
                    Write(rez, 0.0, 1.0, 0.1);
                    break;

                case 2:
                    rez = rk.MetodEulera(fprav);
                    Write(rez, 0.0, 1.0, 0.1);
                    break;

                case 3:
                    endWork = true;
                    break;
                }

                Console.WriteLine();

                if (endWork)
                {
                    break;
                }
            }
        }
示例#8
0
        private static void IHashTableTest(IHashTable <string> table)
        {
            while (true)
            {
                var input = IOSystem.SafeSimpleChoice("Выберите действие с таблицей:", new string[]
                {
                    "Добавить узел",
                    "Удалить узел",
                    "Получить узел",
                    "Вывести таблицу",
                    "Закончить тест"
                });

                bool endTest = false;

                switch (input)
                {
                case 0:
                    int key = IOSystem.GetInt("Введите ключ: ");
                    Console.Write("Введите значение: ");
                    string value = Console.ReadLine();
                    table.Add(key, value);
                    break;

                case 1:
                    table.Remove(IOSystem.GetInt("Введите ключ: "));
                    break;

                case 2:
                    Console.WriteLine("Найденное значение: " + table.FindByKey(IOSystem.GetInt("Введите ключ: ")));
                    break;

                case 3:
                    Console.WriteLine("Начало вывода");
                    table.View();
                    Console.WriteLine("Конец вывода");
                    break;

                case 4:
                    endTest = true;
                    break;
                }

                Console.WriteLine();

                if (endTest)
                {
                    break;
                }
            }
        }
示例#9
0
 /// <summary>
 /// Returns whether the class can handle the format of the given file.
 /// See BaseImporter::CanRead() for details.
 /// </summary>
 public override bool CanRead(string file, IOSystem ioHandler, bool checkSig)
 {
     var extension = GetExtension(file);
     if (extension == "x")
     {
         return true;
     }
     if (string.IsNullOrEmpty(extension) || checkSig)
     {
         var token = new[] { "xof" };
         return CheckMagicToken(ioHandler, file, token, 1, 0);
     }
     return false;
 }
示例#10
0
        public static void TEST()
        {
            bool choiceStatus = false;

            while (!choiceStatus)
            {
                choiceStatus = IOSystem.InterfacedViewChoice(new string[] { "MyHashTable", "HashTableList" }, new WorkMainTester.EmptyD[] { MyHashTableTEST, HashTableListTEST });
                if (!choiceStatus)
                {
                    Console.WriteLine("Введите корректное значение!");
                    Console.WriteLine();
                }
            }
        }
        private static void QueueTest()
        {
            Queue <string> queue = new Queue <string>();

            while (true)
            {
                var input = IOSystem.SafeSimpleChoice("Выберите действие с таблицей:", new string[]
                {
                    "Добавить узел",
                    "Считать узел",
                    "Показать очередь",
                    "Закончить тест"
                });

                bool endTest = false;

                switch (input)
                {
                case 0:
                    Console.Write("Введите добавляемое значение: ");
                    queue.Push(Console.ReadLine());
                    break;

                case 1:
                    Console.WriteLine("Считанное значение: " + queue.Pop());
                    break;

                case 2:
                    Console.WriteLine("Начало вывода");
                    queue.View();
                    Console.WriteLine("Конец вывода");
                    break;

                case 3:
                    endTest = true;
                    break;
                }

                Console.WriteLine();

                if (endTest)
                {
                    break;
                }
            }

            //Console.WriteLine(queue);
        }
        private static void StackTest()
        {
            Stack <string> stack = new Stack <string>();

            while (true)
            {
                var input = IOSystem.SafeSimpleChoice("Выберите действие с таблицей:", new string[]
                {
                    "Добавить узел",
                    "Считать узел",
                    "Показать стек",
                    "Закончить тест"
                });

                bool endTest = false;

                switch (input)
                {
                case 0:
                    Console.Write("Введите добавляемое значение: ");
                    stack.Push(Console.ReadLine());
                    break;

                case 1:
                    Console.WriteLine("Считанное значение: " + stack.Pop());
                    break;

                case 2:
                    Console.WriteLine("Стек:");
                    stack.View();
                    Console.WriteLine("Конец вывода");
                    break;

                case 3:
                    endTest = true;
                    break;
                }

                Console.WriteLine();

                if (endTest)
                {
                    break;
                }
            }
        }
        public static void TEST()
        {
            while (true)
            {
                var  testerNames = Enum.GetNames(typeof(ListName));
                bool testResult  = IOSystem.InterfacedViewChoice(testerNames.Skip(1).ToArray(), new WorkMainTester.EmptyD[] {
                    DeckTest,
                    QueueTest,
                    SetTest,
                    StackTest
                });

                if (!testResult)
                {
                    Console.WriteLine("Введите корректные значения!");
                    Console.WriteLine();
                    continue;
                }

                Console.WriteLine();
                break;
            }
        }
示例#14
0
        public static void TEST()
        {
            int _count = IOSystem.GetInt("Введите размер генерируемого массива: ");

            int[]  setInt = new int[_count];
            Random rand   = new Random();

            for (int i = 0; i < _count; i++) // заполнение массивов
            {
                setInt[i] = rand.Next(0, 50);
            }

            var input = IOSystem.SafeSimpleChoice("Каким методом сортировать?", new string[]
            {
                "Сортировка пузырьком",
                "Сортировка вставками",
                "Сортировка Шелла",
                "Сортировка Merge (слиянием)",
                "Быстрая сортировка",
                "Быстрая сортировка (не рекурсиив)"
            });

            switch (input)
            {
            case 0:
                Console.Write("Несортированное множество: ");
                ShowSet(setInt);
                Sort <int> .BubbleSort(setInt);

                Console.Write("Cортированное множество: ");
                ShowSet(setInt);
                break;

            case 1:
                Console.Write("Несортированное множество: ");
                ShowSet(setInt);
                Sort <int> .InsertionSort(ref setInt);

                Console.Write("Cортированное множество: ");
                ShowSet(setInt);
                break;

            case 2:
                Console.Write("Несортированное множество: ");
                ShowSet(setInt);
                Sort <int> .ShellSort(setInt);

                Console.Write("Cортированное множество: ");
                ShowSet(setInt);
                break;

            case 3:
                Console.Write("Несортированное множество: ");
                ShowSet(setInt);
                Sort <int> .MergeSort(setInt, 0, setInt.Length - 1);

                Console.Write("Cортированное множество: ");
                ShowSet(setInt);
                break;

            case 4:
                Console.Write("Несортированное множество: ");
                ShowSet(setInt);
                Sort <int> .QuickSort(setInt, 0, setInt.Length - 1);

                Console.Write("Cортированное множество: ");
                ShowSet(setInt);
                break;

            case 5:
                Console.Write("Несортированное множество: ");
                ShowSet(setInt);
                Sort <int> .NoRecursQuickSort(setInt, 0, setInt.Length - 1);

                Console.Write("Cортированное множество: ");
                ShowSet(setInt);
                break;
            }

            Console.WriteLine();
        }
示例#15
0
 public static void ExportSceneXFile(string file, IOSystem iosystem, AssimpSharp.Scene scene, ExportProperties propoerties)
 {
     throw (new NotImplementedException());
 }
示例#16
0
 public void SetIOHandler(IOSystem pIOHandler)
 {
     assimp_swigPINVOKE.Importer_SetIOHandler(swigCPtr, IOSystem.getCPtr(pIOHandler));
 }
示例#17
0
        /// <summary>
        /// Clears the stack and initializes VM registers from values found in RAM.
        /// </summary>
        private void Bootstrap()
        {
            uint mainfunc = image.ReadInt32(GLULX_HDR_STARTFUNC_OFFSET);
            decodingTable = image.ReadInt32(GLULX_HDR_DECODINGTBL_OFFSET);

            sp = fp = frameLen = localsPos = 0;
            outputSystem = IOSystem.Null;
            execMode = ExecutionMode.Code;
            EnterFunction(mainfunc);
        }
示例#18
0
        public static Logger create(string name, Logger.LogSeverity severity, aiDefaultLogStream defStreams, IOSystem io)
        {
            global::System.IntPtr cPtr = assimp_swigPINVOKE.DefaultLogger_create__SWIG_0(name, (int)severity, (uint)defStreams, IOSystem.getCPtr(io));
            Logger ret = (cPtr == global::System.IntPtr.Zero) ? null : new Logger(cPtr, false);

            return(ret);
        }
示例#19
0
        private static void LSMTest()
        {
            Console.WriteLine("Метод наименьших квадратов:");
            Console.WriteLine();

            //Исходные данные
            double[] x = new double[] { -2, -1, 0, 1, 2 };
            double[] y = new double[] { 15, 4, 1, 0, -5 };

            while (true)
            {
                // Создание экземляра класса LSM
                LeastSquareMethod myReg = new LeastSquareMethod(x, y);

                var ch = IOSystem.SafeSimpleChoice("Выберите действие: ", new string[]
                {
                    "Вывести исходные данные",
                    "Вычислить полином",
                    "Закончить тест"
                });

                var endWork = false;

                switch (ch)
                {
                case 0:
                    Console.Write("X= ");
                    foreach (var val in x)
                    {
                        Console.Write(val.ToString().PadRight(2) + ", ");
                    }
                    Console.WriteLine();
                    Console.Write("Y= ");
                    foreach (var val in y)
                    {
                        Console.Write(val.ToString().PadRight(2) + ", ");
                    }
                    Console.WriteLine();
                    break;

                case 1:
                    myReg.Polynomial(IOSystem.GetInt("Введите степень: "));
                    // Вывод коэффициентов а0 и а1
                    Console.Write("y= ");
                    for (int i = 0; i < myReg.Coeff.Length; i++)
                    {
                        if (i > 0 && myReg.Coeff[i] >= 0)
                        {
                            Console.Write(" + ");
                        }
                        if (myReg.Coeff[i] < 0)
                        {
                            Console.Write(" - ");
                        }
                        if (Math.Abs(myReg.Coeff[i]) == 1)
                        {
                            Console.Write("x^" + i);
                        }
                        else
                        {
                            Console.Write(Math.Abs(myReg.Coeff[i]) + " * x^" + i);
                        }
                    }
                    Console.WriteLine();
                    Console.WriteLine();
                    // Среднеквадратичное отклонение
                    Console.WriteLine("Среднеквадратичное отклонение: " + myReg.Delta);
                    Console.WriteLine();
                    break;

                case 2:
                    endWork = true;
                    break;
                }

                if (endWork)
                {
                    break;
                }
            }
        }
示例#20
0
        void InternalReadFile(string filename, Scene scene, IOSystem ioHandler)
        {
            var file = ioHandler.Open(filename, FileMode.Open);
            if (file == null)
            {
                throw (new DeadlyImportError("Failed to open file " + filename + "."));
            }

            var fileSize = file.Length;
            if (fileSize < ObjMinSize)
            {
                throw new DeadlyImportError("OBJ-file is too small.");
            }

            Buffer = new StreamReader(file);

            string modelName;
            int pos = filename.LastIndexOf("\\/");
            if (pos >= 0)
            {
                modelName = filename.Substring(pos + 1, filename.Length - pos - 1);
            }
            else
            {
                modelName = filename;
            }

            var parser = new ObjFileParser(Buffer, modelName, filename);

            CreateDataFromImport(parser.GetModel(), scene);
        }
示例#21
0
        public static void TEST()
        {
            BinNode BN = new BinNode();

            BN.Add(10, "1");
            BN.Add(4, "1");
            BN.Add(2, "1");
            BN.Add(3, "1");
            BN.Add(16, "1");
            BN.Add(13, "1");
            BN.Add(18, "1");
            BN.Add(17, "1");

            Console.WriteLine("Исходный массив");
            Console.WriteLine(BN.View());
            Console.WriteLine();

            while (true)
            {
                var input = IOSystem.SafeSimpleChoice("Выберите действие с деревом:", new string[]
                {
                    "Добавление",
                    "Поиск по ключу",
                    "Определение уровня по ключу",
                    "Поиск максимального элемента узла",
                    "Поиск Минимального элемента узла",
                    "Поиск следующего элемента по индексу",
                    "Удаление узла",
                    "Вывод дерева",
                    "Удаление нижнего элемента",
                    "Рекурсивный вывод",
                    "Нерекурсивный вывод",
                    "Закончить тест"
                });

                bool endTest = false;

                switch (input)
                {
                case 0:
                    BN.Add(IOSystem.GetInt("Введите ключ: "), "1");
                    break;

                case 1:
                    var r = BN.Value(IOSystem.GetInt("Введите ключ: "));
                    Console.WriteLine(r == null ? null : r.Value);
                    break;

                case 2:
                    Console.WriteLine(BN.Level(BN.Value(IOSystem.GetInt("Введите ключ: "))));
                    break;

                case 3:
                    r = BN.MaxNode(BN.Value(IOSystem.GetInt("Введите ключ: ")));
                    Console.WriteLine();
                    break;

                case 4:
                    r = BN.MinNode(BN.Value(IOSystem.GetInt("Введите ключ: ")));
                    Console.WriteLine(r == null ? null : r.Value);
                    break;

                case 5:
                    r = BN.NextNode(BN.Value(IOSystem.GetInt("Введите ключ: ")));
                    Console.WriteLine(r == null ? null : r.Value);
                    break;

                case 6:
                    BN.DellNode(IOSystem.GetInt("Введите ключ: "));
                    break;

                case 7:
                    Console.WriteLine(BN.View());
                    break;

                case 8:
                    BN.Dell_node_Ur();
                    break;

                case 9:
                    BN.recInOrder(BN.Root());
                    break;

                case 10:
                    Node t = BN.MinNode(BN.Root());
                    while (t != null)
                    {
                        Console.WriteLine(" Key: {0} Value: {1}", t.Key, t.Value);
                        t = BN.NextNode(t);
                    }
                    break;

                case 11:
                    endTest = true;
                    break;
                }

                Console.WriteLine();

                if (endTest)
                {
                    break;
                }
            }
        }
        private static void SetTest()
        {
            Set <string> set = new Set <string>();

            while (true)
            {
                var input = IOSystem.SafeSimpleChoice("Выберите действие с таблицей:", new string[]
                {
                    "Добавить элемент",
                    "Добавить множество",
                    "Объединение множеств",
                    "Пересечение множеств",
                    "Дополение множества",
                    "Множество подмножеств",
                    "Вывести множество",
                    "Закончить тест"
                });

                bool endTest = false;

                switch (input)
                {
                case 0:
                    Console.Write("Введите добавляемое значение: ");
                    set.Add(Console.ReadLine());
                    break;

                case 1:
                    Console.Write("Введите добавляемые значения через пробел: ");
                    set.AddRange(Console.ReadLine().Split(' '));
                    break;

                case 2:
                    Console.Write("Введите значения другого множества через пробел: ");
                    var seconduRange = new Set <string>();
                    seconduRange.AddRange(Console.ReadLine().Split(' '));
                    Set <string> .Union(set, seconduRange).View();

                    break;

                case 3:
                    Console.Write("Введите значения другого множества через пробел: ");
                    var secondiRange = new Set <string>();
                    secondiRange.AddRange(Console.ReadLine().Split(' '));
                    Set <string> .Intersection(set, secondiRange).View();

                    break;

                case 4:
                    Console.Write("Введите значения другого множества через пробел: ");
                    var secondsRange = new Set <string>();
                    secondsRange.AddRange(Console.ReadLine().Split(' '));
                    Set <string> .Addition(set, secondsRange).View();

                    break;

                case 5:
                    var ans = Set <string> .Subset(set);

                    foreach (var subset in ans)
                    {
                        //Console.WriteLine();
                        subset.View();
                    }
                    Console.WriteLine();
                    break;

                case 6:
                    Console.Write("Множество:");
                    set.View();
                    break;

                case 7:
                    endTest = true;
                    break;
                }

                Console.WriteLine();

                if (endTest)
                {
                    break;
                }
            }

            //Console.WriteLine(set);
        }
示例#23
0
        public static LogStream createDefaultStream(aiDefaultLogStream stream, string name, IOSystem io)
        {
            global::System.IntPtr cPtr = assimp_swigPINVOKE.LogStream_createDefaultStream__SWIG_0((int)stream, name, IOSystem.getCPtr(io));
            LogStream             ret  = (cPtr == global::System.IntPtr.Zero) ? null : new LogStream(cPtr, false);

            return(ret);
        }
        private static void DeckTest()
        {
            Deck <string> deck = new Deck <string>();

            while (true)
            {
                var input = IOSystem.SafeSimpleChoice("Выберите действие с таблицей:", new string[]
                {
                    "Добавить узел в начало списка", //0
                    "Добавить узел в конец списка",
                    "Добавить узел после элемента",  //2
                    "Добавить узел перед элементом",
                    "Вывести с начала",              //4
                    "Вывести с конца",
                    "Удалить элемент",               //6
                    "Удалить в начале списка",
                    "Удалить в конце списка",        //8
                    "Удалить по индексу",
                    "Закончить тест"                 //10
                });

                bool endTest = false;

                switch (input)
                {
                case 0:
                    Console.Write("Введите добавляемое значение: ");
                    deck.AddHead(Console.ReadLine());
                    break;

                case 1:
                    Console.Write("Введите добавляемое значение: ");
                    deck.AddTail(Console.ReadLine());
                    break;

                case 2:
                    Console.Write("Введите искомое значение: ");
                    string findaValue = Console.ReadLine();
                    Console.Write("Введите добавляемое значение: ");
                    deck.InsertAfter(findaValue, Console.ReadLine());
                    break;

                case 3:
                    Console.Write("Введите искомое значение: ");
                    string findbValue = Console.ReadLine();
                    Console.Write("Введите добавляемое значение: ");
                    deck.InsertBefore(findbValue, Console.ReadLine());
                    break;

                case 4:
                    Console.WriteLine("Начало вывода");
                    deck.ViewHead();
                    Console.WriteLine("Конец вывода");
                    break;

                case 5:
                    Console.WriteLine("Начало вывода");
                    deck.ViewTail();
                    Console.WriteLine("Конец вывода");
                    break;

                case 6:
                    Console.Write("Введите значение, которое нужно удалить: ");
                    deck.Remove(Console.ReadLine());
                    break;

                case 7:
                    deck.RemoveHead();
                    Console.WriteLine("Удалено");
                    break;

                case 8:
                    deck.RemoveTail();
                    Console.WriteLine("Удалено");
                    break;

                case 9:
                    deck.RemoveByIndex(IOSystem.GetInt("Введите индекс: "));
                    break;

                case 10:
                    endTest = true;
                    break;
                }

                Console.WriteLine();

                if (endTest)
                {
                    break;
                }
            }
        }
示例#25
0
 internal static global::System.Runtime.InteropServices.HandleRef getCPtr(IOSystem obj)
 {
     return((obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr);
 }