Exemplo n.º 1
0
    static void PrintPropertiesMenu(WeldGroup wGroup) {
        Console.WriteLine("");
        Console.WriteLine("");
        Console.WriteLine("========================================");
        Console.WriteLine("");
        Console.WriteLine("Enter Weld Group Properties:");
        Console.WriteLine("(Select using numbers 1-9)");
        Console.WriteLine("----------------------------------------");

        switch (wGroup) {
            case WeldGroup.ParallelA:
                PrintDiagramParallelA();
                break;
            case WeldGroup.ParallelB:
                PrintDiagramParallelB();
                break;
            case WeldGroup.WShapeA:
                PrintDiagramWShapeA();
                break;
            case WeldGroup.WShapeB:
                PrintDiagramWShapeB();
                break;
            case WeldGroup.Rectangle:
                PrintDiagramRectangle();
                break;
        }

        Console.WriteLine("     1: b = " + b + " in.;       2: d = " + d + " in.");
        Console.WriteLine("");
        Console.WriteLine("     3: Pa = " + Pa + " kip");
        Console.WriteLine("     4: Pb = " + Pb + " kip");
        Console.WriteLine("     5: Pc = " + Pc + " kip");
        Console.WriteLine("");
        Console.WriteLine("     6: Ma = " + Ma + " kip-in.");
        Console.WriteLine("     7: Mb = " + Mb + " kip-in.");
        Console.WriteLine("     8: Mc = " + Mc + " kip-in.");
        Console.WriteLine("");
        Console.WriteLine("     9: Allowable Stress = " + allowableStress + " ksi");
        Console.WriteLine("");
        Console.WriteLine("     B: Back to Main Menu");
        Console.WriteLine("     C: Perform Calculation");
        Console.WriteLine("     Q: Quit");
        Console.WriteLine("");
        Console.WriteLine("========================================");
        Console.WriteLine("");
    }
