GRASS GIS 8 Programmer's Manual  8.2.2dev(2023)-3d2c704037
lidar.h File Reference
#include <grass/gis.h>
#include <grass/gmath.h>
#include <grass/vector.h>
#include <grass/dbmi.h>
#include <grass/raster.h>
#include <grass/segment.h>
#include <grass/glocale.h>
Include dependency graph for lidar.h:

Go to the source code of this file.

Data Structures

struct  Reg_dimens
 
struct  Point
 
struct  element
 

Macros

#define NSPLX_MAX   150 /* Maximum number of splines along East direction used in the subregions interpolation */
 
#define NSPLY_MAX   150 /* Maximum number of splines along North direction used in the subregions interpolation */
 
#define OVERLAP_SIZE   10 /* Subregions overlapping size. */
 
#define LATO   1000 /* Side's size for v.lidar.growing. */
 
#define CONTOUR   15
 
#define GENERAL_ROW   0
 
#define GENERAL_COLUMN   1
 
#define FIRST_ROW   2
 
#define LAST_ROW   3
 
#define FIRST_COLUMN   4
 
#define LAST_COLUMN   5
 
#define F_EDGE_DETECTION_CLASS   1
 
#define F_CLASSIFICATION   2
 
#define F_INTERPOLATION   3
 
#define F_COUNTER_OBJ   4
 
#define PRE_TERRAIN   1
 
#define PRE_EDGE   2
 
#define PRE_UNKNOWN   3
 
#define TERRAIN_SINGLE   1
 
#define TERRAIN_DOUBLE   2
 
#define OBJECT_DOUBLE   3
 
#define OBJECT_SINGLE   4
 
#define SINGLE_PULSE   1
 
#define DOUBLE_PULSE   2
 
#define P_BILINEAR   1
 
#define P_BICUBIC   0
 

Functions

void P_zero_dim (struct Reg_dimens *)
 
int P_set_dim (struct Reg_dimens *, double, double, int *, int *)
 
int P_set_regions (struct Cell_head *, struct bound_box *, struct bound_box *, struct Reg_dimens, int)
 
int P_get_edge (int, struct Reg_dimens *, double, double)
 
int P_get_BandWidth (int, int)
 
double P_estimate_splinestep (struct Map_info *, double *, double *)
 
struct PointP_Read_Vector_Region_Map (struct Map_info *, struct Cell_head *, int *, int, int)
 
struct PointP_Read_Raster_Region_Map (SEGMENT *, struct Cell_head *, struct Cell_head *, int *, int)
 
double P_Mean_Calc (struct Cell_head *, struct Point *, int)
 
void P_Sparse_Points (struct Map_info *, struct Cell_head *, struct bound_box, struct bound_box, double **, double *, int *, double, double, double, int, int, int, int, struct line_cats *, dbDriver *, double, char *)
 
int P_Regular_Points (struct Cell_head *, struct Cell_head *, struct bound_box, struct bound_box, SEGMENT *, double *, double, double, double, double, int, int, int, int, int)
 
int P_Create_Aux2_Table (dbDriver *, char *)
 
int P_Create_Aux4_Table (dbDriver *, char *)
 
int P_Drop_Aux_Table (dbDriver *, char *)
 
void P_Aux_to_Raster (double **, int)
 
void P_Aux_to_Vector (struct Map_info *, struct Map_info *, dbDriver *, char *)
 
double ** P_Null_Matrix (double **)
 
void normalDefBicubic (double **N, double *TN, double *Q, double **obsVect, double deltaX, double deltaY, int xNum, int yNum, double xMin, double yMin, int obsNum, int parNum, int BW)
 
void normalDefBilin (double **N, double *TN, double *Q, double **obsVect, double deltaX, double deltaY, int xNum, int yNum, double xMin, double yMin, int obsNum, int parNum, int BW)
 
void nCorrectLapl (double **N, double lambda, int xNum, int yNum, double deltaX, double deltaY)
 
void nCorrectGrad (double **N, double lambda, int xNum, int yNum, double deltaX, double deltaY)
 
void obsEstimateBicubic (double **obsV, double *obsE, double *parV, double deltX, double deltY, int xNm, int yNm, double xMi, double yMi, int obsN)
 
double dataInterpolateBicubic (double x, double y, double deltaX, double deltaY, int xNum, int yNum, double xMin, double yMin, double *parVect)
 
void obsEstimateBilin (double **obsV, double *obsE, double *parV, double deltX, double deltY, int xNm, int yNm, double xMi, double yMi, int obsN)
 
