Exemplo n.º 1
0
        public List <IResearchSet> LoadResearchRects(String csv)
        {
            var csvModel = CsvHelper.FromCsv(csv);
            var result   = new List <IResearchSet>();

            for (int i = 0; i < csvModel.Count; i++)
            {
                var radiusStr = csvModel["Radius", i];
                if (!String.IsNullOrWhiteSpace(radiusStr))
                {
                    result.Add(
                        new CentralRadialResearchSet()
                    {
                        AngleDegrees = Double.Parse(csvModel["AngleDegrees", i], CultureInfo.InvariantCulture),
                        Radius       = Double.Parse(radiusStr, CultureInfo.InvariantCulture),
                        StepDegrees  = Double.Parse(csvModel["StepDegrees", i], CultureInfo.InvariantCulture),
                    }
                        );

                    continue;
                }

                var item = new ResearchRect(new Rect3D(Double.Parse(csvModel["Rect.X", i], CultureInfo.InvariantCulture),
                                                       Double.Parse(csvModel["Rect.Y", i], CultureInfo.InvariantCulture),
                                                       Double.Parse(csvModel["Rect.Z", i], CultureInfo.InvariantCulture),
                                                       Double.Parse(csvModel["Size.X", i], CultureInfo.InvariantCulture),
                                                       Double.Parse(csvModel["Size.Y", i], CultureInfo.InvariantCulture),
                                                       Double.Parse(csvModel["Size.Z", i], CultureInfo.InvariantCulture)),
                                            new Size3D(Double.Parse(csvModel["Step.X", i], CultureInfo.InvariantCulture),
                                                       Double.Parse(csvModel["Step.Y", i], CultureInfo.InvariantCulture),
                                                       Double.Parse(csvModel["Step.Z", i], CultureInfo.InvariantCulture)));
                result.Add(item);
            }
            return(result);
        }
Exemplo n.º 2
0
        public override object ReadJson(JsonReader reader,
                                        Type objectType, object existingValue,
                                        JsonSerializer serializer)
        {
            var jsonObject  = JObject.Load(reader);
            var researchSet = default(IResearchSet);

            if (jsonObject.GetValue("Rect") != null)
            {
                researchSet = new ResearchRect();
            }
            else if (jsonObject.GetValue("Radius") != null)
            {
                researchSet = new CentralRadialResearchSet();
            }
            serializer.Populate(jsonObject.CreateReader(), researchSet);
            return(researchSet);
        }