Exemplo n.º 2
0
    //Dims dims = new Dims();

    public static void Main()
    {

        WeldGroup weldGroup = WeldGroup.NoVal;
        // Set to start in Main Menu
        State menuState = State.MainMenu;
        bool quit = false;

        // Loop until 'q' is pressed
        while (!quit)
        {

            // Main Menu
            if (menuState == State.MainMenu)
            {
                Console.Clear();
                PrintMainMenu();

                bool loop = true;
                string input = "";
                while (loop) {
                    input = Console.ReadLine();
                    foreach (string s in acceptInputs) {
                        if (input == s) {
                            loop = false;
                        }
                    }
                    if (loop) {
                        Console.WriteLine("Invalid Input");
                    }
                }

                switch (input)
                {
                    case "1":
                        // Take to Confirm Weld Group Page
                        menuState = State.ConfirmWeldType;
                        weldGroup = WeldGroup.ParallelA; 
                        break;
                    case "2":
                        // Take to Confirm Weld Group Page
                        menuState = State.ConfirmWeldType;
                        weldGroup = WeldGroup.ParallelB; 
                        break;
                    case "3":
                        // Take to Confirm Weld Group Page
                        menuState = State.ConfirmWeldType;
                        weldGroup = WeldGroup.WShapeA; 
                        break;
                    case "4":
                        // Take to Confirm Weld Group Page
                        menuState = State.ConfirmWeldType;
                        weldGroup = WeldGroup.WShapeB; 
                        break;
                    case "5":
                        menuState = State.ConfirmWeldType;
                        weldGroup = WeldGroup.Rectangle; 
                        break;
                    case "q":
                    case "Q":
                        quit = true;
                        continue;
                    default:
                        break;
                }
            } 

            // Enter Properties
            else if (menuState == State.ConfirmWeldType)
            {
                Console.Clear();
                PrintConfirmText();
                switch (weldGroup) {
                    case WeldGroup.ParallelA:
                        PrintDiagramParallelA();                
                        break;
                    case WeldGroup.ParallelB:
                        PrintDiagramParallelB();                
                        break;
                    case WeldGroup.WShapeA:
                        PrintDiagramWShapeA();                
                        break;
                    case WeldGroup.WShapeB:
                        PrintDiagramWShapeB();                
                        break;
                    case WeldGroup.Rectangle:
                        PrintDiagramRectangle();
                        break;
                    default:
                        Console.WriteLine("\n        INVALID SELECTION");
                        break;
                }
                Console.WriteLine("Confirm Weld Type (\"y\")");
                Console.WriteLine("");
                Console.WriteLine("Press any key to return to Main Menu:");
                Console.WriteLine("");
                // Wait for enter:
                string input = Console.ReadLine();
                if (input == "y" || input == "Y")
                    menuState = State.EnterProperties;
                else
                    menuState = State.MainMenu;
            }

            else if (menuState == State.EnterProperties)
            {
                Console.Clear();
                PrintPropertiesMenu(weldGroup);
                // Wait for enter:
                string input = Console.ReadLine();
                
                string val = "";

                bool entering = true;

                while (entering == true)
                {
                    switch (input)
                    {
                        case "1":
                            Console.WriteLine("Enter value for \"b\":  ");
                            val = Console.ReadLine();
                            if (val == "") {
                                entering = false;
                                break;
                            }
                            b = float.Parse(val);
                            break;
                        case "2":
                            Console.WriteLine("Enter value for \"d\":  ");
                            val = Console.ReadLine();
                            if (val == "") {
                                entering = false;
                                break;
                            }
                            d = float.Parse(val);
                            break;
                        case "3":
                            Console.WriteLine("Enter value for \"Pa\":  ");
                            val = Console.ReadLine();
                            if (val == "") {
                                entering = false;
                                break;
                            }
                            Pa = float.Parse(val);
                            break;
                        case "4":
                            Console.WriteLine("Enter value for \"Pb\":  ");
                            val = Console.ReadLine();
                            if (val == "") {
                                entering = false;
                                break;
                            }
                            Pb = float.Parse(val);
                            break;
                        case "5":
                            Console.WriteLine("Enter value for \"Pc\":  ");
                            val = Console.ReadLine();
                            if (val == "") {
                                entering = false;
                                break;
                            }
                            Pc = float.Parse(val);
                            break;
                        case "6":
                            Console.WriteLine("Enter value for \"Ma\":  ");
                            val = Console.ReadLine();
                            if (val == "") {
                                entering = false;
                                break;
                            }
                            Ma = float.Parse(val);
                            break;
                        case "7":
                            Console.WriteLine("Enter value for \"Mb\":  ");
                            val = Console.ReadLine();
                            if (val == "") {
                                entering = false;
                                break;
                            }
                            Mb = float.Parse(val);
                            break;
                        case "8":
                            Console.WriteLine("Enter value for \"Mc\":  ");
                            val = Console.ReadLine();
                            if (val == "") {
                                entering = false;
                                break;
                            }
                            Mc = float.Parse(val);
                            break;
                        case "9":
                            Console.WriteLine("Enter Allowable Stress:  ");
                            val = Console.ReadLine();
                            if (val == "") {
                                entering = false;
                                break;
                            }
                            allowableStress = float.Parse(val);
                            entering = false;
                            break;

                        case "b":
                        case "B":
                            menuState = State.MainMenu;
                            entering = false;
                            break;

                        case "c":
                        case "C":
                            entering = false;
                            if (b <= 0 || d <= 0) {
                                Console.WriteLine("Weld dimensions must be greater than zero");
                                Console.ReadLine();
                                break;
                            }
                            if (allowableStress <= 0) {
                                Console.WriteLine("Allowable Stress must be greater than zero");
                                Console.ReadLine();
                                break;
                            }
                            menuState = State.Calculating;
                            break;
                            
                        case "q":
                        case "Q":
                            quit = true;
                            entering = false;
                            continue;
                        default:
                            Console.ReadLine();
                            entering = false;
                            break;
                    }
                    if (entering == true) {
                        int iInput = int.Parse(input) + 1;
                        input = iInput.ToString();
                    }
                }
            }

            else if (menuState == State.Calculating) 
            {
                Console.Clear();
                PrintCalculatingHeader();
                switch (weldGroup) {
                    case WeldGroup.ParallelA:
                        PerformCalculationsParrallelA();
                        break;
                    case WeldGroup.ParallelB:
                        PerformCalculationsParrallelB();
                        break;
                    case WeldGroup.WShapeA:
                        PerformCalculationsWShapeA();
                        break;
                    case WeldGroup.WShapeB:
                        PerformCalculationsWShapeB();
                        break;
                    case WeldGroup.Rectangle:
                        PerformCalculationsRectangle();
                        break;
                }

                PrintCalculationResults();

                // Wait for enter:
                string input = Console.ReadLine();
                switch (input) {
                    case "":
                        menuState = State.EnterProperties;
                        break;
                    default:
                        // For now, just default to returning to properties
                        // menu
                        menuState = State.EnterProperties;
                        // quit = true;
                        break;
                }
            }
        }
    }