/// <summary> /// Parses a multipolyugon tagged text. /// </summary> /// <param name="tokens">The list of tokens.</param> /// <returns>A multipolygon specified by tokens.</returns> /// <remarks><![CDATA[<multipolygon tagged text> ::= multipolygon {z}{m} <multipolygon text>]]></remarks> private static MultiPolygon ParseMultiPolygonTaggedText(WktTokensBuffer tokens) { WktReader.Expect("multipolygon", tokens); WktReader.Expect(TokenType.WHITESPACE, tokens); bool is3D = false; bool isMeasured = false; WktToken t = tokens.Peek(true); if (WktReader.TryParseDimensions(t, out is3D, out isMeasured)) { tokens.GetToken(true); WktReader.Expect(TokenType.WHITESPACE, tokens); } return(WktReader.ParseMultiPolygonText(tokens, is3D, isMeasured)); }