Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

qgar Namespace Reference


Detailed Description

Namespace of the QgarLib library.

All classes, types, globals, etc. of the Qgar library are defined in this namespace.


Classes

class  AbstractGenPrimitive
 Geometrical primitives with coordinates of type T. More...
class  AbstractGenQgarPrimitive
 Graphical primitives, typically resulting from vectorization, with coordinates of type T. More...
class  GenArc
 Arc of circle, with coordinates of type T. More...
class  GenPoint
 Point with coordinates of type T. More...
class  GenPolygon
 Geometrical polygon, with coordinates of type T. More...
class  GenPolyline
 Geometrical polyline, with coordinates of type T. More...
class  GenQgarArc
 Arc of circle, so-called Qgar arc, with coordinates of type T. More...
class  GenQgarPolygon
 Graphical polygon, so-called Qgar polygon, with coordinates of type T. More...
class  GenQgarPolyline
 Graphical polyline, so-called Qgar polyline, with coordinates of type T. More...
class  GenQgarSegment
 Graphical segment, so-called Qgar segment, with coordinates of type T. More...
class  GenSegment
 Geometrical segment, with coordinates of type T. More...
class  AbstractFile
 Base class implementing common tools to conveniently define and use files in the Qgar way. More...
class  AbstractGenPointChain
 Base class for chain of points having coordinates of type T. More...
class  AbstractGradientImage
 Base class to define gradient images. More...
class  AbstractGraphicsFile
 Basic function to read/write graphical and geometrical primitives in graphics files like Tgif files, DXF files, etc. More...
class  AbstractMultiImage
 Root class for classes defining multi-layered images. More...
class  AbstractPbmPlusFile
 File containing an image in some PBM+ format. More...
class  AbstractQgarError
 Base class for Qgar exceptions. More...
class  BoundingBox
 A bounding box. More...
class  CannyGradientImage
 Canny Gradient image. More...
class  CleanedBinaryImage
 A Cleaned binary image. More...
class  CloseBinaryImage
 Closing of a binary image, using morphological operators. More...
class  CloseImage
 Close a greylevel image using morphological operators. More...
class  Component
 A (connected) component. More...
class  ConnectedComponents
 Connected components extracted from a binary image. More...
class  ConnectedComponentsImpl
 Implementation of the construction of connected components of a binary image. More...
class  ContrastEnhancedImage
 Morphologically contrast enhanced image. More...
class  DericheGradientImage
 Deriche's optimal edge detector. More...
class  DilatedBinaryImage
 Dilate a binary image using morphological operators. More...
class  DilatedImage
 Dilate a grey-level image using morphological operators. More...
class  Dist34BlackCCImage
class  Dist34Image
 Distance transformation of all (black and white) components of a binary image, using 3-4 Chamfer distance. More...
class  Dist8cBlackCCImage
 8-connected distance transformation of a binary image, for black components only. More...
class  DxfFile
 File including Dxf graphics. More...
class  ErodedBinaryImage
 Erode a binary image using morphological operators. More...
class  ErodedImage
 Erode a grey-level image using morphological operators. More...
class  File
 Qgar regular file. More...
class  FreemanChain
 Chain of Freeman codes. More...
class  FreemanCode
 A Freeman code, defined as a pair (direction, length). More...
class  GenConvexHull
 A convex hull represented by a series of points with coordinates of type T. More...
class  GenConvolImage
 Convolution of an image by a 1D or 2D mask. More...
class  GenEdge
 Edge of a parameterized graph containing (user-defined) data. More...
class  GenImage_NoCheck
 No-check policy. More...
class  GenImage_BoundCheck
 Policy to check bounds of pixel values. More...
class  GenImage
 Template class for a generic image with pixels of type T. More...
class  GenCluster
 A cluster, as generated by the k-means algorithm implemented by class qgar::GenKMeans. More...
class  GenKMeans
 Template class for partitioning a list of objects of type T into a (given) number of clusters using a k-means algorithm. More...
class  GenMask1d
 Generic 1D mask with coefficients of type T. More...
class  GenMask2d
 Generic 2D mask with coefficients of type T. More...
class  GenNode
 Node of a parameterized graph containing (user-defined) data. More...
class  GenPointChain
 Chain of points having coordinates of type T. More...
class  GenTreeNode
 Template class for a node of a Qgar Tree (see class qgar::GenTree). More...
class  GenTree
 A tree whose nodes contain data of type T. More...
class  GenUGraph
 Parameterized undirected graph. More...
class  GeodesicRecBinaryImage
 Complete geodesic reconstruction of a binary image by dilation. More...
class  GeodesicRecEroBinaryImage
 Complete geodesic reconstruction of a binary image by erosion. More...
class  GeodesicRecEroImage
 Complete geodesic reconstruction of a grey-level image by erosion. More...
class  GeodesicRecImage
 Complete geodesic reconstruction of a greylevel image by dilation. More...
class  GradientLocalMaxImage
 Local maxima of the Gradient. More...
class  GradientModuleImage
 Module of the Gradient of an image. More...
class  Histogram
 General representation of a histogram. More...
class  HysteresisBinaryImage
 Binary image created from the local maxima of a gradient using a hysteresis thresholding. More...
class  ISerializable
 Base interface of all serializable objects. More...
class  IsotropicDilatedBinaryImage
 Dilate a binary image using a variation of the dilation alogrithm. More...
class  KanungoBinaryImage
 Degradation of a binary image, using Kanungo et al 's method. More...
class  LabeledSkeletonImage
 Skeleton computed using the (3,4)-distance transform. More...
class  LaplacianOfGaussianImage
 Laplacian of Gaussian image. More...
class  LinDilatedBinaryImage
 Binary image dilated using a segment. More...
class  LinDilatedImage
 Grey-level image dilated using a segment. More...
class  LinErodedBinaryImage
 Binary image linearly eroded, using a segment. More...
class  LinErodedImage
 Grey-level image linearly eroded, using a segment. More...
class  LinkedChainList
 List of linked chains of integer points. More...
class  Maer
 Minimum-Area Encasing Rectangle (MAER). More...
class  MapleFile
 File containing a Maple program. More...
class  Mask1dGauss
 1D Gaussian convolution mask More...
class  Mask1dGaussD1
 First derivative of a 1D Gaussian mask. More...
class  Mask1dGaussD2
 Second derivative of a 1D Gaussian mask. More...
class  Math
 Global constants and thresholds, implemented as static data members of the class. More...
class  NiblackBinaryImage
 Binary image created by adaptive thresholding of a grey-level image. More...
class  OpenBinaryImage
 Open a binary image using morphological operators. More...
class  OpenImage
 Open a grey-level image using morphological operators. More...
class  PbmFile
 File containing a binary image in PBM format. More...
class  PgmFile
 File containing a Grey-level image in PGM format. More...
class  PruneSmallCCBinaryImage
 Prune small connected components. More...
class  QgarApp
 To handle parameters and interactive mode of an application. More...
class  QgarAppDescr
 Parses an XML description of a Qgar application and builds its representation. More...
class  QgarAppParamDescr
 Memory representation of an application parameter description. More...
class  QgarArgs
 To handle the parameters given to an application. More...
class  QgarErrorAlgorithm
 Class for Qgar algorithm exceptions. More...
class  QgarErrorDeveloper
 Class for Qgar developer exceptions. More...
class  QgarErrorDomain
 Class for Qgar domain exceptions. More...
class  QgarErrorInvalidArg
 Class for Qgar domain exceptions. More...
class  QgarErrorIO
 Class for Qgar Input/Output exceptions. More...
class  QgarErrorUser
class  RegionalMaxBinaryImage
 Regional maxima of given image. More...
class  RegionalMaxImage
 Regional maxima of given image. More...
class  RegionalMinBinaryImage
 Regional minima of given image. More...
class  RegionalMinImage
 Regional minima of given image. More...
class  RWArcVector
 A vector containing Qgar arcs. More...
class  RWTree
 Private class of class RWSegmentVector to construct a binary tree during Rosin and West's polygonal approximation. More...
class  RWSegmentVector
 Recursive polygonal approximation of a chain. More...
class  StandardDeviationImage
 Image of standard deviation. More...
struct  qstlDeleteObject
 Struct designed to delete objects. More...
