UNIVERS
15.3
UNIVERS base processing software API
|
#include <u3d_prgrid2d.hpp>
Public Member Functions | |
U3dPRGrid2d () | |
U3dPRGrid2d (const U3dPointsAr &points, double g_step, U3dBox *area=NULL) | |
U3dPRGrid2d (const U3dPoints &points, double g_step, U3dBox *area=NULL) | |
U3dPRGrid2d (const U3dPoints &points, double g_step_x, double g_step_y, U3dBox *area=NULL) | |
U3dPRGrid2d (const U3dPointsAr &points, double g_step_x, double g_step_y, U3dBox *area=NULL) | |
U3dPRGrid2d (const U3dPRGrid2d &obj) | |
virtual | ~U3dPRGrid2d () |
virtual void | construct (const U3dPointsAr &points, double g_step_x, double g_step_y, U3dBox *area=NULL) |
virtual void | construct (const U3dPoints &points, double g_step_x, double g_step_y, U3dBox *area=NULL) |
Public Member Functions inherited from U3dAbstractPRGrid2d | |
U3dAbstractPRGrid2d () | |
U3dAbstractPRGrid2d (const U3dPointsAr &points, double g_step, U3dBox *area=NULL) | |
U3dAbstractPRGrid2d (const U3dPoints &points, double g_step, U3dBox *area=NULL) | |
U3dAbstractPRGrid2d (const U3dPoints &points, double g_step_x, double g_step_y, U3dBox *area=NULL) | |
U3dAbstractPRGrid2d (const U3dPointsAr &points, double g_step_x, double g_step_y, U3dBox *area=NULL) | |
U3dAbstractPRGrid2d (const U3dAbstractPRGrid2d &obj) | |
virtual | ~U3dAbstractPRGrid2d () |
virtual U3dAbstractPRGrid2d * | clone () |
virtual void | construct (const U3dPointsAr &points, double g_step, U3dBox *area=NULL) |
virtual void | construct (const U3dPoints &points, double g_step, U3dBox *area=NULL) |
void | setMinGridStepX (double eps) |
void | setMinGridStepY (double eps) |
double | getMinGridStepX () |
double | getMinGridStepY () |
void | getGridArea (U3dPoint &min, U3dPoint &max) |
int | getGridXSize () const |
int | getGridYSize () const |
int | getGridPoint (int i, int j, U3dPoint &p) const |
int | setGridPointZ (int i, int j, double z) |
U3dPointsAr & | getInitialPoints () |
virtual void | addPoint (U3dPoint *) |
virtual bool | removePoint (int) |
Protected Member Functions | |
virtual void | push_ip (const U3dPoint *point) |
void | clear () |
virtual void | calc_grid_z_levels () |
virtual double | calc_nip_z (double x, double y) |
void | expand_grid_area (U3dBox *area) |
Static Protected Member Functions | |
static int | get_ip_id (double x, std::vector< double > &grd_x, double dx, double &xmn, double &xmx) |
static bool | add_grid_cell (int ix, int jy, GridCell &cell, GridMatrix &rgrid, double &zmn, double &zmx, double &pzmn, double &pzmx, std::vector< double > &xgd, std::vector< double > &ygd, double x, double y, bool is_increase_xy=true) |
Static Protected Member Functions inherited from U3dAbstractPRGrid2d | |
static void | correct_id (int &id, int size) |
Friends | |
class | U3dPRGrid3d |
Additional Inherited Members | |
Public Types inherited from U3dAbstractPRGrid2d | |
typedef std::vector< GridCell > | GridLine |
typedef std::vector< GridLine > | GridMatrix |
Protected Attributes inherited from U3dAbstractPRGrid2d | |
U3dPointsAr | m_ips |
double | minGridEpsX |
double | minGridEpsY |
std::vector< double > | m_grd_x |
std::vector< double > | m_grd_y |
GridMatrix | m_grid |
Area3d | m_area3d |
2D pseudo regular grid constructed for a number of 3D points.
U3dPRGrid2d::U3dPRGrid2d | ( | ) |
Default construct, object is empty
U3dPRGrid2d::U3dPRGrid2d | ( | const U3dPointsAr & | points, |
double | g_step, | ||
U3dBox * | area = NULL |
||
) |
Construct grid with points, minimal grid step and expanded area provided
U3dPRGrid2d::U3dPRGrid2d | ( | const U3dPRGrid2d & | obj | ) |
Copy constructor
|
virtual |
Destruct object
|
staticprotected |
Add provided grid cell to current grid with indexies (ix,jy). If any index is < 0 it means that in this direction new point or line is too close (look minGridEps) to other and indexies go in negative direction like ind_new = -(old_ind+1). Return true if new initial point was placed on the grid, otherwise fase.
|
protectedvirtual |
Calculate z-levels for not initial grid points
Reimplemented in U3dPRGrid2dAD, and U3dPRGrid2dMaze.
|
protectedvirtual |
Calculate z-coordinate value of not initial grid point. Current array of initial points is used for calculations. x and y is planar coordinates of not initial point.
Reimplemented in U3dPRGrid2dAD.
|
protected |
Clear internal data
|
virtual |
Construct grid for provided initial points, minimal grid step value and predefined area provided
|
protected |
Expand area if it is provided
|
staticprotected |
Return proper index of provided x-coordinate for "regular" addition to pseudoregular grid. Also correct xmn and xmx values. The parameters are: x - coordinate of additional point, grd_x - array of points in grid direction, xmn, xmx - sizes of grid direction, dx - precission
|
protectedvirtual |
Push initial point to array of initial points and to the proper grid cell