Exemplo n.º 1
0
        public JObject ToJsonFile()
        {
            // Initialize
            JsonSet = new JsonItemSet();

            // Add items to JSON file
            foreach (var item in BodySet)
            {
                JsonSet.Rocket.Add(item.Name, item.Value);
            }

            JsonSet.Motor.Add("Path", MotorPath);

            foreach (var item in EnvSet)
            {
                JsonSet.Environment.Add(item.Name, item.Value);
            }

            foreach (var item in WindSet)
            {
                JsonSet.Wind.Add(item.Name, item.Value);
            }

            var allText   = JsonConvert.SerializeObject(JsonSet, Formatting.Indented);
            var jsonParse = JObject.Parse(allText);

            return(jsonParse);
        }
Exemplo n.º 2
0
        private void SaveSpec_Click(object sender, RoutedEventArgs e)
        {
            var dlg      = new SaveFileDialog();
            var crtDir   = Directory.GetCurrentDirectory();
            var paramDir = crtDir + "\\" + "parameter";

            dlg.InitialDirectory = paramDir;
            dlg.Filter           = "JSON Files (.json)|*.json";

            if (dlg.ShowDialog() == true)
            {
                try
                {
                    using (var sw = new StreamWriter(dlg.FileName, false, Encoding.GetEncoding("Shift_JIS")))
                    {
                        // Initialize
                        JsonItemSet jsonSet = new JsonItemSet();

                        // Add items to JSON file
                        foreach (var item in bodyData)
                        {
                            jsonSet.Rocket.Add(item.Name, item.Value);
                        }

                        jsonSet.Motor.Add("Path", ThrustPath.Text);

                        foreach (var item in envData)
                        {
                            jsonSet.Environment.Add(item.Name, item.Value);
                        }

                        foreach (var item in windData)
                        {
                            jsonSet.Wind.Add(item.Name, item.Value);
                        }

                        // Save JSON file
                        var allText = JsonConvert.SerializeObject(jsonSet, Formatting.Indented);
                        sw.WriteLine(allText);
                    }
                }
                catch (SystemException ex)
                {
                    Console.WriteLine(ex.Message);
                }
            }
        }
Exemplo n.º 3
0
        public RelateDataGrid()
        {
            // Generate Parameter dataSet
            BodySet  = new ObservableCollection <Spec>();
            MotorSet = new ObservableCollection <Spec>();
            EnvSet   = new ObservableCollection <Spec>();
            WindSet  = new ObservableCollection <Spec>();
            JsonSet  = new JsonItemSet();

            BodyList = new List <string>
            {
                "refLen", "diam", "massInt", "massEnd",
                "CGLenInt", "CGLenEnd", "IyzInt", "IyzEnd",
                "IxInt", "IxEnd", "CPLen", "Cd", "Cna", "Cmq",
                "vel1st"
            };

            MotorList = new List <string>
            {
                "Impulese", "AverageThrust",
                "MaxThrust", "TimeInterval"
            };

            EnvList = new List <string>
            {
                "RailLen", "RailElev", "RailAzi"
                //"RefWindVelInit", "RefWindVelFinal",
                //"RefWindVelInterval", "RefWindDirInterval"
            };

            WindList = new List <string>
            {
                "RefWindVelInit", "RefWindVelFinal",
                "RefWindVelInterval", "RefWindDirInterval"
            };

            DescPair = new Dictionary <string, string> {
            };
            DescPair.Add("refLen", "機体全長");
            DescPair.Add("diam", "機体直径");
            DescPair.Add("massInt", "離陸時質量");
            DescPair.Add("massEnd", "燃焼終了時質量");
            DescPair.Add("CGLenInt", "離陸時重心位置");
            DescPair.Add("CGLenEnd", "燃焼終了時重心位置");
            DescPair.Add("IyzInt", "離陸時慣性モーメント(ピッチ方向)");
            DescPair.Add("IyzEnd", "燃焼終了時慣性モーメント(ピッチ方向)");
            DescPair.Add("IxInt", "離陸時慣性モーメント(ロール方向)");
            DescPair.Add("IxEnd", "燃焼終了時慣性モーメント(ロール方向)");
            DescPair.Add("CPLen", "圧力中心位置");
            DescPair.Add("Cd", "抵抗係数");
            DescPair.Add("Cna", "法線力係数傾斜");
            DescPair.Add("Cmq", "減衰モーメント係数");
            DescPair.Add("vel1st", "1段目パラシュート終端速度");
            DescPair.Add("RailLen", "ランチャレール長");
            DescPair.Add("RailElev", "ランチャレール仰角");
            DescPair.Add("RailAzi", "ランチャレール方位角");
            DescPair.Add("RefWindVelInit", "風速下限値");
            DescPair.Add("RefWindVelFinal", "風速上限値");
            DescPair.Add("RefWindVelInterval", "風速刻み");
            DescPair.Add("RefWindDirInterval", "風向刻み");
            DescPair.Add("Impulese", "総力積");
            DescPair.Add("AverageThrust", "平均推力");
            DescPair.Add("MaxThrust", "最大推力");
            DescPair.Add("TimeInterval", "時間刻み");


            UnitPair = new Dictionary <string, string> {
            };
            UnitPair.Add("refLen", "m");
            UnitPair.Add("diam", "m");
            UnitPair.Add("massInt", "kg");
            UnitPair.Add("massEnd", "kg");
            UnitPair.Add("CGLenInt", "m");
            UnitPair.Add("CGLenEnd", "m");
            UnitPair.Add("IyzInt", "kg*m^2");
            UnitPair.Add("IyzEnd", "kg*m^2");
            UnitPair.Add("IxInt", "kg*m^2");
            UnitPair.Add("IxEnd", "kg*m^2");
            UnitPair.Add("CPLen", "m");
            UnitPair.Add("Cd", "-");
            UnitPair.Add("Cna", "rad^(-1)");
            UnitPair.Add("Cmq", "-");
            UnitPair.Add("vel1st", "m/s");
            UnitPair.Add("RailLen", "m");
            UnitPair.Add("RailElev", "deg");
            UnitPair.Add("RailAzi", "deg");
            UnitPair.Add("RefWindVelInit", "m/s");
            UnitPair.Add("RefWindVelFinal", "m/s");
            UnitPair.Add("RefWindVelInterval", "m/s");
            UnitPair.Add("RefWindDirInterval", "deg");
            UnitPair.Add("Impulese", "N*s");
            UnitPair.Add("AverageThrust", "N");
            UnitPair.Add("MaxThrust", "N");
            UnitPair.Add("TimeInterval", "sec");

            InitValPair = new Dictionary <string, string> {
            };
            InitValPair.Add("RefWindVelInit", "1.0");
            InitValPair.Add("RefWindVelFinal", "2.0");
            InitValPair.Add("RefWindVelInterval", "1.0");
            InitValPair.Add("RefWindDirInterval", "45.0");
        }