struct  qstlCloneObject
 Struct designed to clone objects. More...
class  mem_ptr_fun_t
 Adaptor for member functions to a unary_function. More...
class  const_mem_ptr_fun_t
 Adaptor for const member functions to a unary_function. More...
class  mem_ptr_fun2_t
 Adaptor for member functions to a binary_function. More...
class  const_mem_ptr_fun2_t
 Adaptor for member functions to a binary_function. More...
class  TgifFile
 File including Tgif graphics (designed for Tgif version 3.0, patchlevel 17). More...
class  ThresBinaryImage
 Elementary binarization, using a constant threshold. More...
class  TTBinaryImage
 Binary image created from a grey-level image, using binarization method designed by Trier and Taxt [Trier and Taxt, 1995] from White and Rohrer's method. More...
class  UltimateErodedBinaryImage
 Compute the ultimate eroded set of a binary image. More...
class  WDSegment
 A segment resulting from a polygonal approximation performed according to Wall and Danielsson's method. More...
class  WDSegmentList
 Polygonal approximation of a chain of points, using Wall & Danielsson's method. More...

Primitive types

typedef AbstractGenPrimitive<
int > 
Primitive
 Primitive with integer coordinates.
typedef AbstractGenPrimitive<
int > 
IPrimitive
 Primitive with integer coordinates.
typedef AbstractGenPrimitive<
float > 
FPrimitive
 Primitive with float coordinates.
typedef AbstractGenPrimitive<
double > 
DPrimitive
 Primitive with double coordinates.

Qgar Abstract Primitives

typedef AbstractGenQgarPrimitive<
int > 
QgarPrimitive
 Qgar primitive with integer coordinates.
typedef AbstractGenQgarPrimitive<
int > 
IQgarPrimitive
 Qgar primitive with integer coordinates.
typedef AbstractGenQgarPrimitive<
float > 
FQgarPrimitive
 Qgar primitive with float coordinates.
typedef AbstractGenQgarPrimitive<
double > 
DQgarPrimitive
 Qgar primitive with double coordinates.

Arc types

typedef GenArc< int > Arc
 Arc with integer coordinates.
typedef GenArc< int > IArc
 Arc with integer coordinates.
typedef GenArc< float > FArc
 Arc with float coordinates.
typedef GenArc< double > DArc
 Arc with double coordinates.

Point types

typedef GenPoint< int > Point
 Points with integer coordinates.
typedef GenPoint< int > IPoint
 Points with integer coordinates.
typedef GenPoint< float > FPoint
 Points with coordinates of type float.
typedef GenPoint< double > DPoint
 Points with coordinates of type double.

Polygon types

typedef GenPolygon< int > Polygon
 Polygon with integer coordinates.
typedef GenPolygon< int > IPolygon
 Polygon with integer coordinates.
typedef GenPolygon< float > FPolygon
 Polygon with float coordinates.
typedef GenPolygon< double > DPolygon
 Polygon with double coordinates.

Polyline types

typedef GenPolyline< int > Polyline
 Polyline with integer coordinates.
typedef GenPolyline< int > IPolyline
 Polyline with integer coordinates.
typedef GenPolyline< float > FPolyline
 Polyline with float coordinates.
typedef GenPolyline< double > DPolyline
 Polyline with double coordinates.

Qgar Arcs

typedef GenQgarArc< int > QgarArc
 Qgar arc with integer coordinates.
typedef GenQgarArc< int > IQgarArc
 Qgar arc with integer coordinates.
typedef GenQgarArc< float > FQgarArc
 Qgar arc with float coordinates.
typedef GenQgarArc< double > DQgarArc
 Qgar arc with double coordinates.

Qgar Polygon types

typedef GenQgarPolygon< int > QgarPolygon
 Qgar polygon with integer coordinates.
typedef GenQgarPolygon< int > IQgarPolygon
 Qgar polygon with integer coordinates.
typedef GenQgarPolygon< float > FQgarPolygon
 Qgar polygon with float coordinates.
typedef GenQgarPolygon< double > DQgarPolygon
 Qgar polygon with double coordinates.

Qgar Polyline types

typedef GenQgarPolyline< int > QgarPolyline
 Qgar polyline with integer coordinates.
typedef GenQgarPolyline< int > IQgarPolyline
 Qgar polyline with integer coordinates.
typedef GenQgarPolyline< float > FQgarPolyline
 Qgar polyline with float coordinates.
typedef GenQgarPolyline< double > DQgarPolyline
 Qgar polyline with double coordinates.

Qgar Segments

typedef GenQgarSegment< int > QgarSegment
 Qgar segment with integer coordinates.
typedef GenQgarSegment< int > IQgarSegment
 Qgar segment with integer coordinates.
typedef GenQgarSegment< float > FQgarSegment
 Qgar segment with float coordinates.
typedef GenQgarSegment< double > DQgarSegment
 Qgar segment with double coordinates.

Segment types

typedef GenSegment< int > Segment
 Segment with integer coordinates.
typedef GenSegment< int > ISegment
 Segment with integer coordinates.
typedef GenSegment< float > FSegment
 Segment with float coordinates.
typedef GenSegment< double > DSegment
 Segment with double coordinates.

Predefined abstract point chain types

typedef AbstractGenPointChain<
int > 
AbstChain
 Abstract chain of points with integer coordinates.
typedef AbstractGenPointChain<
int > 
IAbstChain
 Abstract chain of points with integer coordinates.
typedef AbstractGenPointChain<
float > 
FAbstChain
 Abstract chain of points with float coordinates.
typedef AbstractGenPointChain<
double > 
DAbstChain
 Abstract chain of points with double coordinates.

Predefined convolution types

typedef GenConvolImage< int > IConvolImage
 Convolution of an image of integer pixels.
typedef GenConvolImage< float > FConvolImage
 Convolution of an image of float pixels.
typedef GenConvolImage< double > DConvolImage
 Convolution of an image of double pixels.
typedef GenConvolImage< double > ConvolImage
 Convolution of an image of double pixels.

Basic Image Types

typedef GenImage< unsigned
char > 
BinaryImage
 Binary image (pixels of type unsigned char).
typedef GenImage< unsigned
char > 
GreyLevelImage
 Grey-level Image (pixels of type unsigned char).
typedef GenImage< unsigned
char > 
UCharImage
 Image with unsigned char pixels.
typedef GenImage< int > IntImage
 Image with int pixels.
typedef GenImage< float > FloatImage
 Images with float pixels.
typedef GenImage< double > DoubleImage
 Images with double pixels.

Bounded Image Types

typedef GenImage< unsigned
int, GenImage_BoundCheck
BoundedBinaryImage
 Bounded Binary Image (pixel of type unsigned int).
typedef GenImage< unsigned
int, GenImage_BoundCheck
BoundedGreylevelImage
 Bounded Greylevel Image (pixel of type unsigned int).
typedef GenImage< unsigned
char, GenImage_BoundCheck
BoundedUCharImage
 Bounded image with unsigned char pixels.
typedef GenImage< int, GenImage_BoundCheckBoundedIntImage
 Bounded Image with int pixels.
typedef GenImage< float, GenImage_BoundCheckBoundedFloatImage
 Bounded Image with float pixels.
typedef GenImage< double,
GenImage_BoundCheck
BoundedDoubleImage
 Bounded Image with double pixels.

1D Masks

typedef GenMask1d< int > Mask1d
 1D mask with coefficients of type int.
typedef GenMask1d< int > IMask1d
 1D mask with coefficients of type int.
typedef GenMask1d< float > FMask1d
 1D mask with coefficients of type float.
typedef GenMask1d< double > DMask1d
 1D mask with coefficients of type double.

2D Masks

typedef GenMask2d< int > Mask2d
 2D mask with coefficients of type int.
typedef GenMask2d< int > IMask2d
 2D mask with coefficients of type int.
typedef GenMask2d< float > FMask2d
 2D mask with coefficients of type float.
typedef GenMask2d< double > DMask2d
 2D mask with coefficients of type double.

Predefined point chain types

typedef GenPointChain< int > PointChain
 Chain of points with integer coordinates.
typedef GenPointChain< int > IPointChain
 Chain of points with integer coordinates.
