Class and Object 
 HOME 
General  Matrix  Image / GIS  Photogram  Vector  Point  Vector of
point / line 
Surveying 
DOUBLE 
MATRIX 
IMAGE 
PHOTO 
VECTOR 
INDX 
VECINDX 
ELLIPSOID 
FLOAT 
MATRIX_FLT 
IMAGE_FLT 
CAMERA 
VECINT 
IDINDX 
VECIDINDX 
PROJECTION 
INT 
MATRIX_INT 
IMAGE_INT 
MODEL 
VECSTR 
IDPT1D 
VECIDPT1D 
SUN 
SHORT 
MATRIX_SHT 
IMAGE_SHT 
SPOT  PT2D 
VECPT2D 
DATE 

UCHAR 
MATRIX_UCH 
IMAGE_UCH 
AT_2D 
IDPT2D 
VECIDPT2D 

BOOL 
MATRIX_BLN 
IMAGE_BLN 
AT_3D 
PT3D 
VECPT3D 

COMPLEX 
MATRIX_CMP 
IMAGE_RGB 
AT_BD 
IDPT3D 
VECIDPT3D 

STRING 
VECRCPLINE 

VECXYPLINE 


VEC3DPLINE 
 HOME 
There are currently 53 classes in Noobeed. A class is actually a sort of predefined data structure, consisting of member data, with a predefined set of its own function, called class function. We can think about class as a kind of data type. The first 6 data types, or classes, are somewhat standard and are the simplest ones. They are double, float, int, short, uchar and bool. They do not have class function. More complicate classes such as "Image" can have a number of data member such as coordinates of the lower left and upper right point, type of map projection , type of ellipsoid, etc. It also has a set of class functions, which are to be called by Image "object", for example rectify, overlay, histo, etc.
A variable that has a particular data type, or class, is an "object" of that class. For example
>a = Matrix()
The variable "a" is a Matrix object, and it is able to call all class functions of class Matrix. For example
>b = a.inv()
Here "a" calls its class function "inv", to make an inverse matrix from itself. This function returns a result, which is of type Matrix, and it is assigned to a variable "b". Thus "b" is another object of Matrix type.
It should be notice that all class names are actually "global function". These functions are sometimes called "construction function". Construction functions always have default arguments. Thus it is always possible to create an object using its classname as a function and followed by an empty parenthesis. Almost all classes have a function "init", where you can use to alter information in an object. Another way to change information of an object is to use Lfunctions. See the following examples.
Example:
> E = Ellipsoid()

E is an ellipsoid (it has a defualt a, semimajor axis, and a default f, flattening) 
>E.init(6377276.345, 1/300.8014)

reset parameters a and f of the ellipsoid "E" 
>E.f() = 1/299.456

assign a new value of flattening, "f" to the ellipsoid "E" 
Click on each
class above to see more details.
 HOME 