|
SAGA API
v9.6
|
Go to the documentation of this file.
51 #ifndef HEADER_INCLUDED__SAGA_API__pointcloud_H
52 #define HEADER_INCLUDED__SAGA_API__pointcloud_H
117 bool Create (
const char *File);
119 bool Create (
const wchar_t *File);
134 virtual bool Save (
const wchar_t *File,
int Format = 0) {
return(
Save(
CSG_String(File), Format) ); }
141 virtual bool is_Valid (
void)
const {
return( m_nFields > 0 ); }
147 virtual bool Mov_Field (
int Field,
int Position);
153 const SG_Char *
Get_Attribute_Name (
int Field)
const { Field += 3;
return( Field >= 3 && Field < m_nFields ? m_Field_Name[Field]->c_str() : NULL ); }
157 bool Add_Point (
double x,
double y,
double z);
159 bool Del_Point (
sLong Index);
160 bool Del_Points (
void);
163 bool Set_Cursor (
sLong Index) {
return( (m_Cursor = Index >= 0 && Index < m_nRecords ? m_Points[Index] : NULL) != NULL ); }
164 virtual bool Set_Value (
int Field,
double Value) {
return( _Set_Field_Value(m_Cursor, Field, Value) ); }
165 virtual double Get_Value (
int Field)
const {
return( _Get_Field_Value(m_Cursor, Field) ); }
166 double Get_X (
void)
const {
return( _Get_Field_Value(m_Cursor, 0) ); }
167 double Get_Y (
void)
const {
return( _Get_Field_Value(m_Cursor, 1) ); }
168 double Get_Z (
void)
const {
return( _Get_Field_Value(m_Cursor, 2) ); }
174 virtual bool Set_Value (
sLong Index,
int Field,
double Value) {
return( _Set_Field_Value(Index >= 0 && Index < m_nRecords ? m_Points[Index] : NULL, Field, Value) ); }
175 virtual double Get_Value (
sLong Index,
int Field)
const {
return( _Get_Field_Value(Index >= 0 && Index < m_nRecords ? m_Points[Index] : NULL, Field) ); }
176 double Get_X (
sLong Index)
const {
return( _Get_Field_Value(Index >= 0 && Index < m_nRecords ? m_Points[Index] : NULL, 0) ); }
177 double Get_Y (
sLong Index)
const {
return( _Get_Field_Value(Index >= 0 && Index < m_nRecords ? m_Points[Index] : NULL, 1) ); }
178 double Get_Z (
sLong Index)
const {
return( _Get_Field_Value(Index >= 0 && Index < m_nRecords ? m_Points[Index] : NULL, 2) ); }
184 virtual bool Set_Value (
int Field,
const SG_Char *Value) {
return( _Set_Field_Value(m_Cursor, Field, Value) ); }
185 virtual bool Get_Value (
int Field,
CSG_String &Value)
const {
return( _Get_Field_Value(m_Cursor, Field, Value) ); }
186 virtual bool Set_Value (
sLong Index,
int Field,
const SG_Char *Value) {
return( _Set_Field_Value(Index >= 0 && Index < m_nRecords ? m_Points[Index] : NULL, Field, Value) ); }
187 virtual bool Get_Value (
sLong Index,
int Field,
CSG_String &Value)
const {
return( _Get_Field_Value(Index >= 0 && Index < m_nRecords ? m_Points[Index] : NULL, Field, Value) ); }
218 virtual bool Select (
sLong Index ,
bool bInvert =
false);
220 virtual bool Select (
const TSG_Rect &Extent ,
bool bInvert =
false);
246 char **m_Points, *m_Cursor;
248 int m_nPointBytes, *m_Field_Offset;
261 bool _Set_Field_Value (
char *pPoint,
int Field,
double Value);
262 double _Get_Field_Value (
char *pPoint,
int Field )
const;
263 bool _Set_Field_Value (
char *pPoint,
int Field,
const SG_Char *Value);
264 bool _Get_Field_Value (
char *pPoint,
int Field,
CSG_String &Value)
const;
266 bool _Inc_Array (
void);
267 bool _Dec_Array (
void);
270 void _Shape_Flush (
void);
305 #endif // #ifndef HEADER_INCLUDED__SAGA_API__pointcloud_H
virtual bool Assign(CSG_Data_Object *pObject)
double Get_X(sLong Index) const
virtual bool On_Delete(void)
virtual bool Set_Value(sLong Index, int Field, double Value)
virtual bool Del_Shapes(void)
bool Set_Attribute(sLong Index, int Field, double Value)
@ POINTCLOUD_FILE_FORMAT_Normal
double Get_Z(sLong Index) const
virtual CSG_Shape * Get_Shape(const CSG_Point &Point, double Epsilon=0.)
virtual CSG_Shape * Get_Selection(sLong Index=0)
virtual bool On_Reload(void)
virtual bool _Stats_Update(int iField) const
double Get_NoData_Value(bool bUpper=false) const
virtual bool Del_Shape(CSG_Shape *pShape)
virtual sLong Inv_Selection(void)
SAGA_API_DLL_EXPORT CSG_PointCloud * SG_Create_PointCloud(void)
TSG_Data_Type Get_Attribute_Type(int Field) const
virtual bool Get_Value(sLong Index, int iField, CSG_String &Value) const
double Get_Attribute(int Field) const
virtual bool is_Selected(sLong Index) const
virtual bool Del_Field(int iField)
virtual CSG_Table_Record * Get_Record(sLong Index) const
virtual double Get_Value(sLong Index, int Field) const
void Set_XYZ_Precision(bool bDouble)
virtual bool Set_Value(int Field, const SG_Char *Value)
bool is_NoData_Value(double Value) const
virtual bool Get_Value(sLong Index, int Field, CSG_String &Value) const
virtual void _On_Construction(void)
virtual bool Get_Value(int Field, CSG_String &Value) const
int Get_Attribute_Count(void) const
virtual bool Set_Attribute(int Field, const SG_Char *Value)
virtual bool Set_Value(int Field, double Value)
virtual CSG_Shape * Add_Shape(CSG_Table_Record *pCopy=NULL, TSG_ADD_Shape_Copy_Mode mCopy=SHAPE_COPY)
bool is_Compatible(const CSG_Table &Table, bool bExactMatch=false) const
virtual const CSG_Rect & Get_Selection_Extent(void)
virtual bool Get_Attribute(int Field, CSG_String &Value) const
virtual bool Save(const CSG_String &File, int Format=0)
virtual double Get_Value(int Field) const
virtual TSG_Data_Object_Type Get_ObjectType(void) const
Returns the object type as defined by TSG_Data_Object_Type. Used for run time type checking.
double Get_Attribute(sLong Index, int Field) const
virtual bool Save(const char *File, int Format=0)
virtual bool Mov_Field(int iField, int Position)
virtual bool Save(const wchar_t *File, int Format=0)
#define SAGA_API_DLL_EXPORT
virtual void Set_Modified(bool bOn=true)
virtual bool Set_Value(sLong Index, int iField, const SG_Char *Value)
virtual void Set_Modified(bool bModified=true)
virtual bool Set_Attribute(sLong Index, int Field, const SG_Char *Value)
virtual bool is_Valid(void) const
bool Set_NoData(int Field)
bool Set_Cursor(sLong Index)
virtual bool Del_Records(void)
virtual bool Add_Field(const CSG_String &Name, TSG_Data_Type Type, int Position=-1)
bool Set_Attribute(int Field, double Value)
bool is_NoData(int Field) const
bool is_NoData(sLong Index, int Field) const
virtual bool Set_Value(sLong Index, int Field, const SG_Char *Value)
@ POINTCLOUD_FILE_FORMAT_Compressed
virtual bool Destroy(void)
@ POINTCLOUD_FILE_FORMAT_Undefined
double Get_Y(sLong Index) const
virtual CSG_Table_Record * Ins_Record(sLong Index, CSG_Table_Record *pCopy=NULL)
const SG_Char * Get_Attribute_Name(int Field) const
virtual bool On_Update(void)
virtual CSG_Table_Record * Add_Record(CSG_Table_Record *pCopy=NULL)
bool Set_NoData(sLong Index, int Field)
virtual sLong Del_Selection(void)
virtual bool Del_Shape(sLong Index)
virtual bool Select(sLong Index, bool bInvert=false)
virtual bool Set_Field_Type(int iField, TSG_Data_Type Type)
@ SG_DATAOBJECT_TYPE_PointCloud
virtual bool Get_Attribute(sLong Index, int Field, CSG_String &Value) const
virtual bool Del_Record(sLong Index)