typedef GenPointChain< float > FPointChain
 Chain of points with float coordinates.
typedef GenPointChain< double > DPointChain
 Chain of points with double coordinates.

Types related to graphical primitives

enum  QGEcolor {
  QGE_COLOR_NONE,
  QGE_COLOR_DEFAULT,
  QGE_COLOR_BLACK,
  QGE_COLOR_DARK_GRAY,
  QGE_COLOR_GRAY,
  QGE_COLOR_LIGHT_GRAY,
  QGE_COLOR_WHITE,
  QGE_COLOR_MAGENTA,
  QGE_COLOR_PURPLE,
  QGE_COLOR_CYAN,
  QGE_COLOR_MEDIUM_BLUE,
  QGE_COLOR_BLUE,
  QGE_COLOR_OLIVE_GREEN,
  QGE_COLOR_DARK_GREEN,
  QGE_COLOR_GREEN,
  QGE_COLOR_YELLOW,
  QGE_COLOR_ORANGE,
  QGE_COLOR_RED,
  QGE_COLOR_PINK,
  QGE_COLOR_SALMON_PINK,
  QGE_COLOR_BROWN,
  QGE_COLOR_CHOCOLATE_BROWN
}
 Colors. More...
enum  QGEoutline {
  QGE_OUTLINE_NONE,
  QGE_OUTLINE_DEFAULT,
  QGE_OUTLINE_SOLID,
  QGE_OUTLINE_DASH_SSPACED,
  QGE_OUTLINE_DASH_SPACED,
  QGE_OUTLINE_DASH_REGULAR,
  QGE_OUTLINE_DASH_LS,
  QGE_OUTLINE_DASH_SS,
  QGE_OUTLINE_DASH_LSS,
  QGE_OUTLINE_DASH_LSPACED,
  QGE_OUTLINE_DOT
}
 Outline types. More...

Types related to PBM files

enum  QGEpbmFormat {
  QGE_PBM_PLAIN,
  QGE_PBM_RAW
}
 PBM+ file formats. More...

Types related to image processing

enum  QGEaxis {
  QGE_AXIS_X,
  QGE_AXIS_Y
}
 Coordinate axes. More...
enum  QGEbw {
  QGE_BW_WHITE,
  QGE_BW_BLACK
}
 Binary pixel type (black & white). More...
enum  QGEdirection {
  QGE_DIRECTION_N,
  QGE_DIRECTION_NE,
  QGE_DIRECTION_E,
  QGE_DIRECTION_SE,
  QGE_DIRECTION_S,
  QGE_DIRECTION_SW,
  QGE_DIRECTION_W,
  QGE_DIRECTION_NW
}
 The 8 cardinal directions. More...
enum  QGEorientation {
  QGE_ORIENTATION_HOR,
  QGE_ORIENTATION_DIAG_POS,
  QGE_ORIENTATION_VER,
  QGE_ORIENTATION_DIAG_NEG,
  QGE_ORIENTATION_ALL
}
 Orientations (of a line/segment). More...
enum  QGEposition {
  QGE_POSITION_TOP,
  QGE_POSITION_RIGHT,
  QGE_POSITION_BOTTOM,
  QGE_POSITION_LEFT
}
 Relative positions. More...

Global functions to compute angles between vectors

Warning:
 O
  +---------------> X
  |\    |
  | \ <-'
  |  \    angle (in radians unless specified)
  |   \
  |
  v

    Y
  • The origin of the coordinate system is at top left corner.
  • Angles are clockwise from the X axis.