double dataInterpolateBilin (double x, double y, double deltaX, double deltaY, int xNum, int yNum, double xMin, double yMin, double *parVect)
 

Macro Definition Documentation

◆ CONTOUR

#define CONTOUR   15

Definition at line 38 of file lidar.h.

Referenced by P_Mean_Calc().

◆ DOUBLE_PULSE

#define DOUBLE_PULSE   2

Definition at line 61 of file lidar.h.

◆ F_CLASSIFICATION

#define F_CLASSIFICATION   2

Definition at line 47 of file lidar.h.

◆ F_COUNTER_OBJ

#define F_COUNTER_OBJ   4

Definition at line 49 of file lidar.h.

◆ F_EDGE_DETECTION_CLASS

#define F_EDGE_DETECTION_CLASS   1

Definition at line 46 of file lidar.h.

◆ F_INTERPOLATION

#define F_INTERPOLATION   3

Definition at line 48 of file lidar.h.

◆ FIRST_COLUMN

#define FIRST_COLUMN   4

Definition at line 43 of file lidar.h.

◆ FIRST_ROW

#define FIRST_ROW   2

Definition at line 41 of file lidar.h.

◆ GENERAL_COLUMN

#define GENERAL_COLUMN   1

Definition at line 40 of file lidar.h.

◆ GENERAL_ROW

#define GENERAL_ROW   0

Definition at line 39 of file lidar.h.

◆ LAST_COLUMN

#define LAST_COLUMN   5

Definition at line 44 of file lidar.h.

◆ LAST_ROW

#define LAST_ROW   3

Definition at line 42 of file lidar.h.

◆ LATO

#define LATO   1000 /* Side's size for v.lidar.growing. */

Definition at line 37 of file lidar.h.

◆ NSPLX_MAX

#define NSPLX_MAX   150 /* Maximum number of splines along East direction used in the subregions interpolation */

Definition at line 34 of file lidar.h.

◆ NSPLY_MAX

#define NSPLY_MAX   150 /* Maximum number of splines along North direction used in the subregions interpolation */

Definition at line 35 of file lidar.h.

◆ OBJECT_DOUBLE

#define OBJECT_DOUBLE   3

Definition at line 57 of file lidar.h.

◆ OBJECT_SINGLE

#define OBJECT_SINGLE   4

Definition at line 58 of file lidar.h.

◆ OVERLAP_SIZE

#define OVERLAP_SIZE   10 /* Subregions overlapping size. */

Definition at line 36 of file lidar.h.

◆ P_BICUBIC

#define P_BICUBIC   0

Definition at line 64 of file lidar.h.

Referenced by P_get_edge().

◆ P_BILINEAR

#define P_BILINEAR   1

Definition at line 63 of file lidar.h.

Referenced by P_get_BandWidth(), and P_get_edge().

◆ PRE_EDGE

#define PRE_EDGE   2

Definition at line 52 of file lidar.h.

◆ PRE_TERRAIN

#define PRE_TERRAIN   1

Definition at line 51 of file lidar.h.

◆ PRE_UNKNOWN

#define PRE_UNKNOWN   3

Definition at line 53 of file lidar.h.

◆ SINGLE_PULSE

#define SINGLE_PULSE   1

Definition at line 60 of file lidar.h.

◆ TERRAIN_DOUBLE

#define TERRAIN_DOUBLE   2

Definition at line 56 of file lidar.h.

◆ TERRAIN_SINGLE

#define TERRAIN_SINGLE   1

Definition at line 55 of file lidar.h.

Function Documentation

◆ dataInterpolateBicubic()

double dataInterpolateBicubic ( double  x,
double  y,
double  deltaX,
double  deltaY,
int  xNum,
int  yNum,
double  xMin,
double  yMin,
double *  parVect 
)

Definition at line 533 of file InterpSpline.c.

◆ dataInterpolateBilin()

double dataInterpolateBilin ( double  x,
double  y,
double  deltaX,
double  deltaY,
int  xNum,
int  yNum,
double  xMin,
double  yMin,
double *  parVect 
)

Definition at line 644 of file InterpSpline.c.

◆ nCorrectGrad()

void nCorrectGrad ( double **  N,
double  lambda,
int  xNum,
int  yNum,
double  deltaX,
double  deltaY 
)

Definition at line 432 of file InterpSpline.c.

◆ nCorrectLapl()

void nCorrectLapl ( double **  N,
double  lambda,
int  xNum,
int  yNum,
double  deltaX,
double  deltaY 
)

