Warning, /education/marble/src/bindings/python/sip/GeoDataLineString.sip is written in an unsupported language. File is not indexed.
0001 //
0002 // Copyright 2008 Simon Edwards <simon@simonzone.com>
0003 //
0004 // This library is free software; you can redistribute it and/or
0005 // modify it under the terms of the GNU Lesser General Public
0006 // License as published by the Free Software Foundation; either
0007 // version 2.1 of the License, or (at your option) any later version.
0008 //
0009 // This library is distributed in the hope that it will be useful,
0010 // but WITHOUT ANY WARRANTY; without even the implied warranty of
0011 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
0012 // Lesser General Public License for more details.
0013 //
0014 // You should have received a copy of the GNU Lesser General Public
0015 // License along with this library. If not, see <http://www.gnu.org/licenses/>.
0016 //
0017
0018 namespace Marble
0019 {
0020
0021 class GeoDataLineString : Marble::GeoDataGeometry
0022 {
0023 %TypeHeaderCode
0024 #include <GeoDataLineString.h>
0025 %End
0026
0027 public:
0028 //ig typedef QVector<GeoDataCoordinates>::Iterator Iterator;
0029
0030 //ig typedef QVector<GeoDataCoordinates>::ConstIterator ConstIterator;
0031
0032 GeoDataLineString (Marble::TessellationFlags f = Marble::NoTessellation);
0033 GeoDataLineString (const Marble::GeoDataGeometry& other);
0034 virtual bool isClosed () const;
0035 bool tessellate () const;
0036 void setTessellate (bool tessellate);
0037 Marble::TessellationFlags tessellationFlags () const;
0038 void setTessellationFlags (Marble::TessellationFlags f);
0039 Marble::GeoDataLatLonAltBox latLonAltBox () const;
0040 int size () const;
0041 //FIXME Add the needed Python list methods.
0042 //ig Marble::GeoDataCoordinates& at (int pos);
0043 const Marble::GeoDataCoordinates& at (int pos) const;
0044 //ig Marble::GeoDataCoordinates& operator [] (int pos);
0045 const Marble::GeoDataCoordinates& operator [] (int pos) const;
0046 //ig Marble::GeoDataCoordinates& first ();
0047 const Marble::GeoDataCoordinates& first () const;
0048 //ig Marble::GeoDataCoordinates& last ();
0049 const Marble::GeoDataCoordinates& last () const;
0050 void append (const Marble::GeoDataCoordinates& position);
0051 Marble::GeoDataLineString& operator << (const Marble::GeoDataCoordinates& position);
0052 //ig QVector<Marble::GeoDataCoordinates>::Iterator begin ();
0053 //ig QVector<Marble::GeoDataCoordinates>::Iterator end ();
0054 //ig QVector<Marble::GeoDataCoordinates>::ConstIterator constBegin () const;
0055 //ig QVector<Marble::GeoDataCoordinates>::ConstIterator constEnd () const;
0056 void clear ();
0057 virtual void pack (QDataStream& stream) const;
0058 virtual void unpack (QDataStream& stream);
0059
0060 protected:
0061 //ig Marble::GeoDataLineStringPrivate* p () const;
0062
0063 public:
0064 virtual ~GeoDataLineString ();
0065 virtual qreal length (qreal planetRadius, int offset = 0) const;
0066 //ig virtual QVector<Marble::GeoDataLineString*> toRangeCorrected () const;
0067 virtual Marble::GeoDataLineString toNormalized () const;
0068 virtual Marble::GeoDataLineString toPoleCorrected () const;
0069 //ig virtual QVector<Marble::GeoDataLineString*> toDateLineCorrected () const;
0070 bool isEmpty () const;
0071 //ig Marble::GeoDataLineString& operator << (const Marble::GeoDataLineString& lineString);
0072 //ig QVector<GeoDataCoordinates>::Iterator erase (QVector<GeoDataCoordinates>::Iterator position);
0073 //ig QVector<GeoDataCoordinates>::Iterator erase (QVector<GeoDataCoordinates>::Iterator begin, QVector<GeoDataCoordinates>::Iterator end);
0074 void remove (int i);
0075 protected:
0076 //ig GeoDataLineString (GeoDataLineStringPrivate* priv);
0077 public:
0078
0079 // FIXME
0080 //ig QVector<GeoDataCoordinates>::ConstIterator begin () const;
0081 //ig QVector<GeoDataCoordinates>::ConstIterator end () const;
0082
0083 };
0084 // GeoDataLineString
0085
0086 };
0087 // Marble