#include <stdexcept>
#include <limits>
#include "libnr/nr-values.h"
#include <libnr/nr-coord.h>
#include <libnr/nr-i-coord.h>
#include <libnr/nr-dim2.h>
#include <libnr/nr-point.h>
#include <boost/optional.hpp>
#include <libnr/nr-point-matrix-ops.h>
#include <libnr/nr-forward.h>
#include <2geom/rect.h>
Go to the source code of this file.
Classes | |
struct | NRRect |
class | NR::Rect |
Namespaces | |
namespace | NR |
Defines | |
#define | nr_rect_d_point_d_test_inside(r, p) ((p) && (!(r) || (!NR_RECT_DF_TEST_EMPTY(r) && NR_RECT_DF_POINT_DF_TEST_INSIDE(r,p)))) |
#define | nr_rect_d_set_empty(r) (*(r) = NR_RECT_EMPTY) |
#define | nr_rect_d_test_empty(r) NR_RECT_DFLS_TEST_EMPTY_REF(r) |
#define | nr_rect_d_test_empty_ptr(r) ((r) && NR_RECT_DFLS_TEST_EMPTY(r)) |
#define | nr_rect_d_test_intersect(r0, r1) |
#define | nr_rect_l_point_l_test_inside(r, p) ((p) && (!(r) || (!NR_RECT_DFLS_TEST_EMPTY(r) && NR_RECT_LS_POINT_LS_TEST_INSIDE(r,p)))) |
#define | nr_rect_l_set_empty(r) (*(r) = NR_RECT_L_EMPTY) |
#define | nr_rect_l_test_empty(r) NR_RECT_DFLS_TEST_EMPTY_REF(r) |
#define | nr_rect_l_test_empty_ptr(r) ((r) && NR_RECT_DFLS_TEST_EMPTY(r)) |
#define | nr_rect_l_test_inside(r, x, y) ((!(r) || (!NR_RECT_DFLS_TEST_EMPTY(r) && NR_RECT_LS_TEST_INSIDE(r,x,y)))) |
#define | nr_rect_l_test_intersect(r0, r1) |
#define | nr_rect_l_test_intersect_ptr(r0, r1) |
Functions | |
boost::optional< Rect > | NR::intersection (boost::optional< Rect > const &a, boost::optional< Rect > const &b) |
NRRect * | nr_rect_d_intersect (NRRect *d, NRRect const *r0, NRRect const *r1) |
NRRect * | nr_rect_d_matrix_transform (NRRect *d, NRRect const *s, NR::Matrix const &m) |
NRRect * | nr_rect_d_matrix_transform (NRRect *d, NRRect const *s, NR::Matrix const *m) |
NRRect * | nr_rect_d_union (NRRect *d, NRRect const *r0, NRRect const *r1) |
NRRect * | nr_rect_d_union_xy (NRRect *d, NR::Coord x, NR::Coord y) |
NR::ICoord | nr_rect_l_area (NRRectL *r) |
NRRectL * | nr_rect_l_enlarge (NRRectL *d, int amount) |
NRRectL * | nr_rect_l_intersect (NRRectL *d, NRRectL const *r0, NRRectL const *r1) |
NRRectL * | nr_rect_l_subtract (NRRectL *d, NRRectL const *r0, NRRectL const *r1) |
NRRectL * | nr_rect_l_union (NRRectL *d, NRRectL const *r0, NRRectL const *r1) |
NRRectL * | nr_rect_l_union_xy (NRRectL *d, NR::ICoord x, NR::ICoord y) |
NRRect * | nr_rect_union_pt (NRRect *dst, NR::Point const &p) |
std::ostream & | NR::operator<< (std::ostream &out_file, NR::Rect const &in_rect) |
Rect | NR::union_bounds (boost::optional< Rect > const &a, Rect const &b) |
Rect | NR::union_bounds (Rect const &a, Rect const &b) |
boost::optional< Rect > | NR::union_bounds (boost::optional< Rect > const &a, boost::optional< Rect > const &b) |
Rect | NR::union_bounds (Rect const &a, boost::optional< Rect > const &b) |
Definitions of NRRect and NR::Rect types, and some associated functions & macros.
Definition in file nr-rect.h.