template<class T>
double qgAngle (const GenPoint< T > &aPt1, const GenPoint< T > &aPt2)
 Angle (in [0, 2PI[ radians) between the X axis and the vector formed by the two given points.
template<class T>
double qgAngleDegrees (const GenPoint< T > &aPt1, const GenPoint< T > &aPt2)
 Same as qgar::qgAngle(const GenPoint<T>&, const GenPoint<T>&), but the result is given in [0, 360[ degrees.
template<class T>
double qgAngle (const GenPoint< T > &aPt1, const GenPoint< T > &aPt2, const GenPoint< T > &aPt3)
 Angle (in [0, 2PI[ radians) between two vectors determined by 3 points.
template<class T>
double qgAngleDegrees (const GenPoint< T > &aPt1, const GenPoint< T > &aPt2, const GenPoint< T > &aPt3)
 Same as qgar::qgAngle(const GenPoint<T>&,const GenPoint<T>&, const GenPoint<T>&), but the result is given in [0, 360[ degrees.
template<class T>
double qgAngle (const GenPoint< T > &aPt1, const GenPoint< T > &aPt2, const GenPoint< T > &aPt3, const GenPoint< T > &aPt4)
 Angle (in [0, 2PI[ radians) between two vectors determined by 4 points.
template<class T>
double qgAngleDegrees (const GenPoint< T > &aPt1, const GenPoint< T > &aPt2, const GenPoint< T > &aPt3, const GenPoint< T > &aPt4)
 Same as qgar::qgAngle(const GenPoint<T>&,const GenPoint<T>&, const GenPoint<T>&, const GenPoint<T>&), but the result is given in [0, 360[ degrees.
template<class T>
double qgSlope (const GenPoint< T > &aPt1, const GenPoint< T > &aPt2)
 Angle (in [0, PI[ radians) between the X axis and the segment formed by the two given points.
template<class T>
double qgSlopeDegrees (const GenPoint< T > &aPt1, const GenPoint< T > &aPt2)
 Same as qgar::qgSlope(const GenPoint<T>&, const GenPoint<T>&), but the result is given in [0, 180[ degrees.

Global functions to compute distances between primitives

template<class T>
qgDX (const GenPoint< T > &aPt1, const GenPoint< T > &aPt2)
 Difference between X coordinates of the given points: X(aPt1) - X(aPt2).
template<class T>
qgDY (const GenPoint< T > &aPt1, const GenPoint< T > &aPt2)
 Difference between Y coordinates of the given points: Y(aPt1) - Y(aPt2).
template<class T>
double qgDist (const GenPoint< T > &aPt1, const GenPoint< T > &aPt2)
 Distance between two points.
template<class T>
double qgDist (const GenPoint< T > &c, const GenPoint< T > &a, const GenPoint< T > &b)
 Distance between point c and its a perpendicular projection onto the line passing through points a and b.
template<class T>
double qgDist (const GenSegment< T > &aSeg)
 Distance between point (0,0) and its perpendicular projection onto the line supporting a segment.
template<class T>
double qgDist (const GenQgarSegment< T > &aQSeg)
 Distance between point (0,0) and its perpendicular projection onto the line supporting a Qgar segment.
template<class T>
double qgDist (const GenPoint< T > &aPt, const GenSegment< T > &aSeg)
 Distance between a point and its perpendicular projection onto the line supporting a segment.
template<class T>
double qgDist (const GenPoint< T > &c, const GenQgarSegment< T > &aQSeg)
 Distance between a point and its perpendicular projection onto the line supporting a Qgar segment.
template<class T>
double qgSqr_dist (const GenPoint< T > &aPt1, const GenPoint< T > &aPt2)
 Squared distance between two points.

Point serialization/deserialization operators

Warning:
Class qgar::GenPoint does not derive from class qgar::ISerializable to get a smaller implementation of a point, and thus to save memory space when dealing with (lots of) points; if points were serializable, they would be implemented using an extra pointer to the table for virtual functions (the destructor in this case).


template<class T>
std::istream & operator>> (std::istream &anInStream, GenPoint< T > &aPt)
 Deserialize a point (read it from an input stream).
template<class T>
std::ostream & operator<< (std::ostream &anOutStream, const GenPoint< T > &aPt)
 Serialize a point (write it into an output stream).

Global geometrical functions which compute points

template<class T>
bool qgCircleCenter (const GenPoint< T > &t, const GenPoint< T > &p, const GenPoint< T > &q, GenPoint< double > &aCenter)
 Center of the circle passing through three given points.
template<class T>
bool qgIntersect (const GenSegment< T > &ab, const GenSegment< T > &cd, GenPoint< double > &i, double anAngle=Math::epsilonRadian())
 Intersection of the lines supporting two given segments.
template<class T>
bool qgIntersect (const GenQgarSegment< T > &aQSeg1, const GenQgarSegment< T > &aQSeg2, GenPoint< double > &aPt, double anAngle=Math::epsilonRadian())
 Intersection of the lines supporting two given Qgar segments.
template<class T>
GenPoint< double > qgMiddle (const GenSegment< T > &aSeg)
 Return the middle point of a segment.
template<class T>
GenPoint< double > qgMiddle (const GenQgarSegment< T > &aQSeg)
 Return the middle point of a Qgar segment.
template<class T>
GenPoint< double > qgMiddle (const GenPoint< T > &aPt1, const GenPoint< T > &aPt2)
 Return the middle point of the segment joining two points.
template<class T>
GenPoint< double > qgProjectPoint (const GenPoint< T > &aPt, const GenSegment< T > &aSeg)
 Return the orthogonal projection of a point onto a segment.
template<class T>
void qgProject (GenPoint< double > &aPt, const GenSegment< T > &aSeg)
 Orthogonal projection of a point onto a segment.
template<class T>
GenPoint< double > qgProjectPoint (const GenPoint< T > &aPt, const GenQgarSegment< T > &aQSeg)
 Return the orthogonal projection of a point onto a Qgar segment.
template<class T>
void qgProject (GenPoint< double > &aPt, const GenQgarSegment< T > &aQSeg)
 Ortogonal projection of a point onto a Qgar segment.

Global functions which compute segments

template<class T>
GenSegment< double > qgPerpendicular (const GenPoint< T > &aPt, const GenSegment< T > &aSeg)
 Return a segment perpendicular to the given segment.
template<class T>
GenQgarSegment< double > qgPerpendicular (const GenPoint< T > &aPt, const GenQgarSegment< T > &aQSeg)
 Return a Qgar segment perpendicular to the given Qgar segment.

Global functions to translate points and primitives

template<class T>
GenPoint< T > qgTranslatedPoint (const GenPoint< T > &aPt, T aTransX, T aTransY)
 Return the given point translated along X and Y axis.
template<class T>
GenSegment< T > qgTranslatedSegment (const GenSegment< T > &aSeg, T aTransX, T aTransY)
 Return the given segment translated along X and Y axis.
template<class T>
GenArc< T > qgTranslatedArc (const GenArc< T > &anArc, T aTransX, T aTransY)
 Return the given arc translated along X and Y axis.
template<class T>
GenPolygon< T > qgTranslatedPolygon (const GenPolygon< T > &aPolygon, T aTransX, T aTransY)
 Return the given polygon translated along X and Y axis.
template<class T>
GenPolyline< T > qgTranslatedPolyline (const GenPolyline< T > &aPolyline, T aTransX, T aTransY)
 Return the given polyline translated along X and Y axis.

Global functions about array indexes

template<class T>
int qgMinElement (const T *const anArray, int aSize)
 Return the index of the minimum element of an array.
template<class T>
int qgMinElement (const T *const anArray, int aFirstIdx, int aLastIdx)
 Return the index of the minimum element of a subrange of an array.
template<class T>
int qgMaxElement (const T *const anArray, int aSize)
 Return the index of the maximum element of an array.
template<class T>
int qgMaxElement (const T *const anArray, int aFirstIdx, int aLastIdx)
 Return the index of the maximum element of a subrange of an array.
template<class T>
int qgFind (const T *const anArray, int aSize, T aValue)
 Return the index of a value in an array.
template<class T>
int qgFind (const T *const anArray, int aFirstIdx, int aLastIdx, T aValue)
 Return the index of a value in a subrange of an array.

Global functions for array initialization

template<class T>
void qgFill (T *anArray, int aSize, T aValue)
 Set all elements of an array to a value.
template<class T>
void qgFill (T *anArray, int aFirstIdx, int aLastIdx, T aValue)
 Set each element of a subrange of an array.
template<class T>
void qgMemSet (T *anArray, int aSize)
 Set all bytes of an array to 0.
template<class T>
void qgMemSet (T *anArray, int aFirstIdx, int aLastIdx)
 Set all bytes of an array to 0.

Global mapping functions on arrays

template<class T>
void qgForEach (T *const aSource, T *aDest, int aSize, T(*anOperation)(const T &, const T &))
 Apply a function to pairs of elements from two arrays.
template<class T>
void qgForEach (T *const aSource, T *aDest, int aFirstIdx, int aLastIdx, T(*anOperation)(const T &, const T &))
 Apply a given function to pairs of elements from a subrange of two arrays.

KMeans helper functions

template<class T>
std::vector< GenCluster< T > > qgKMeans (const std::vector< T > &anObjVect, double(*aDistFunction)(const T &, const T &), int aClusterCnt=3) throw (QgarErrorAlgorithm)
 Construct a partition of clusters using a distance function.
template<class T>
std::vector< GenCluster< T > > qgKMeans (const std::vector< T > &anObjVect, double(*aDistFunction)(const T &, const T &), std::vector< T * > &aCenterVector, int aClusterCnt=3) throw (QgarErrorAlgorithm)
 Construct a partition of clusters of given centers, using a distance function.

Global functions for directions

  (0,0) +--------------------------------------------->  X
        |
        |                 QGE_DIRECTION_N
        |                        |  
        |     QGE_DIRECTION_NW \ | / QGE_DIRECTION_NE
        |                       \|/
        |   QGE_DIRECTION_W -----+----- QGE_DIRECTION_E
        |                       /|\
        |     QGE_DIRECTION_SW / | \ QGE_DIRECTION_SE
        |                        |
        |                 QGE_DIRECTION_S
     Y  V


QGEdirection qgDirection (int aDx, int aDy) throw (QgarErrorDomain)
 Return the direction corresponding to a (X,Y) translation.
qgar::QGEdirection qgOpposite (qgar::QGEdirection aDir) throw (qgar::QgarErrorInvalidArg)
 Return the opposite direction of a given direction.

Global functions for black & white.

int qgBWtoInt (QGEbw aBW)
 Conversion from qgar::QGEbw (black & white) to integer. Return 1 for qgar::QGE_BW_BLACK,.
int qgBWrevInt (QGEbw aBW)
 Dual-conversion from qgar::QGEbw (black & white) to integer.
QGEbw qgIntToBW (int anInt)
 Conversion from integer to qgar::QGEbw (black & white).
QGEbw qgIntToWB (int anInt)
 Dual-conversion from integer to qgar::QGEbw (black & white).
QGEbw qgBWswitch (QGEbw aBW)
 Switch between black and white.

Global functions for object deserialization

void qgReadObjName (std::istream &anIStream, const char *aClassName) throw (QgarErrorIO)
 Read the name part of an object.
template<class T>
void qgReadObjData (std::istream &anIStream, T &anObject) throw (qgar::QgarErrorIO)
 Read a data member of class T.

Stream operators for object serialization/deserialization

std::istream & operator>> (std::istream &anInStream, ISerializable &aSerial)
 Reads a serializable object from and input stream.
std::ostream & operator<< (std::ostream &anOutStream, const ISerializable &aSerial)
 Writes a serializable object to an output stream.

Kanungo degradation helper functions

void qgKanungoDegradation (BinaryImage &anImg, double alpha0, double alpha, double beta0, double beta, double eta, int structEltSize) throw (QgarErrorInvalidArg)
 Degrade a given image.

Global error functions

double qgErf (double x)
 Compute the error function of the argument.
double qgErfc (double x)
 Compute the complementary error function of the argument.

Global functions to test approximate equality between numbers

bool qgEq0 (double aDouble, double anEpsilon=Math::epsilonD())
 Is a double number approximately equal to zero?
bool qgEq0 (float aFloat, float anEpsilon=Math::epsilonF())
 Is a float number approximately equal to zero?
bool qgEq0 (int anInt, int anEpsilon=Math::epsilonI())
 Is an integer number approximately equal to zero?
bool qgEq0Radian (double aRadian, double anEpsilon=Math::epsilonRadian())
 Is an angle in radians approximately equal to zero?
bool qgEq0Degree (double aDegree, double anEpsilon=Math::epsilonDegree())
 Is an angle in degrees approximately equal to zero?
bool qgEq (double aDouble1, double aDouble2, double anEpsilon=Math::epsilonD())
 Approximate equality between two double numbers.
bool qgEq (float aFloat1, float aFloat2, float anEpsilon=Math::epsilonF())
 Approximate equality between two float numbers.
bool qgEq (int anInt1, int anInt2, int anEpsilon=Math::epsilonI())
 Approximate equality between two integer numbers.
bool qgEqRadian (double aRadian1, double aRadian2, double anEpsilon=Math::epsilonRadian())
 Approximate equality between two angles in radians.
bool qgEqDegree (double aDegree1, double aDegree2, double anEpsilon=Math::epsilonDegree())
 Approximate equality between two angles in degrees.

Global functions to test approximate inequality between numbers

bool qgNotEq0 (double aDouble, double anEpsilon=Math::epsilonD())
 Is a double number approximately not equal to zero?
bool qgNotEq0 (float aFloat, float anEpsilon=Math::epsilonF())
 Is a float number approximately not equal to zero?
bool qgNotEq (int anInt, int anEpsilon=Math::epsilonI())
 Is an integer number approximately not equal to zero?
bool qgNotEq0Radian (double aRadian, double anEpsilon=Math::epsilonRadian())
 Is an angle in radians approximately not equal to zero?
bool qgNotEq0Degree (double aDegree, double anEpsilon=Math::epsilonDegree())
 Is an angle in degrees approximately not equal to zero?
bool qgNotEq (double aDouble1, double aDouble2, double anEpsilon=Math::epsilonD())
 Approximate inequality between two double numbers.
bool qgNotEq (float aFloat1, float aFloat2, float anEpsilon=Math::epsilonF())
 Approximate inequality between two float numbers.
bool qgNotEq (int anInt1, int anInt2, int anEpsilon=Math::epsilonI())
 Approximate inequality between two integer numbers.
bool qgNotEqRadian (double aRadian1, double aRadian2, double anEpsilon=Math::epsilonRadian())
 Approximate inequality between two angles in radians.
bool qgNotEqDegree (double aDegree1, double aDegree2, double anEpsilon=Math::epsilonDegree())
 Approximate inequality between two angles in degrees.

Global functions for conversion in radians and degrees

double qgRadiansToDegrees (double aRadians)
 Convert from radians to degrees.
double qgDegreesToRadians (double aDegrees)
 Convert from degrees to radians.

Global functions to compute the module of a number

template<class T>
qgAbs (T aVal)
 Module of given value (any type).
template<>
int qgAbs< int > (int aNb)
 Module of an int number.
template<>
float qgAbs< float > (float aNb)
 Module of a float number.
template<>
double qgAbs< double > (double aNb)
 Module of a double number.

Binarization helper functions

ThresBinaryImage qgThresBinarization (const GreyLevelImage &anImg, int aThres)
 Returns a binary image, result of the binarization of the given grey-level image, using a constant threshold.

Typedefs

typedef GenConvexHull< int > ConvexHull
 Hull with integer coordinates.
typedef GenConvexHull< int > IConvexHull
 Hull with integer coordinates.
typedef GenConvexHull< float > FConvexHull
 Hull with float coordinates.
typedef GenConvexHull< double > DConvexHull
 Hull with double coordinates.

Enumerations

enum  QGEfileStatus {
  QGE_FILE_STATUS_CLOSED,
  QGE_FILE_STATUS_READ_ONLY,
  QGE_FILE_STATUS_WRITE_ONLY,
  QGE_FILE_STATUS_APPEND,
  QGE_FILE_STATUS_READ_WRITE,
  QGE_FILE_STATUS_READ_APPEND
}
 File status. More...

Functions

template<>
double qgDist< double > (const GenPoint< double > &c, const GenPoint< double > &a, const GenPoint< double > &b)
template<>
bool qgCircleCenter< double > (const GenPoint< double > &t, const GenPoint< double > &p, const GenPoint< double > &q, GenPoint< double > &aCenter)
template<>
bool qgIntersect< double > (const GenSegment< double > &ab, const GenSegment< double > &cd, GenPoint< double > &i, double anAngle)
template<>
void qgProject< double > (GenPoint< double > &aPt, const GenSegment< double > &aSeg)
void __qgPrintAssert (const char *anExpr, const char *aFile, int aLine)
 Print a diagnostic message about failure of an assertion.
QGEdirection qgOpposite (QGEdirection aDir) throw (QgarErrorInvalidArg)
int LINKEDCHAINLIST_connect4 (unsigned char *p, int w)
int LINKEDCHAINLIST_connect4M (unsigned char *p, int w)
int LINKEDCHAINLIST_connect8 (unsigned char *p, int w)
int LINKEDCHAINLIST_connect8M (unsigned char *p, int w)
Point LINKEDCHAINLIST_neigh (unsigned char *p, int l, int c, int w)
Point LINKEDCHAINLIST_neighPlus (unsigned char *p, int l, int c, int w)
Point LINKEDCHAINLIST_neigh4 (unsigned char *p, int l, int c, int w)
Point LINKEDCHAINLIST_neigh8 (unsigned char *p, int l, int c, int w)
Point LINKEDCHAINLIST_neighM (unsigned char *p, int l, int c, int w)
Point LINKEDCHAINLIST_neigh4M (unsigned char *p, int l, int c, int w)
Point LINKEDCHAINLIST_neigh8M (unsigned char *p, int l, int c, int w)
void LINKEDCHAINLIST_markNeigh (unsigned char *p, int w, int c4, int c8)
int LINKEDCHAINLIST_degree (unsigned char *p, int w)
void LINKEDCHAINLIST_loadBinNeigh (unsigned char *p, unsigned char *n, int w)
int LINKEDCHAINLIST_crossNb (unsigned char *n, int w)
static bool LINKEDCHAINLIST_tooSmall (PointChain &xChain)
bool LINKEDCHAINLIST_areNeigh (Point p1, Point p2)
int LINKEDCHAINLIST_canMerge (PointChain &ch1, PointChain &ch2)
void LINKEDCHAINLIST_mergeChains (PointChain &ch1, PointChain &ch2)
double MASK1DGAUSS_phi0 (double aX, double aSigma)
double MASK1DGAUSSD1_phi1 (double aX, double aSigma)
double MASK1DGAUSSD2_phi2 (double aX, double aSigma)
template<typename Result, typename X, typename Arg>
mem_ptr_fun_t< Result, X,
Arg > 
qstl_mem_ptr_fun (X *inst, Result(X::*f)(Arg))
 Adapts a single argument const member function to a unary_function.
template<typename Result, typename X, typename Arg1, typename Arg2>
mem_ptr_fun2_t< Result, X,
Arg1, Arg2 > 
qstl_mem_ptr_fun (X *inst, Result(X::*f)(Arg1, Arg2))
 Adapts a two arguments member function to a binary_function.
int TGIFFILE_arrowHeadWidth (int aThickness=1)
int TGIFFILE_arrowHeadHeight (int aThickness=1)

Variables

const unsigned char LINKEDCHAINLIST_MARK = 2
static int LINKEDCHAINLIST_MINL = 0
static int PRUNESMALLCC_WHITE = 0
static int PRUNESMALLCC_BLACK = 1
static int PRUNESMALLCC_NOCOMP = -1
const double RWSEGMENTVECTOR_VERY_LARGE_SIGNIFICANCE = 100000.0
static const BinaryImage::value_type LABEL_MINUS = 0
static const BinaryImage::value_type LABEL_ZERO = 1
static const BinaryImage::value_type LABEL_PLUS = 2
static const int WALLDANIELSSONSEGMENTLIST_MAX_DIR_CHANGE = 1


Typedef Documentation

typedef GenImage<unsigned char> qgar::BinaryImage
 

Binary image (pixels of type unsigned char).

Definition at line 1202 of file GenImage.H.

typedef GenImage<unsigned int, GenImage_BoundCheck> qgar::BoundedBinaryImage
 

Bounded Binary Image (pixel of type unsigned int).

Definition at line 1241 of file GenImage.H.

typedef GenImage<double, GenImage_BoundCheck> qgar::BoundedDoubleImage
 

Bounded Image with double pixels.

Definition at line 1266 of file GenImage.H.

typedef GenImage<float, GenImage_BoundCheck> qgar::BoundedFloatImage
 

Bounded Image with float pixels.

Definition at line 1261 of file GenImage.H.

typedef GenImage<unsigned int, GenImage_BoundCheck> qgar::BoundedGreylevelImage
 

Bounded Greylevel Image (pixel of type unsigned int).

Definition at line 1246 of file GenImage.H.

typedef GenImage<int, GenImage_BoundCheck> qgar::BoundedIntImage
 

Bounded Image with int pixels.

Definition at line 1256 of file GenImage.H.

typedef GenImage<unsigned char, GenImage_BoundCheck> qgar::BoundedUCharImage
 

Bounded image with unsigned char pixels.

Definition at line 1251 of file GenImage.H.

typedef GenConvexHull<int> qgar::ConvexHull
 

Hull with integer coordinates.

See also:
qgar::IConvexHull

Definition at line 451 of file GenConvexHull.H.

typedef GenConvexHull<double> qgar::DConvexHull
 

Hull with double coordinates.

Definition at line 468 of file GenConvexHull.H.

typedef GenMask1d<double> qgar::DMask1d
 

1D mask with coefficients of type double.

Definition at line 399 of file GenMask1d.H.

typedef GenMask2d<double> qgar::DMask2d
 

2D mask with coefficients of type double.

Definition at line 407 of file GenMask2d.H.

typedef GenImage<double> qgar::DoubleImage
 

Images with double pixels.

Definition at line 1227 of file GenImage.H.

typedef GenPointChain<double> qgar::DPointChain
 

Chain of points with double coordinates.

Definition at line 548 of file GenPointChain.H.

typedef GenQgarArc<double> qgar::DQgarArc
 

Qgar arc with double coordinates.

Definition at line 560 of file _QGAR_GenQgarArc.H.

typedef AbstractGenQgarPrimitive<double> qgar::DQgarPrimitive
 

Qgar primitive with double coordinates.

Definition at line 734 of file _QGAR_AbstractGenQgarPrimitive.H.

typedef GenConvexHull<float> qgar::FConvexHull
 

Hull with float coordinates.

Definition at line 463 of file GenConvexHull.H.

typedef GenImage<float> qgar::FloatImage
 

Images with float pixels.

Definition at line 1222 of file GenImage.H.

typedef GenMask1d<float> qgar::FMask1d
 

1D mask with coefficients of type float.

Definition at line 394 of file GenMask1d.H.

typedef GenMask2d<float> qgar::FMask2d
 

2D mask with coefficients of type float.

Definition at line 402 of file GenMask2d.H.

typedef GenPointChain<float> qgar::FPointChain
 

Chain of points with float coordinates.

Definition at line 543 of file GenPointChain.H.

typedef GenQgarArc<float> qgar::FQgarArc
 

Qgar arc with float coordinates.

Definition at line 555 of file _QGAR_GenQgarArc.H.

typedef AbstractGenQgarPrimitive<float> qgar::FQgarPrimitive
 

Qgar primitive with float coordinates.

Definition at line 729 of file _QGAR_AbstractGenQgarPrimitive.H.

typedef GenImage<unsigned char> qgar::GreyLevelImage
 

Grey-level Image (pixels of type unsigned char).

Definition at line 1207 of file GenImage.H.

typedef GenConvexHull<int> qgar::IConvexHull
 

Hull with integer coordinates.

See also:
qgar::ConvexHull

Definition at line 458 of file GenConvexHull.H.

typedef GenMask1d<int> qgar::IMask1d
 

1D mask with coefficients of type int.

See also:
qgar::Mask1d::Mask1d

Definition at line 389 of file GenMask1d.H.

typedef GenMask2d<int> qgar::IMask2d
 

2D mask with coefficients of type int.

See also:
qgar::GenMask2d::Mask2d

Definition at line 397 of file GenMask2d.H.

typedef GenImage<int> qgar::IntImage
 

Image with int pixels.

Definition at line 1217 of file GenImage.H.

typedef GenPointChain<int> qgar::IPointChain
 

Chain of points with integer coordinates.

See also:
PointChain

Definition at line 538 of file GenPointChain.H.

typedef GenQgarArc<int> qgar::IQgarArc
 

Qgar arc with integer coordinates.

See also:
qgar::QgarArc

Definition at line 550 of file _QGAR_GenQgarArc.H.

typedef AbstractGenQgarPrimitive<int> qgar::IQgarPrimitive
 

Qgar primitive with integer coordinates.

See also:
qgar::QgarPrimitive

Definition at line 724 of file _QGAR_AbstractGenQgarPrimitive.H.

typedef GenMask1d<int> qgar::Mask1d
 

1D mask with coefficients of type int.

See also:
qgar::Mask1d::IMask1d

Definition at line 382 of file GenMask1d.H.

typedef GenMask2d<int> qgar::Mask2d
 

2D mask with coefficients of type int.

See also:
qgar::GenMask2d::IMask2d

Definition at line 390 of file GenMask2d.H.

typedef GenPointChain<int> qgar::PointChain
 

Chain of points with integer coordinates.

See also:
IPointChain

Definition at line 531 of file GenPointChain.H.

typedef GenQgarArc<int> qgar::QgarArc
 

Qgar arc with integer coordinates.

See also:
qgar::IQgarArc

Definition at line 543 of file _QGAR_GenQgarArc.H.

typedef AbstractGenQgarPrimitive<int> qgar::QgarPrimitive
 

Qgar primitive with integer coordinates.

See also:
qgar::IQgarPrimitive

Definition at line 717 of file _QGAR_AbstractGenQgarPrimitive.H.

typedef GenImage<unsigned char> qgar::UCharImage
 

Image with unsigned char pixels.

Definition at line 1212 of file GenImage.H.


Enumeration Type Documentation

enum qgar::QGEcolor
 

Colors.

Default is black. See Tgif Color menu for visual appearance.

Enumerator:
QGE_COLOR_NONE 
QGE_COLOR_DEFAULT 
QGE_COLOR_BLACK 
QGE_COLOR_DARK_GRAY 
QGE_COLOR_GRAY 
QGE_COLOR_LIGHT_GRAY 
QGE_COLOR_WHITE 
QGE_COLOR_MAGENTA 
QGE_COLOR_PURPLE 
QGE_COLOR_CYAN 
QGE_COLOR_MEDIUM_BLUE 
QGE_COLOR_BLUE 
QGE_COLOR_OLIVE_GREEN 
QGE_COLOR_DARK_GREEN 
QGE_COLOR_GREEN 
QGE_COLOR_YELLOW 
QGE_COLOR_ORANGE 
QGE_COLOR_RED 
QGE_COLOR_PINK 
QGE_COLOR_SALMON_PINK 
QGE_COLOR_BROWN 
QGE_COLOR_CHOCOLATE_BROWN 

Definition at line 64 of file _QGAR_primitiveTypes.H.

enum qgar::QGEfileStatus
 

File status.

Enumerator:
QGE_FILE_STATUS_CLOSED 
QGE_FILE_STATUS_READ_ONLY 
QGE_FILE_STATUS_WRITE_ONLY 
QGE_FILE_STATUS_APPEND 
QGE_FILE_STATUS_READ_WRITE 
QGE_FILE_STATUS_READ_APPEND 

Definition at line 72 of file AbstractFile.H.

enum qgar::QGEoutline
 

Outline types.

Default is solid. See Line Dash in Tgif Properties menu for real visual appearance.

   QGE_OUTLINE_SOLID        : __________________
   QGE_OUTLINE_DASH_SSPACED : -  -  -  -  -  -  
   QGE_OUTLINE_DASH_SPACED  : - - - - - - - - - 
   QGE_OUTLINE_DASH_REGULAR : ------------------
   QGE_OUTLINE_DASH_LS      : __.__.__.__.__.__.
   QGE_OUTLINE_DASH_SS      : ------------------
   QGE_OUTLINE_DASH_LSS     : __..__..__..__..__
   QGE_OUTLINE_DASH_LSPACED : __  __  __  __  __
   QGE_OUTLINE_DOT          : ..................

Enumerator:
QGE_OUTLINE_NONE 
QGE_OUTLINE_DEFAULT 
QGE_OUTLINE_SOLID 
QGE_OUTLINE_DASH_SSPACED 
QGE_OUTLINE_DASH_SPACED 
QGE_OUTLINE_DASH_REGULAR 
QGE_OUTLINE_DASH_LS 
QGE_OUTLINE_DASH_SS 
QGE_OUTLINE_DASH_LSS 
QGE_OUTLINE_DASH_LSPACED 
QGE_OUTLINE_DOT 

Definition at line 112 of file _QGAR_primitiveTypes.H.

enum qgar::QGEpbmFormat
 

PBM+ file formats.

Enumerator:
QGE_PBM_PLAIN 
QGE_PBM_RAW 

Definition at line 73 of file AbstractPbmPlusFile.H.


Function Documentation

bool qgar::LINKEDCHAINLIST_areNeigh Point  p1,
Point  p2
 

Definition at line 625 of file LinkedChainList.C.

References qgar::GenPoint< T >::x(), and qgar::GenPoint< T >::y().

Referenced by LINKEDCHAINLIST_canMerge(), and LINKEDCHAINLIST_mergeChains().

int qgar::LINKEDCHAINLIST_canMerge PointChain ch1,
PointChain ch2
 

Definition at line 636 of file LinkedChainList.C.

References qgar::GenPointChain< T >::back(), qgar::GenPointChain< T >::front(), and LINKEDCHAINLIST_areNeigh().

Referenced by qgar::LinkedChainList::aChain(), and qgar::LinkedChainList::LinkedChainList().

int qgar::LINKEDCHAINLIST_connect4 unsigned char *  p,
int  w
 

Definition at line 84 of file LinkedChainList.C.

Referenced by qgar::LinkedChainList::aChain(), and qgar::LinkedChainList::LinkedChainList().

int qgar::LINKEDCHAINLIST_connect4M unsigned char *  p,
int  w
 

Definition at line 95 of file LinkedChainList.C.

References LINKEDCHAINLIST_MARK.

Referenced by qgar::LinkedChainList::aChain().

int qgar::LINKEDCHAINLIST_connect8 unsigned char *  p,
int  w
 

Definition at line 106 of file LinkedChainList.C.

Referenced by qgar::LinkedChainList::aChain(), and qgar::LinkedChainList::LinkedChainList().

int qgar::LINKEDCHAINLIST_connect8M unsigned char *  p,
int  w
 

Definition at line 117 of file LinkedChainList.C.

References LINKEDCHAINLIST_MARK.

Referenced by qgar::LinkedChainList::aChain().

int qgar::LINKEDCHAINLIST_crossNb unsigned char *  n,
int  w
 

Definition at line 596 of file LinkedChainList.C.

Referenced by qgar::LinkedChainList::LinkedChainList().

int qgar::LINKEDCHAINLIST_degree unsigned char *  p,
int  w
 

Definition at line 520 of file LinkedChainList.C.

Referenced by qgar::LinkedChainList::LinkedChainList().

void qgar::LINKEDCHAINLIST_loadBinNeigh unsigned char *  p,
unsigned char *  n,
int  w
 

Definition at line 570 of file LinkedChainList.C.

Referenced by qgar::LinkedChainList::LinkedChainList().

void qgar::LINKEDCHAINLIST_markNeigh unsigned char *  p,
int  w,
int  c4,
int  c8
 

Definition at line 422 of file LinkedChainList.C.

References LINKEDCHAINLIST_MARK.

Referenced by qgar::LinkedChainList::aChain().

void qgar::LINKEDCHAINLIST_mergeChains PointChain ch1,
PointChain ch2
 

Definition at line 647 of file LinkedChainList.C.

References qgar::GenPointChain< T >::back(), qgar::GenPointChain< T >::front(), LINKEDCHAINLIST_areNeigh(), qgar::GenPointChain< T >::pointList(), and qgar::GenPointChain< T >::reverse().

Referenced by qgar::LinkedChainList::aChain(), and qgar::LinkedChainList::LinkedChainList().

Point qgar::LINKEDCHAINLIST_neigh unsigned char *  p,
int  l,
int  c,
int  w
 

Definition at line 128 of file LinkedChainList.C.

Referenced by qgar::LinkedChainList::aChain(), and qgar::LinkedChainList::LinkedChainList().

Point qgar::LINKEDCHAINLIST_neigh4 unsigned char *  p,
int  l,
int  c,
int  w
 

Definition at line 234 of file LinkedChainList.C.

Referenced by qgar::LinkedChainList::LinkedChainList().

Point qgar::LINKEDCHAINLIST_neigh4M unsigned char *  p,
int  l,
int  c,
int  w
 

Definition at line 354 of file LinkedChainList.C.

References LINKEDCHAINLIST_MARK.

Referenced by qgar::LinkedChainList::aChain(), and qgar::LinkedChainList::LinkedChainList().

Point qgar::LINKEDCHAINLIST_neigh8 unsigned char *  p,
int  l,
int  c,
int  w
 

Definition at line 266 of file LinkedChainList.C.

Referenced by qgar::LinkedChainList::LinkedChainList().

Point qgar::LINKEDCHAINLIST_neigh8M unsigned char *  p,
int  l,
int  c,
int  w
 

Definition at line 386 of file LinkedChainList.C.

References LINKEDCHAINLIST_MARK.

Referenced by qgar::LinkedChainList::aChain(), and qgar::LinkedChainList::LinkedChainList().

Point qgar::LINKEDCHAINLIST_neighM unsigned char *  p,
int  l,
int  c,
int  w
 

Definition at line 302 of file LinkedChainList.C.

References LINKEDCHAINLIST_MARK.

Referenced by qgar::LinkedChainList::aChain().

Point qgar::LINKEDCHAINLIST_neighPlus unsigned char *  p,
int  l,
int  c,
int  w
 

Definition at line 182 of file LinkedChainList.C.

Referenced by qgar::LinkedChainList::LinkedChainList().

static bool qgar::LINKEDCHAINLIST_tooSmall PointChain xChain  )  [static]
 

Definition at line 615 of file LinkedChainList.C.

References LINKEDCHAINLIST_MINL, and qgar::GenPointChain< T >::size().

Referenced by qgar::LinkedChainList::aChain().

double qgar::@0::MASK1DGAUSS_phi0 double  aX,
double  aSigma
[static]
 

Definition at line 81 of file Mask1dGauss.C.

References qgar::Math::QG_SQRT_2, and qgErfc().

Referenced by qgar::Mask1dGauss::Mask1dGauss().

double qgar::@0::MASK1DGAUSSD1_phi1 double  aX,
double  aSigma
[static]
 

Definition at line 84 of file Mask1dGaussD1.C.

References qgar::Math::QG_1_SQRT_2PI.

Referenced by qgar::Mask1dGaussD1::Mask1dGaussD1().

double qgar::@0::MASK1DGAUSSD2_phi2 double  aX,
double  aSigma
[static]
 

Definition at line 84 of file Mask1dGaussD2.C.

References qgar::Math::QG_1_SQRT_2PI.

Referenced by qgar::Mask1dGaussD2::Mask1dGaussD2().

int qgar::qgBWrevInt QGEbw  aBW  )  [inline]
 

Dual-conversion from qgar::QGEbw (black & white) to integer.

Return 0 for qgar::QGE_BW_BLACK, and 1 for qgar::QGE_BW_WHITE.

Parameters:
aBW black or white (qgar::QGEbw)

Definition at line 208 of file image.H.

References QGE_BW_BLACK.

QGEbw qgar::qgBWswitch QGEbw  aBW  )  [inline]
 

Switch between black and white.

Return qgar::QGE_BW_WHITE for QGE_BW_BLACK, and QGE_BW_BLACK for qgar::QGE_BW_WHITE.

Parameters:
aBW black or white

Definition at line 258 of file image.H.

References QGE_BW_BLACK, and QGE_BW_WHITE.

Referenced by qgar::ConnectedComponentsImpl::nextCurrRun(), and qgar::ConnectedComponentsImpl::nextPrevRun().

int qgar::qgBWtoInt QGEbw  aBW  )  [inline]
 

Conversion from qgar::QGEbw (black & white) to integer. Return 1 for qgar::QGE_BW_BLACK,.

and 0 for qgar::QGE_BW_WHITE.

Parameters:
aBW black or white (qgar::QGEbw)

Definition at line 191 of file image.H.

References QGE_BW_BLACK.

template<>
bool qgar::qgCircleCenter< double > const GenPoint< double > &  t,
const GenPoint< double > &  p,
const GenPoint< double > &  q,
GenPoint< double > &  aCenter
[inline]
 

qgar::QGEdirection qgar::qgDirection int  aDx,
int  aDy
throw (QgarErrorDomain)
 

Return the direction corresponding to a (X,Y) translation.

Parameters:
aDx X translation
aDy Y translation
Warning:
The translation must be defined according to one of the 8 Freeman directions, precisely, that is to say, if aDx and aDy are both different from 0, |aDx| must be equal to |aDy|. Otherwise, the correctness of the the result is not guaranteed.
Exceptions:
qgar::QgarErrorDomain (arguments are 0's)

Definition at line 81 of file image.C.

References QGE_DIRECTION_E, QGE_DIRECTION_N, QGE_DIRECTION_NE, QGE_DIRECTION_NW, QGE_DIRECTION_S, QGE_DIRECTION_SE, QGE_DIRECTION_SW, and QGE_DIRECTION_W.

Referenced by qgar::WDSegmentList::PRIVATEperform(), qgar::FreemanChain::push_back(), and qgar::FreemanChain::push_front().

template<>
double qgar::qgDist< double > const GenPoint< double > &  c,
const GenPoint< double > &  a,
const GenPoint< double > &  b
[inline]
 

template<>
bool qgar::qgIntersect< double > const GenSegment< double > &  ab,
const GenSegment< double > &  cd,
GenPoint< double > &  i,
double  anAngle
[inline]
 

QGEbw qgar::qgIntToBW int  anInt  )  [inline]
 

Conversion from integer to qgar::QGEbw (black & white).

If the given number is 0, return qgar::QGE_BW_WHITE, else return qgar::QGE_BW_BLACK.

Parameters:
anInt an integer

Definition at line 225 of file image.H.

References QGE_BW_BLACK, and QGE_BW_WHITE.

QGEbw qgar::qgIntToWB int  anInt  )  [inline]
 

Dual-conversion from integer to qgar::QGEbw (black & white).

If the given number is 0, return qgar::QGE_BW_BLACK, else return qgar::QGE_BW_WHITE.

Parameters:
anInt an integer

Definition at line 242 of file image.H.

References QGE_BW_BLACK, and QGE_BW_WHITE.

qgar::QGEdirection qgar::qgOpposite qgar::QGEdirection  aDir  )  throw (qgar::QgarErrorInvalidArg)
 

Return the opposite direction of a given direction.

Parameters:
aDir a direction
Exceptions:
qgar::QgarErrorInvalidArg (unknown direction)

QGEdirection qgar::qgOpposite QGEdirection  aDir  )  throw (QgarErrorInvalidArg)
 

Definition at line 145 of file image.C.

References QGE_DIRECTION_E, QGE_DIRECTION_N, QGE_DIRECTION_NE, QGE_DIRECTION_NW, QGE_DIRECTION_S, QGE_DIRECTION_SE, QGE_DIRECTION_SW, and QGE_DIRECTION_W.

Referenced by qgar::FreemanChain::push_front(), qgar::FreemanChain::reverse(), and qgar::FreemanCode::toOppositePoint().

template<>
void qgar::qgProject< double > GenPoint< double > &  aPt,
const GenSegment< double > &  aSeg
[inline]
 

template<class T>
void qgar::qgReadObjData std::istream &  anIStream,
T &  anObject
throw (qgar::QgarErrorIO)
 

Read a data member of class T.

Parameters:
anIStream input stream to read from
anObject object to be deserialized
Exceptions:
qgar::QgarErrorIO (error in input stream)

Definition at line 154 of file ISerializable.H.

Referenced by operator>>(), qgar::GenConvexHull< T >::read(), qgar::FreemanCode::read(), qgar::BoundingBox::read(), qgar::GenSegment< T >::read(), qgar::GenQgarSegment< T >::read(), qgar::GenQgarPolyline< T >::read(), qgar::GenQgarPolygon< T >::read(), qgar::GenQgarArc< T >::read(), qgar::GenPolyline< T >::read(), qgar::GenPolygon< T >::read(), and qgar::GenArc< T >::read().

void qgar::qgReadObjName std::istream &  anIStream,
const char *  aClassName
throw (QgarErrorIO)
 

Read the name part of an object.

Parameters:
anIStream input stream to read from
aClassName name of the object class
Exceptions:
qgar::QgarErrorIO (error in input stream)

Definition at line 59 of file ISerializable.C.

Referenced by operator>>(), qgar::GenConvexHull< T >::read(), qgar::FreemanCode::read(), qgar::BoundingBox::read(), qgar::GenSegment< T >::read(), qgar::GenQgarSegment< T >::read(), qgar::GenQgarPolyline< T >::read(), qgar::GenQgarPolygon< T >::read(), qgar::GenQgarArc< T >::read(), qgar::GenPolyline< T >::read(), qgar::GenPolygon< T >::read(), and qgar::GenArc< T >::read().

int qgar::@0::TGIFFILE_arrowHeadHeight int  aThickness = 1  )  [static]
 

Definition at line 83 of file TgifFile.C.

Referenced by qgar::TgifFile::endSavePoly(), and qgar::TgifFile::saveArc().

int qgar::@0::TGIFFILE_arrowHeadWidth int  aThickness = 1  )  [static]
 

Definition at line 73 of file TgifFile.C.

Referenced by qgar::TgifFile::endSavePoly(), and qgar::TgifFile::saveArc().


Variable Documentation

const BinaryImage::value_type qgar::LABEL_MINUS = 0 [static]
 

Definition at line 86 of file TTBinaryImage.C.

Referenced by qgar::TTBinaryImage::TTBinaryImage().

const BinaryImage::value_type qgar::LABEL_PLUS = 2 [static]
 

Definition at line 88 of file TTBinaryImage.C.

Referenced by qgar::TTBinaryImage::TTBinaryImage().

const BinaryImage::value_type qgar::LABEL_ZERO = 1 [static]
 

Definition at line 87 of file TTBinaryImage.C.

Referenced by qgar::TTBinaryImage::TTBinaryImage().

const unsigned char qgar::LINKEDCHAINLIST_MARK = 2
 

Definition at line 68 of file LinkedChainList.C.

Referenced by qgar::LinkedChainList::LinkedChainList(), LINKEDCHAINLIST_connect4M(), LINKEDCHAINLIST_connect8M(), LINKEDCHAINLIST_markNeigh(), LINKEDCHAINLIST_neigh4M(), LINKEDCHAINLIST_neigh8M(), and LINKEDCHAINLIST_neighM().

int qgar::LINKEDCHAINLIST_MINL = 0 [static]
 

Definition at line 71 of file LinkedChainList.C.

Referenced by qgar::LinkedChainList::LinkedChainList(), and LINKEDCHAINLIST_tooSmall().

int qgar::PRUNESMALLCC_BLACK = 1 [static]
 

Definition at line 65 of file PruneSmallCCBinaryImage.C.

Referenced by qgar::PruneSmallCCBinaryImage::isNeighbor(), and qgar::PruneSmallCCBinaryImage::PruneSmallCCBinaryImage().

int qgar::PRUNESMALLCC_NOCOMP = -1 [static]
 

Definition at line 67 of file PruneSmallCCBinaryImage.C.

Referenced by qgar::PruneSmallCCBinaryImage::processPixel(), qgar::PruneSmallCCBinaryImage::PruneSmallCCBinaryImage(), and qgar::PruneSmallCCBinaryImage::unification().

int qgar::PRUNESMALLCC_WHITE = 0 [static]
 

Definition at line 64 of file PruneSmallCCBinaryImage.C.

Referenced by qgar::PruneSmallCCBinaryImage::removeComponent().

const double qgar::RWSEGMENTVECTOR_VERY_LARGE_SIGNIFICANCE = 100000.0
 

Definition at line 65 of file RWSegmentVector.C.

const int qgar::WALLDANIELSSONSEGMENTLIST_MAX_DIR_CHANGE = 1 [static]
 

Definition at line 65 of file WDSegmentList.C.

Referenced by qgar::WDSegmentList::PRIVATEperform().