Version: 3.2.5
wxPoint Class Reference

#include <wx/gdicmn.h>

Detailed Description

A wxPoint is a useful data structure for graphics operations.

It contains integer x and y members. See wxRealPoint for a floating point version.

Note that the width and height stored inside a wxPoint object may be negative and that wxPoint functions do not perform any check against negative values (this is used to e.g. store the special -1 value in wxDefaultPosition instance).

Library:  wxCore
Category:  Data Structures

Predefined objects/pointers: wxDefaultPosition

See also
wxRealPoint

Public Member Functions

 wxPoint ()
 Constructs a point. More...
 
 wxPoint (int x, int y)
 Initializes the point object with the given x and y coordinates. More...
 
 wxPoint (const wxRealPoint &pt)
 Converts the given wxRealPoint (with floating point coordinates) to a wxPoint instance. More...
 
Miscellaneous operators

Note that these operators are documented as class members (to make them easier to find) but, as their prototype shows, they are implemented as global operators; note that this is transparent to the user but it helps to understand why the following functions are documented to take the wxPoint they operate on as an explicit argument.

wxPointoperator= (const wxPoint &pt)
 
bool operator== (const wxPoint &p1, const wxPoint &p2)
 
bool operator!= (const wxPoint &p1, const wxPoint &p2)
 
wxPoint operator+ (const wxPoint &p1, const wxPoint &p2)
 
wxPoint operator- (const wxPoint &p1, const wxPoint &p2)
 
wxPointoperator+= (const wxPoint &pt)
 
wxPointoperator-= (const wxPoint &pt)
 
wxPoint operator+ (const wxPoint &pt, const wxSize &sz)
 
wxPoint operator- (const wxPoint &pt, const wxSize &sz)
 
wxPoint operator+ (const wxSize &sz, const wxPoint &pt)
 
wxPoint operator- (const wxSize &sz, const wxPoint &pt)
 
wxPointoperator+= (const wxSize &sz)
 
wxPointoperator-= (const wxSize &sz)
 
wxPoint operator/ (const wxPoint &sz, int factor)
 
wxPoint operator* (const wxPoint &sz, int factor)
 
wxPoint operator* (int factor, const wxPoint &sz)
 
wxPointoperator/= (int factor)
 
wxPointoperator*= (int factor)
 
Defaults handling.

Test for and set non-specified wxPoint components.

Although a wxPoint is always initialized to (0, 0), wxWidgets commonly uses wxDefaultCoord (defined as -1) to indicate that a point hasn't been initialized or specified. In particular, wxDefaultPosition is used in many places with this meaning.

bool IsFullySpecified () const
 Returns true if neither of the point components is equal to wxDefaultCoord. More...
 
void SetDefaults (const wxPoint &pt)
 Combine this object with another one replacing the uninitialized values. More...
 

Public Attributes

int x
 x member. More...
 
int y
 y member. More...
 

Constructor & Destructor Documentation

◆ wxPoint() [1/3]

wxPoint::wxPoint ( )

Constructs a point.

Initializes the internal x and y coordinates to zero.

◆ wxPoint() [2/3]

wxPoint::wxPoint ( int  x,
int  y 
)

Initializes the point object with the given x and y coordinates.

◆ wxPoint() [3/3]

wxPoint::wxPoint ( const wxRealPoint pt)

Converts the given wxRealPoint (with floating point coordinates) to a wxPoint instance.

Notice that this truncates the floating point values of pt components, if you want to round them instead you need to do it manually, e.g.

#include <wx/math.h> // for wxRound()
wxRealPoint rp = ...;
wxPoint p(wxRound(rp.x), wxRound(rp.y));
A wxPoint is a useful data structure for graphics operations.
Definition: gdicmn.h:659
A wxRealPoint is a useful data structure for graphics operations.
Definition: gdicmn.h:183
double x
X coordinate of this point.
Definition: gdicmn.h:240
double y
Y coordinate of this point.
Definition: gdicmn.h:245
int wxRound(T x)
Small wrapper around std::lround().

Member Function Documentation

◆ IsFullySpecified()

bool wxPoint::IsFullySpecified ( ) const

Returns true if neither of the point components is equal to wxDefaultCoord.

This method is typically used before calling SetDefaults().

Since
2.9.2

◆ operator!=()

bool wxPoint::operator!= ( const wxPoint p1,
const wxPoint p2 
)

◆ operator*() [1/2]

wxPoint wxPoint::operator* ( const wxPoint sz,
int  factor 
)

◆ operator*() [2/2]

wxPoint wxPoint::operator* ( int  factor,
const wxPoint sz 
)

◆ operator*=()

wxPoint& wxPoint::operator*= ( int  factor)

◆ operator+() [1/3]

wxPoint wxPoint::operator+ ( const wxPoint p1,
const wxPoint p2 
)

◆ operator+() [2/3]

wxPoint wxPoint::operator+ ( const wxPoint pt,
const wxSize sz 
)

◆ operator+() [3/3]

wxPoint wxPoint::operator+ ( const wxSize sz,
const wxPoint pt 
)

◆ operator+=() [1/2]

wxPoint& wxPoint::operator+= ( const wxPoint pt)

◆ operator+=() [2/2]

wxPoint& wxPoint::operator+= ( const wxSize sz)

◆ operator-() [1/3]

wxPoint wxPoint::operator- ( const wxPoint p1,
const wxPoint p2 
)

◆ operator-() [2/3]

wxPoint wxPoint::operator- ( const wxPoint pt,
const wxSize sz 
)

◆ operator-() [3/3]

wxPoint wxPoint::operator- ( const wxSize sz,
const wxPoint pt 
)

◆ operator-=() [1/2]

wxPoint& wxPoint::operator-= ( const wxPoint pt)

◆ operator-=() [2/2]

wxPoint& wxPoint::operator-= ( const wxSize sz)

◆ operator/()

wxPoint wxPoint::operator/ ( const wxPoint sz,
int  factor 
)

◆ operator/=()

wxPoint& wxPoint::operator/= ( int  factor)

◆ operator=()

wxPoint& wxPoint::operator= ( const wxPoint pt)

◆ operator==()

bool wxPoint::operator== ( const wxPoint p1,
const wxPoint p2 
)

◆ SetDefaults()

void wxPoint::SetDefaults ( const wxPoint pt)

Combine this object with another one replacing the uninitialized values.

It is typically used like this:

if ( !pos.IsFullySpecified() )
{
pos.SetDefaults(GetDefaultPosition());
}
See also
IsFullySpecified()
Since
2.9.2

Member Data Documentation

◆ x

int wxPoint::x

x member.

◆ y

int wxPoint::y

y member.