Definition at line 211 of file InterpSpline.c.

◆ normalDefBicubic()

void normalDefBicubic ( double **  N,
double *  TN,
double *  Q,
double **  obsVect,
double  deltaX,
double  deltaY,
int  xNum,
int  yNum,
double  xMin,
double  yMin,
int  obsNum,
int  parNum,
int  BW 
)

Definition at line 108 of file InterpSpline.c.

◆ normalDefBilin()

void normalDefBilin ( double **  N,
double *  TN,
double *  Q,
double **  obsVect,
double  deltaX,
double  deltaY,
int  xNum,
int  yNum,
double  xMin,
double  yMin,
int  obsNum,
int  parNum,
int  BW 
)

Definition at line 313 of file InterpSpline.c.

◆ obsEstimateBicubic()

void obsEstimateBicubic ( double **  obsV,
double *  obsE,
double *  parV,
double  deltX,
double  deltY,
int  xNm,
int  yNm,
double  xMi,
double  yMi,
int  obsN 
)

Definition at line 467 of file InterpSpline.c.

◆ obsEstimateBilin()

void obsEstimateBilin ( double **  obsV,
double *  obsE,
double *  parV,
double  deltX,
double  deltY,
int  xNm,
int  yNm,
double  xMi,
double  yMi,
int  obsN 
)

Definition at line 595 of file InterpSpline.c.

◆ P_Aux_to_Raster()

void P_Aux_to_Raster ( double **  ,
int   
)

Definition at line 534 of file zones.c.

◆ P_Aux_to_Vector()

void P_Aux_to_Vector ( struct Map_info ,
struct Map_info ,
dbDriver ,
char *   
)

Definition at line 560 of file zones.c.

◆ P_Create_Aux2_Table()

◆ P_Create_Aux4_Table()

◆ P_Drop_Aux_Table()

int P_Drop_Aux_Table ( dbDriver ,
char *   
)

Definition at line 523 of file zones.c.

References db_append_string(), db_execute_immediate(), and db_init_string().

◆ P_estimate_splinestep()

double P_estimate_splinestep ( struct Map_info ,
double *  ,
double *   
)

Definition at line 249 of file zones.c.

◆ P_get_BandWidth()

int P_get_BandWidth ( int  ,
int   
)

Definition at line 208 of file zones.c.

References P_BILINEAR.

◆ P_get_edge()

int P_get_edge ( int  ,
struct Reg_dimens ,
double  ,
double   
)

Definition at line 187 of file zones.c.

References Reg_dimens::edge_h, Reg_dimens::edge_v, P_BICUBIC, and P_BILINEAR.

◆ P_Mean_Calc()

double P_Mean_Calc ( struct Cell_head ,
struct Point ,
int   
)

◆ P_Null_Matrix()

double** P_Null_Matrix ( double **  )

◆ P_Read_Raster_Region_Map()

struct Point* P_Read_Raster_Region_Map ( SEGMENT ,
struct Cell_head ,
struct Cell_head ,
int *  ,
int   
)

Definition at line 379 of file zones.c.

◆ P_Read_Vector_Region_Map()

struct Point* P_Read_Vector_Region_Map ( struct Map_info ,
struct Cell_head ,
int *  ,
int  ,
int   
)

Definition at line 312 of file zones.c.

References Point::cat.

◆ P_Regular_Points()

int P_Regular_Points ( struct Cell_head ,
struct Cell_head ,
struct bound_box  ,
struct bound_box  ,
SEGMENT ,
double *  ,
double  ,
double  ,
double  ,
double  ,
int  ,
int  ,
int  ,
int  ,
int   
)

Definition at line 190 of file lidar/raster.c.

◆ P_set_dim()

int P_set_dim ( struct Reg_dimens ,
double  ,
double  ,
int *  ,
int *   
)

◆ P_set_regions()

int P_set_regions ( struct Cell_head ,
struct bound_box ,
struct bound_box ,
struct Reg_dimens  ,
int   
)

Definition at line 54 of file zones.c.

◆ P_Sparse_Points()

void P_Sparse_Points ( struct Map_info ,
struct Cell_head ,
struct bound_box  ,
struct bound_box  ,
double **  ,
double *  ,
int *  ,
double  ,
double  ,
double  ,
int  ,
int  ,
int  ,
int  ,
struct line_cats ,
dbDriver ,
double  ,
char *   
)

Definition at line 9 of file lidar/raster.c.

◆ P_zero_dim()

void P_zero_dim ( struct Reg_dimens )