<class name="QPoint" doc="/**
&lt;p&gt;The &lt;a href=&quot;QPoint.html#QPoint(int, int)&quot;&gt;&lt;tt&gt;QPoint&lt;/tt&gt;&lt;/a&gt; class defines a point in the plane using integer precision.&lt;/p&gt;
&lt;p&gt;A point is specified by a x coordinate and an y coordinate which can be accessed using the &lt;a href=&quot;QPoint.html#x()&quot;&gt;&lt;tt&gt;x&lt;/tt&gt;&lt;/a&gt; and &lt;a href=&quot;QPoint.html#y()&quot;&gt;&lt;tt&gt;y&lt;/tt&gt;&lt;/a&gt; functions. The &lt;a href=&quot;QPoint.html#isNull()&quot;&gt;&lt;tt&gt;isNull&lt;/tt&gt;&lt;/a&gt; function returns true if both x and y are set to 0. The coordinates can be set (or altered) using the &lt;a href=&quot;QPoint.html#setX(int)&quot;&gt;&lt;tt&gt;setX&lt;/tt&gt;&lt;/a&gt; and &lt;a href=&quot;QPoint.html#setY(int)&quot;&gt;&lt;tt&gt;setY&lt;/tt&gt;&lt;/a&gt; functions, or alternatively the rx() and ry() functions which return references to the coordinates (allowing direct manipulation).&lt;/p&gt;
&lt;p&gt;Given a point &lt;i&gt;p&lt;/i&gt;, the following statements are all equivalent:&lt;/p&gt;
&lt;pre&gt;    QPoint p;

    p.setX(p.x() + 1);
    p += QPoint(1, 0);
    p.rx()++;&lt;/pre&gt;
&lt;p&gt;A &lt;a href=&quot;QPoint.html#QPoint(int, int)&quot;&gt;&lt;tt&gt;QPoint&lt;/tt&gt;&lt;/a&gt; object can also be used as a vector: Addition and subtraction are defined as for vectors (each component is added separately). A &lt;a href=&quot;QPoint.html#QPoint(int, int)&quot;&gt;&lt;tt&gt;QPoint&lt;/tt&gt;&lt;/a&gt; object can also be divided or multiplied by an &lt;tt&gt;int&lt;/tt&gt; or a &lt;tt&gt;qreal&lt;/tt&gt;.&lt;/p&gt;
&lt;p&gt;In addition, the &lt;a href=&quot;QPoint.html#QPoint(int, int)&quot;&gt;&lt;tt&gt;QPoint&lt;/tt&gt;&lt;/a&gt; class provides the &lt;a href=&quot;QPoint.html#manhattanLength()&quot;&gt;&lt;tt&gt;manhattanLength&lt;/tt&gt;&lt;/a&gt; function which gives an inexpensive approximation of the length of the &lt;a href=&quot;QPoint.html#QPoint(int, int)&quot;&gt;&lt;tt&gt;QPoint&lt;/tt&gt;&lt;/a&gt; object interpreted as a vector. Finally, &lt;a href=&quot;QPoint.html#QPoint(int, int)&quot;&gt;&lt;tt&gt;QPoint&lt;/tt&gt;&lt;/a&gt; objects can be streamed as well as compared.&lt;/p&gt;

@see &lt;a href=&quot;QPointF.html&quot;&gt;&lt;tt&gt;QPointF&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;%2E%2E/gui/QPolygon.html&quot;&gt;&lt;tt&gt;QPolygon&lt;/tt&gt;&lt;/a&gt; */">
    <method name="public QPoint()" doc="/**
&lt;p&gt;Constructs a null point, i.e&amp;#x2e; with coordinates (0, 0)&lt;/p&gt;

@see &lt;a href=&quot;QPoint.html#isNull()&quot;&gt;&lt;tt&gt;isNull&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public QPoint(int xpos, int ypos)" doc="/**
&lt;p&gt;Constructs a point with the given coordinates (&lt;tt&gt;xpos&lt;/tt&gt;, &lt;tt&gt;ypos&lt;/tt&gt;).&lt;/p&gt;

@see &lt;a href=&quot;QPoint.html#setX(int)&quot;&gt;&lt;tt&gt;setX&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QPoint.html#setY(int)&quot;&gt;&lt;tt&gt;setY&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final boolean isNull()" doc="/**
&lt;p&gt;Returns true if both the x and y coordinates are set to 0, otherwise returns false.&lt;/p&gt;
 */"/>
    <method name="public final int manhattanLength()" doc="/**
&lt;p&gt;Returns the sum of the absolute values of &lt;a href=&quot;QPoint.html#x()&quot;&gt;&lt;tt&gt;x&lt;/tt&gt;&lt;/a&gt; and &lt;a href=&quot;QPoint.html#y()&quot;&gt;&lt;tt&gt;y&lt;/tt&gt;&lt;/a&gt;, traditionally known as the &amp;quot;Manhattan length&amp;quot; of the vector from the origin to the point. For example:&lt;/p&gt;
&lt;pre&gt;    QPoint oldPosition;

    MyWidget::mouseMoveEvent(QMouseEvent *event)
    {
        QPoint point = event-&amp;gt;pos() - oldPosition;
        if (point.manhattanLength() &amp;gt; 3)
            &lt;span class=&quot;comment&quot;&gt;//&lt;/span&gt; the mouse has moved more than 3 pixels since the oldPosition
    }&lt;/pre&gt;
&lt;p&gt;This is a useful, and quick to calculate, approximation to the true length:&lt;/p&gt;
&lt;pre&gt;    int trueManhattanLength = sqrt(pow(x(), 2) + pow(y(), 2));&lt;/pre&gt;
&lt;p&gt;The tradition of &amp;quot;Manhattan length&amp;quot; arises because such distances apply to travelers who can only travel on a rectangular grid, like the streets of Manhattan.&lt;/p&gt;
 */"/>
    <method name="public final void writeTo(com.trolltech.qt.core.QDataStream arg__1)"/>
    <method name="public final void readFrom(com.trolltech.qt.core.QDataStream arg__1)"/>
    <method name="public final void setX(int x)" doc="/**
&lt;p&gt;Sets the x coordinate of this point to the given &lt;tt&gt;x&lt;/tt&gt; coordinate.&lt;/p&gt;

@see &lt;a href=&quot;QPoint.html#x()&quot;&gt;&lt;tt&gt;x&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QPoint.html#setY(int)&quot;&gt;&lt;tt&gt;setY&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final void setY(int y)" doc="/**
&lt;p&gt;Sets the y coordinate of this point to the given &lt;tt&gt;y&lt;/tt&gt; coordinate.&lt;/p&gt;

@see &lt;a href=&quot;QPoint.html#y()&quot;&gt;&lt;tt&gt;y&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QPoint.html#setX(int)&quot;&gt;&lt;tt&gt;setX&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final int x()" doc="/**
&lt;p&gt;Returns the x coordinate of this point.&lt;/p&gt;

@see &lt;a href=&quot;QPoint.html#setX(int)&quot;&gt;&lt;tt&gt;setX&lt;/tt&gt;&lt;/a&gt;
@see &lt;tt&gt;rx&lt;/tt&gt; */"/>
    <method name="public final int y()" doc="/**
&lt;p&gt;Returns the y coordinate of this point.&lt;/p&gt;

@see &lt;a href=&quot;QPoint.html#setY(int)&quot;&gt;&lt;tt&gt;setY&lt;/tt&gt;&lt;/a&gt;
@see &lt;tt&gt;ry&lt;/tt&gt; */"/>
</class>
