Exemple #1
0
        private void Parse(string input)
        {
            this.points.Clear();
            for (int i = 0; i < input.Length;)
            {
                SkipWhitespace(input, ref i);
                if (!DecimalDegree.Parse(input, ref i, out double longitude))
                {
                    break;
                }

                if (!SkipSeparator(input, ref i) ||
                    !DecimalDegree.Parse(input, ref i, out double latitude))
                {
                    break;
                }

                if (SkipSeparator(input, ref i) &&
                    DecimalDegree.Parse(input, ref i, out double altitude))
                {
                    this.points.Add(new Vector(latitude, longitude, altitude));
                }
                else
                {
                    this.points.Add(new Vector(latitude, longitude));
                }
            }
        }
Exemple #2
0
            public void ShouldTruncateInsignificantDigits(string value)
            {
                int  index  = 0;
                bool result = DecimalDegree.Parse(value, ref index, out double parsed);

                Assert.That(result, Is.True);
                Assert.That(parsed, Is.EqualTo(double.Parse(value, NumberFormatInfo.InvariantInfo)));
            }
Exemple #3
0
            public void ShouldReadAsMuchAsPossible()
            {
                int  index  = 1;
                bool result = DecimalDegree.Parse(",123,", ref index, out double parsed);

                Assert.That(result, Is.True);
                Assert.That(index, Is.EqualTo(4));
                Assert.That(parsed, Is.EqualTo(123));
            }
Exemple #4
0
            public void ShouldParseValidFormats(string value, double expected)
            {
                int  index  = 0;
                bool result = DecimalDegree.Parse(value, ref index, out double parsed);

                Assert.That(result, Is.True);
                Assert.That(index, Is.EqualTo(value.Length));
                Assert.That(parsed, Is.EqualTo(expected));
            }