Artec 3D Scanning SDK  2.0
Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
artec::sdk::base Namespace Reference

Namespaces

 details
 
 errors
 
 io
 

Classes

struct  AlgorithmWorkset
 Workset for algorithm parameters. More...
 
class  GenericMatrix
 Matrix of unspecified size. More...
 
class  IArrayByte
 Interface for array of bytes with smart reference counting. More...
 
class  IArrayFloat
 Interface for array of float data that supports smart reference counting. More...
 
class  IArrayImage
 Interface for array of textures that supports smart reference counting. More...
 
class  IArrayIndexTriplet
 Interface for array of triangles (relationship between vertices). More...
 
class  IArrayInt
 Interface for array of integer data that supports smart reference counting. More...
 
class  IArrayMatrix4x4D
 Interface for array of matrices that is used in IScan and ICompositeContainer. More...
 
class  IArrayPoint3D
 Interface for array of point positions (vertices and normal vectors); D for double type. More...
 
class  IArrayPoint3F
 Interface for array of point positions (vertices and normal vectors); F for float type. More...
 
class  IArrayString
 Interface for array of strings that supports smart reference counting. More...
 
class  IArrayUuid
 Interface for array of UUIDs that is used in IScan and ICompositeContainer. More...
 
class  IArrayUVCoordinates
 Interface for array of texture coordinates that supports smart reference counting. More...
 
class  IBlob
 Interface for Binary Large Object (memory chunk) with smart reference counting. More...
 
class  ICancellationToken
 Callback interface to notify process about cancellation. More...
 
class  ICancellationTokenSource
 ICancellationTokenSource is an interface to handle ICancellationToken. More...
 
class  ICompositeContainer
 Collection of composite meshes with attributes. More...
 
class  ICompositeMesh
 Indexed triangle mesh with optional unwrapped textures. More...
 
class  IFrameMesh
 Indexed triangle mesh with optional texture. More...
 
class  IImage
 Interface for common raster image objects. More...
 
class  IJob
 Interface that represents a basic multithreaded work item; Used by executeJob and launchJob. More...
 
class  IJobObserver
 Callback interface to observe job completion. More...
 
struct  ImageHeader
 Structure describing image (size, pitch, number of channels and pixel format) More...
 
class  IMesh
 Indexed triangle mesh. More...
 
class  IModel
 Container of Scan(s) and a single CompositeContainer. More...
 
class  IModelInfo
 Interface to obtain model's attributes. More...
 
struct  IndexTriplet
 Defines how triangle is formed from points. More...
 
class  IProgress
 Interface for a progress listener. More...
 
class  IProgressInfo
 Interface for a progress notification listener. More...
 
class  IRangeImageCylindric
 Interface for range image settings (for AOP format in cylindrical coordinates) More...
 
class  IRangeImagePlanar
 Interface for range image settings (for planar AOP format) More...
 
class  IRef
 Interface that implements reference counting and life-time management. More...
 
class  IRevision
 Interface to retrieve the object's revision history It can be used to create change history. More...
 
class  IScan
 Collection of reconstructed frame meshes with attributes. More...
 
class  IString
 Interface for string with smart reference counting. More...
 
class  ITexture
 Common texture handling interface. More...
 
class  JobObserverBase
 For inheritance, this class is preferred over IJobObsever. More...
 
class  Matrix4x4
 Transformation matrix. More...
 
class  Point2
 2-dimensional point class. More...
 
class  Point3
 3-dimensional point class. More...
 
class  Point4
 4-dimensional point class. More...
 
class  ProgressBase
 For inheritance, this class is preferred over IProgress. More...
 
class  ProgressInfoBase
 For inheritance, this class is preferred over IProgressInfo. More...
 
struct  Range
 Structure that defines range (e.g., 0..1) More...
 
struct  Rect
 Structure that defines rectangle, i.e. two-dimensional range. More...
 
class  RefBase
 Implementation of IRef interface. To create your own class, inherit it from RefBase. More...
 
struct  SettingsCylindric
 Structure of settings (for AOP format in cylindrical coordinates) More...
 
struct  SettingsPlanar
 Structure of settings (for planar AOP format) More...
 
struct  Size
 Image size defined by width and height. More...
 
class  TArrayRef
 This class is intended for safe manipulation of arrays in terms of their life time. More...
 
struct  TimeStamp
 Time stamp structure. More...
 
class  TRef
 This class is intended for safe manipulation of supported classes in terms of their time frame. More...
 
struct  Triangle
 Triangle defined by the three points More...
 
struct  TriangleUV
 Set of three texture coordinates. More...
 
class  Uuid
 
struct  UVCoordinates
 Texture coordinates. More...
 

Typedefs

typedef IJobObserver IJobObsever
 Backward-compability support for clients designed to work with previous versions of the SDK. More...
 
typedef int(* REPORT_HOOK) (int, const wchar_t *)
 
typedef GenericMatrix< 2, 2, float > Matrix2x2F
 
typedef GenericMatrix< 2, 3, float > Matrix2x3F
 
typedef GenericMatrix< 2, 4, float > Matrix2x4F
 
typedef GenericMatrix< 3, 3, float > Matrix3x3F
 
typedef GenericMatrix< 3, 4, float > Matrix3x4F
 
typedef Matrix4x4< float > Matrix4x4F
 
typedef GenericMatrix< 2, 2, double > Matrix2x2D
 
typedef GenericMatrix< 2, 3, double > Matrix2x3D
 
typedef GenericMatrix< 2, 4, double > Matrix2x4D
 
typedef GenericMatrix< 3, 3, double > Matrix3x3D
 
typedef GenericMatrix< 3, 4, double > Matrix3x4D
 
typedef Matrix4x4< double > Matrix4x4D
 
typedef Point2< int > Point2I
 Commonly used point shortcuts. More...
 
typedef Point2< float > Point2F
 
typedef Point2< double > Point2D
 
typedef Point3< int > Point3I
 
typedef Point3< float > Point3F
 
typedef Point3< double > Point3D
 
typedef Point4< int > Point4I
 
typedef Point4< float > Point4F
 
typedef Point4< double > Point4D
 
typedef Range< int > RangeI
 
typedef Range< float > RangeF
 
typedef Range< double > RangeD
 
typedef Rect< int > RectI
 
typedef Rect< float > RectF
 
typedef Rect< double > RectD
 
typedef TArrayRef< IArrayByteTArrayByte
 
typedef TArrayRef< IArrayIntTArrayInt
 
typedef TArrayRef< IArrayFloatTArrayFloat
 
typedef TArrayRef< IArrayUVCoordinatesTArrayUVCoordinates
 
typedef TArrayRef< IArrayPoint3FTArrayPoint3F
 
typedef TArrayRef< IArrayIndexTripletTArrayIndexTriplet
 
typedef TArrayRef< IArrayStringTArrayString
 
typedef TArrayRef< IArrayImageTArrayImage
 
typedef TArrayRef< const IArrayByteconst_TArrayByte
 
typedef TArrayRef< const IArrayIntconst_TArrayInt
 
typedef TArrayRef< const IArrayFloatconst_TArrayFloat
 
typedef TArrayRef< const IArrayUVCoordinatesconst_TArrayUVCoordinates
 
typedef TArrayRef< const IArrayPoint3Fconst_TArrayPoint3F
 
typedef TArrayRef< const IArrayIndexTripletconst_TArrayIndexTriplet
 
typedef TArrayRef< const IArrayStringconst_TArrayString
 
typedef TArrayRef< const IArrayImageconst_TArrayImage
 

Enumerations

enum  Rotation {
  Rotation_None,
  Rotation_Ccw90,
  Rotation_Cw90,
  Rotation_180,
  Rotation_ForceDword = 0x7fffffff
}
 
enum  PixelFormat {
  PixelFormat_Unknown,
  PixelFormat_Mono,
  PixelFormat_BGR,
  PixelFormat_BGRA,
  PixelFormat_RG,
  PixelFormat_RGB,
  PixelFormat_RGBA,
  PixelFormat_Mono_USHORT,
  PixelFormat_RG_USHORT,
  PixelFormat_RGB_USHORT,
  PixelFormat_RGBA_USHORT,
  PixelFormat_Mono_SINT,
  PixelFormat_RG_SINT,
  PixelFormat_RGB_SINT,
  PixelFormat_RGBA_SINT,
  PixelFormat_Mono_FLOAT,
  PixelFormat_RG_FLOAT,
  PixelFormat_RGB_FLOAT,
  PixelFormat_RGBA_FLOAT,
  PixelFormat_YUY,
  PixelFormat_RawRGGB,
  PixelFormat_RawGRBG,
  PixelFormat_RawGBRG,
  PixelFormat_RawBGGR,
  PixelFormat_ForceDword = 0x7fffffff
}
 Types of an image pixel formats. More...
 
enum  Mirror {
  Mirror_X,
  Mirror_Y,
  Mirror_ForceDword = 0x7fffffff
}
 
enum  DetailsInfo {
  DetailsInfo_NoStep,
  DetailsInfo_Step1_From1,
  DetailsInfo_Step1_From2,
  DetailsInfo_Step2_From2,
  DetailsInfo_Step1_From3,
  DetailsInfo_Step2_From3,
  DetailsInfo_Step3_From3,
  DetailsInfo_Step1_From4,
  DetailsInfo_Step2_From4,
  DetailsInfo_Step3_From4,
  DetailsInfo_Step4_From4,
  DetailsInfo_Step1_From5,
  DetailsInfo_Step2_From5,
  DetailsInfo_Step3_From5,
  DetailsInfo_Step4_From5,
  DetailsInfo_Step5_From5,
  DetailsInfo_Step1_From6,
  DetailsInfo_Step2_From6,
  DetailsInfo_Step3_From6,
  DetailsInfo_Step4_From6,
  DetailsInfo_Step5_From6,
  DetailsInfo_Step6_From6,
  DetailsInfo_Step1_From7,
  DetailsInfo_Step2_From7,
  DetailsInfo_Step3_From7,
  DetailsInfo_Step4_From7,
  DetailsInfo_Step5_From7,
  DetailsInfo_Step6_From7,
  DetailsInfo_Step7_From7,
  DetailsInfo_Step1_From8,
  DetailsInfo_Step2_From8,
  DetailsInfo_Step3_From8,
  DetailsInfo_Step4_From8,
  DetailsInfo_Step5_From8,
  DetailsInfo_Step6_From8,
  DetailsInfo_Step7_From8,
  DetailsInfo_Step8_From8,
  DetailsInfo_Geometry,
  DetailsInfo_Textures,
  DetailsInfo_ForceDword = 0x7fffffff
}
 
enum  VerboseLevel {
  VerboseLevel_Disable = -1,
  VerboseLevel_Error,
  VerboseLevel_Warning,
  VerboseLevel_Info,
  VerboseLevel_Trace,
  VerboseLevel_Number
}
 The level of detail of verbose output. More...
 
enum  CalculateMode {
  CM_None = 0,
  CM_ClearEverything = 0xffffffff,
  CM_Surface = 1 << 0,
  CM_PointsNormals_Default = 1 << 8,
  CM_PolyNormals = 1 << 9,
  CM_PolyAreas = 1 << 10,
  CM_Normals = CM_PointsNormals_Default | CM_PolyNormals | CM_PolyAreas,
  CM_Centers = 1 << 11,
  CM_Angles = 1 << 12,
  CM_EdgeLengths = 1 << 13,
  CM_Texture = 1 << 17
}
 Flags to indicate current state of the mesh structure. More...
 
enum  ScannerType {
  ScannerType_Unknown = 0,
  ScannerType_Small,
  ScannerType_WallyL,
  ScannerType_WallyP,
  ScannerType_Eva,
  ScannerType_LargeP,
  ScannerType_LargeL,
  ScannerType_Spider,
  ScannerType_LargeG,
  ScannerType_ForceDword = 0x7fffffff
}
 

Functions

ErrorCode ABASESDK_LINK_SPEC rotateImage (IImage **dst, const IImage *src, Rotation direction)
 Rotate image. More...
 
ErrorCode ABASESDK_LINK_SPEC mirrorImage (IImage **dst, const IImage *src, Mirror direction)
 Mirror image. More...
 
ErrorCode ABASESDK_LINK_SPEC toGrayscale (IImage **dst, const IImage *src)
 Convert given image to grayscale (1 channel) format. More...
 
ErrorCode ABASESDK_LINK_SPEC toBGR (IImage **dst, const IImage *src)
 Change R and B channels in given 3-channeled image. More...
 
ErrorCode ABASESDK_LINK_SPEC toRGB (IImage **dst, const IImage *src)
 Change R and B channels in the given 3-channeled image. More...
 
ErrorCode ABASESDK_LINK_SPEC bgr2grey (IImage **dst, const IImage *src)
 Convert given image to grayscale (1 channel) format. More...
 
template<typename Type , typename Type2 >
Point3< Type2 > operator* (const GenericMatrix< 3, 3, Type > &matrix, const Point3< Type2 > &point)
 
template<typename Type , int size>
bool invert (const GenericMatrix< size, size, Type > &matrix, GenericMatrix< size, size, Type > &result)
 Inversion It returns "false", if the matrix is singular and can't be inverted, otherwise the value is "true". More...
 
template<int size, typename Type >
GenericMatrix< size, size, Type > invert (const GenericMatrix< size, size, Type > &matrix)
 Inversion (another form). More...
 
template<int rows, int cols, typename MatType , typename Type >
GenericMatrix< rows, cols, MatType > vectorToMatrix (const std::vector< Type > &vec)
 
template<int rows, int cols, typename Type >
GenericMatrix< rows, cols, Type > vectorToMatrix (const std::vector< Type > &vec)
 
ErrorCode ABASESDK_LINK_SPEC createArrayByte (IArrayByte **pArray, int elementsCount, bool zeroFill=false)
 
ErrorCode ABASESDK_LINK_SPEC createArrayInt (IArrayInt **pArray, int elementsCount, bool zeroFill=false)
 
ErrorCode ABASESDK_LINK_SPEC createArrayFloat (IArrayFloat **pArray, int elementsCount, bool zeroFill=false)
 
ErrorCode ABASESDK_LINK_SPEC createArrayUVCoordinates (IArrayUVCoordinates **pArray, int elementsCount, bool zeroFill=false)
 
ErrorCode ABASESDK_LINK_SPEC createArrayPoint3F (IArrayPoint3F **pArray, int elementsCount, bool zeroFill=false)
 
ErrorCode ABASESDK_LINK_SPEC createArrayPoint3D (IArrayPoint3D **pArray, int elementsCount, bool zeroFill=false)
 
ErrorCode ABASESDK_LINK_SPEC createArrayIndexTriplet (IArrayIndexTriplet **pArray, int elementsCount, bool zeroFill=false)
 
ErrorCode ABASESDK_LINK_SPEC createArrayImage (IArrayImage **pArray, int elementsCount)
 
ErrorCode ABASESDK_LINK_SPEC createArrayMatrix4x4D (IArrayMatrix4x4D **pArray, int elementsCount)
 
ErrorCode ABASESDK_LINK_SPEC createArrayUuid (IArrayUuid **pArray, int elementsCount)
 
ErrorCode ABASESDK_LINK_SPEC createBlob (IBlob **blob, int size)
 
ErrorCode ABASESDK_LINK_SPEC createCancellationTokenSource (ICancellationTokenSource **pCancellationTokenSource)
 
ErrorCode ABASESDK_LINK_SPEC createCompositeContainer (ICompositeContainer **pContainer)
 Create new CompositeContainer. More...
 
ErrorCode ABASESDK_LINK_SPEC cloneCompositeContainer (ICompositeContainer *out, const ICompositeContainer *in)
 Clone all CompositeContainer content. More...
 
ErrorCode ABASESDK_LINK_SPEC createCompositeMesh (ICompositeMesh **mesh, int vertexCount=0, int triangleCount=0, const wchar_t *name=NULL)
 Create composite mesh with given name and new uuid. More...
 
ErrorCode ABASESDK_LINK_SPEC createFrameMesh (IFrameMesh **mesh, int vertexCount=0, int triangleCount=0)
 Create frame mesh. More...
 
ErrorCode ABASESDK_LINK_SPEC createImage (IImage **image, int width, int height, PixelFormat pixelFormat, int align=1, IBlob *initialData=0)
 Create image. More...
 
ErrorCode ABASESDK_LINK_SPEC createImageByHeader (IImage **image, const ImageHeader &header, IBlob *initialData=0)
 Create image. More...
 
ErrorCode ABASESDK_LINK_SPEC executeJob (IJob *job, const AlgorithmWorkset *workset)
 Synchronously execute a job in several threads. More...
 
ErrorCode ABASESDK_LINK_SPEC launchJob (IJob *job, const AlgorithmWorkset *workset, IJobObserver *jobObserver)
 Asynchronously launch a job in several threads. More...
 
ErrorCode ABASESDK_LINK_SPEC createModel (IModel **pContainer)
 Create new Model. More...
 
ErrorCode ABASESDK_LINK_SPEC cloneModel (IModel *out, const IModel *in)
 Create new Scans and CompositeContainer, but clone all content. More...
 
bool ABASESDK_LINK_SPEC allScansInModelEmpty (const IModel *in)
 Check for empty scan collection. More...
 
bool ABASESDK_LINK_SPEC isCompositeContainerInModelEmpty (const IModel *in)
 Check for empty CompositeContainer. More...
 
ErrorCode ABASESDK_LINK_SPEC createModelInfo (IModelInfo **modelInfo)
 
ErrorCode ABASESDK_LINK_SPEC createRangeImageCylindric (IRangeImageCylindric **image, const SettingsCylindric &settings, const IMesh *mesh)
 
ErrorCode ABASESDK_LINK_SPEC createRangeImagePlanar (IRangeImagePlanar **image, const SettingsPlanar &settings, const IMesh *mesh)
 
ErrorCode ABASESDK_LINK_SPEC createScan (IScan **pContainer, ScannerType scannerType=ScannerType_Unknown, const Matrix3x4D *textureMappingMatrix=NULL, const wchar_t *name=NULL)
 Create new Scan with given name and new uuid. More...
 
ErrorCode ABASESDK_LINK_SPEC mergeToFrameMesh (IFrameMesh *mesh, const IScan *scanContainer, bool skipTextureData=true)
 Accumulates all meshes from the given IScan to the given IFrameMesh. More...
 
ErrorCode ABASESDK_LINK_SPEC cloneScan (IScan *out, const IScan *in)
 Clone all Scan content, except name and uuid. More...
 
ErrorCode ABASESDK_LINK_SPEC createSimilarScan (IScan **out, const IScan *attributesPattern)
 Create Scan with identical attributes, new scan has empty name and new uuid. More...
 
ErrorCode ABASESDK_LINK_SPEC createString (IString **pString, const wchar_t *sourceString)
 
ErrorCode ABASESDK_LINK_SPEC createArrayString (IArrayString **pArray, int elementsCount)
 
ErrorCode ABASESDK_LINK_SPEC createTexture (ITexture **texture, IImage *image=NULL, int trianglesIndexCount=0, int UVIndexCount=0, int UVCoordinatesCount=0)
 
void ABASESDK_LINK_SPEC setOutputLevel (int mode)
 
int ABASESDK_LINK_SPEC getOutputLevel ()
 
bool ABASESDK_LINK_SPEC setReportHook (int mode, REPORT_HOOK newHook)
 
void ABASESDK_LINK_SPEC report (int verboseLevel, const wchar_t *module, const wchar_t *format,...)
 
void ABASESDK_LINK_SPEC vReport (int verboseLevel, const wchar_t *module, const wchar_t *format, va_list args)
 
template<int rows, typename Type >
GenericMatrix< rows, 4, Type > operator* (const GenericMatrix< rows, 4, Type > &m1, const Matrix4x4< Type > &m2)
 
template<typename Type >
bool invert (const Matrix4x4< Type > &matrix, Matrix4x4< Type > &result)
 Returns false if the matrix is singular and can't be inverted, otherwise returns true. More...
 
template<typename Type >
Matrix4x4< Type > invert (const Matrix4x4< Type > &matrix)
 Inversion (another one form). More...
 
template<typename Type >
Point2< Type > project (const Point3< Type > &point, const GenericMatrix< 3, 4, Type > &m)
 
template<typename Type >
Point3< Type > project (const Point3< Type > &point, const Matrix4x4< Type > &m)
 
template<typename Tf >
bool isZero (const Tf &some)
 Equality expression for the types which are not exact. More...
 
template<typename T >
distanceSquare (const Point2< T > &p1, const Point2< T > &p2)
 Distance measure (squared) More...
 
template<typename T >
dotProduct (const Point2< T > &p1, const Point2< T > &p2)
 Cross product of two points. More...
 
template<typename T , typename T2 >
Point2< T > operator+ (const T2 &val, const Point2< T > &p)
 Arithmetical operators of the form: operator(scalar, TPoint2) More...
 
template<typename T , typename T2 >
Point2< T > operator- (const T2 &val, const Point2< T > &p)
 
template<typename T , typename T2 >
Point2< T > operator* (const T2 &val, const Point2< T > &p)
 
template<typename T >
distanceSquare (const Point3< T > &p1, const Point3< T > &p2)
 Distance measure (squared) More...
 
template<typename T >
dotProduct (const Point3< T > &p1, const Point3< T > &p2)
 Cross product of two points. More...
 
template<typename T >
Point3< T > crossProduct (const Point3< T > &p1, const Point3< T > &p2)
 Cross product of two points. More...
 
template<typename T >
distanceSquare (const Point4< T > &p1, const Point4< T > &p2)
 Distance measure (squared) More...
 
template<typename T >
dotProduct (const Point4< T > &p1, const Point4< T > &p2)
 Cross product of two points. More...
 
const wchar_t * getScannerTypeName (artec::sdk::base::ScannerType st)
 
template<class T >
ErrorCode createArray (TArrayRef< T > &src, int elementsCount, bool zeroFill=false)
 Assign new array to TArrayRef. More...
 
template<>
ErrorCode createArray< IArrayByte > (TArrayRef< IArrayByte > &src, int elementsCount, bool zeroFill)
 
template<>
ErrorCode createArray< IArrayInt > (TArrayRef< IArrayInt > &src, int elementsCount, bool zeroFill)
 
template<>
ErrorCode createArray< IArrayFloat > (TArrayRef< IArrayFloat > &src, int elementsCount, bool zeroFill)
 
template<>
ErrorCode createArray< IArrayUVCoordinates > (TArrayRef< IArrayUVCoordinates > &src, int elementsCount, bool zeroFill)
 
template<>
ErrorCode createArray< IArrayPoint3F > (TArrayRef< IArrayPoint3F > &src, int elementsCount, bool zeroFill)
 
template<>
ErrorCode createArray< IArrayIndexTriplet > (TArrayRef< IArrayIndexTriplet > &src, int elementsCount, bool zeroFill)
 
template<class T >
ErrorCode resizeArray (TArrayRef< T > &src, int elementsCount)
 Release the array assigned to TArrayRef and create a new one. More...
 
template<class T >
ErrorCode resizeArray (TArrayRef< T > &src, int elementsCount, bool zeroFill)
 Release the array assigned to TArrayRef and create a new one. More...
 
ErrorCode ABASESDK_LINK_SPEC generateUuid (Uuid *uuid)
 Generate new UUID. More...
 
ErrorCode ABASESDK_LINK_SPEC convertUuidtoString (IString **string, const Uuid *uuid)
 Convert Uuid to string. More...
 
ErrorCode ABASESDK_LINK_SPEC converStringtoUuid (Uuid *uuid, IString *string)
 Convert string to Uuid. More...
 

Variables

const int RPTHOOK_INSTALL = 0
 
const int RPTHOOK_REMOVE = 1
 

Typedef Documentation

Definition at line 147 of file TArrayRef.h.

Definition at line 149 of file TArrayRef.h.

Definition at line 154 of file TArrayRef.h.

Definition at line 152 of file TArrayRef.h.

Definition at line 148 of file TArrayRef.h.

Definition at line 151 of file TArrayRef.h.

Definition at line 153 of file TArrayRef.h.

Definition at line 150 of file TArrayRef.h.

Backward-compability support for clients designed to work with previous versions of the SDK.

Definition at line 51 of file IJobObserver.h.

Definition at line 779 of file Matrix.h.

Definition at line 772 of file Matrix.h.

Definition at line 780 of file Matrix.h.

Definition at line 773 of file Matrix.h.

Definition at line 781 of file Matrix.h.

Definition at line 774 of file Matrix.h.

Definition at line 782 of file Matrix.h.

Definition at line 775 of file Matrix.h.

Definition at line 783 of file Matrix.h.

Definition at line 776 of file Matrix.h.

Definition at line 784 of file Matrix.h.

Definition at line 777 of file Matrix.h.

Definition at line 508 of file Point.h.

Definition at line 507 of file Point.h.

Commonly used point shortcuts.

Definition at line 506 of file Point.h.

Definition at line 512 of file Point.h.

Examples:
simple-capture-sample.cpp.

Definition at line 511 of file Point.h.

Definition at line 510 of file Point.h.

Definition at line 516 of file Point.h.

Definition at line 515 of file Point.h.

Definition at line 514 of file Point.h.

typedef Range< double > artec::sdk::base::RangeD

Definition at line 43 of file Range.h.

typedef Range< float > artec::sdk::base::RangeF

Definition at line 42 of file Range.h.

Definition at line 41 of file Range.h.

typedef Rect< double > artec::sdk::base::RectD

Definition at line 99 of file Rect.h.

typedef Rect< float > artec::sdk::base::RectF

Definition at line 98 of file Rect.h.

typedef Rect< int > artec::sdk::base::RectI

Definition at line 97 of file Rect.h.

typedef int(* artec::sdk::base::REPORT_HOOK) (int, const wchar_t *)

Definition at line 22 of file Log.h.

Definition at line 138 of file TArrayRef.h.

Definition at line 140 of file TArrayRef.h.

Definition at line 145 of file TArrayRef.h.

Definition at line 143 of file TArrayRef.h.

Definition at line 139 of file TArrayRef.h.

Examples:
simple-capture-sample.cpp.

Definition at line 142 of file TArrayRef.h.

Definition at line 144 of file TArrayRef.h.

Definition at line 141 of file TArrayRef.h.

Enumeration Type Documentation

Flags to indicate current state of the mesh structure.

Enumerator
CM_None 
CM_ClearEverything 

Empty mesh

CM_Surface 

Use it to clear data

CM_PointsNormals_Default 

For points and triangles

CM_PolyNormals 

For normals to points

Calculate normals for points using the default weighting scheme. This flag doesn't tell you how normals were calculated, but it will use some default calculation routine if normals are not yet calculated. Please use it if you don't care how normals are calculated, it may be changed in the future.

CM_PolyAreas 

For normals to polygons

CM_Normals 

For area of polygons

CM_Centers 

Use this flag combination to clear data

CM_Angles 

For centers of triangles

CM_EdgeLengths 

For angles

CM_Texture 

For lengths of triangle edges

Definition at line 18 of file MeshFlags.h.

Enumerator
DetailsInfo_NoStep 
DetailsInfo_Step1_From1 
DetailsInfo_Step1_From2 
DetailsInfo_Step2_From2 
DetailsInfo_Step1_From3 
DetailsInfo_Step2_From3 
DetailsInfo_Step3_From3 
DetailsInfo_Step1_From4 
DetailsInfo_Step2_From4 
DetailsInfo_Step3_From4 
DetailsInfo_Step4_From4 
DetailsInfo_Step1_From5 
DetailsInfo_Step2_From5 
DetailsInfo_Step3_From5 
DetailsInfo_Step4_From5 
DetailsInfo_Step5_From5 
DetailsInfo_Step1_From6 
DetailsInfo_Step2_From6 
DetailsInfo_Step3_From6 
DetailsInfo_Step4_From6 
DetailsInfo_Step5_From6 
DetailsInfo_Step6_From6 
DetailsInfo_Step1_From7 
DetailsInfo_Step2_From7 
DetailsInfo_Step3_From7 
DetailsInfo_Step4_From7 
DetailsInfo_Step5_From7 
DetailsInfo_Step6_From7 
DetailsInfo_Step7_From7 
DetailsInfo_Step1_From8 
DetailsInfo_Step2_From8 
DetailsInfo_Step3_From8 
DetailsInfo_Step4_From8 
DetailsInfo_Step5_From8 
DetailsInfo_Step6_From8 
DetailsInfo_Step7_From8 
DetailsInfo_Step8_From8 
DetailsInfo_Geometry 
DetailsInfo_Textures 
DetailsInfo_ForceDword 

Definition at line 19 of file IProgressInfo.h.

Enumerator
Mirror_X 
Mirror_Y 
Mirror_ForceDword 

Definition at line 116 of file IImage.h.

Types of an image pixel formats.

Enumerator
PixelFormat_Unknown 
PixelFormat_Mono 

Unknown pixel format.

PixelFormat_BGR 

8-bit mono (grayscale) pixel format

PixelFormat_BGRA 

unsigned 24-bit pixel format in 0xRRGGBB order

PixelFormat_RG 

unsigned 32-bit pixel format with alpha in 0xAARRGGBB order

PixelFormat_RGB 

unsigned 16-bit pixel format in 0xGGRR order

PixelFormat_RGBA 

unsigned 24-bit pixel format in 0xBBGGRR order

PixelFormat_Mono_USHORT 

unsigned 32-bit pixel format in 0xAABBGGRR order

PixelFormat_RG_USHORT 

unsigned 16-bit mono pixel format

PixelFormat_RGB_USHORT 

unsigned 16-bit RG pixel format

PixelFormat_RGBA_USHORT 

unsigned 16-bit RGB pixel format

PixelFormat_Mono_SINT 

unsigned 16-bit RGBA pixel format

PixelFormat_RG_SINT 

signed int 32-bit mono pixel format

PixelFormat_RGB_SINT 

signed int 32-bit RG pixel format

PixelFormat_RGBA_SINT 

signed int 32-bit RGB pixel format

PixelFormat_Mono_FLOAT 

signed int 32-bit RGBA pixel format

PixelFormat_RG_FLOAT 

float mono pixel format

PixelFormat_RGB_FLOAT 

float RG pixel format

PixelFormat_RGBA_FLOAT 

float RGB pixel format

PixelFormat_YUY 

float RGBA pixel format

PixelFormat_RawRGGB 

YUV pixel format.

PixelFormat_RawGRBG 

Bayer mask RGGB pixel format.

PixelFormat_RawGBRG 

Bayer mask GRBG pixel format.

PixelFormat_RawBGGR 

Bayer mask GBRG pixel format.

PixelFormat_ForceDword 

Bayer mask BGGR pixel format.

Definition at line 29 of file IImage.h.

Enumerator
Rotation_None 
Rotation_Ccw90 
Rotation_Cw90 
Rotation_180 
Rotation_ForceDword 

Definition at line 20 of file Conversions.h.

Enumerator
ScannerType_Unknown 

Unknown scanner type.

ScannerType_Small 

Artec S scanner.

ScannerType_WallyL 

Artec M, MH and MHT scanners.

ScannerType_WallyP 

Artec M, MH and MHT scanners.

ScannerType_Eva 

Artec Eva scanner.

ScannerType_LargeP 

Artec L scanner.

ScannerType_LargeL 

Artec L scanner.

ScannerType_Spider 

Artec Spider scanner.

ScannerType_LargeG 

Artec L2 scanner.

ScannerType_ForceDword 
Examples:
scanning-and-process-sample.cpp.

Definition at line 17 of file ScannerType.h.

The level of detail of verbose output.

Enumerator
VerboseLevel_Disable 

Noting to output.

VerboseLevel_Error 

Output errors.

VerboseLevel_Warning 

Output errors and warnings.

VerboseLevel_Info 

Output errors, warnings and information.

VerboseLevel_Trace 

Comprehensive output.

VerboseLevel_Number 

Definition at line 28 of file Log.h.

Function Documentation

bool ABASESDK_LINK_SPEC artec::sdk::base::allScansInModelEmpty ( const IModel in)

Check for empty scan collection.

Parameters
inModel to check
Returns
True If all IScan-s in the IModel are empty.
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::bgr2grey ( IImage **  dst,
const IImage src 
)

Convert given image to grayscale (1 channel) format.

Accurate algorithm. Convert only PixelFormat_BGR image to grayscale PixelFormat_Mono image.

ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::cloneCompositeContainer ( ICompositeContainer out,
const ICompositeContainer in 
)

Clone all CompositeContainer content.

Parameters
out- destination CompositeContainer
in- CompositeContainer to take elements from
Returns
error code
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::cloneModel ( IModel out,
const IModel in 
)

Create new Scans and CompositeContainer, but clone all content.

Parameters
outDestination Model
inModel to take elements from
Returns
Error code
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::cloneScan ( IScan out,
const IScan in 
)

Clone all Scan content, except name and uuid.

Parameters
out- Destination Scan
in- Scan to take elements from
Returns
error code
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::converStringtoUuid ( Uuid uuid,
IString string 
)

Convert string to Uuid.

ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::convertUuidtoString ( IString **  string,
const Uuid uuid 
)

Convert Uuid to string.

template<class T >
ErrorCode artec::sdk::base::createArray ( TArrayRef< T > &  src,
int  elementsCount,
bool  zeroFill = false 
)
inline

Assign new array to TArrayRef.

template<>
ErrorCode artec::sdk::base::createArray< IArrayByte > ( TArrayRef< IArrayByte > &  src,
int  elementsCount,
bool  zeroFill 
)
inline

Definition at line 161 of file TArrayRef.h.

template<>
ErrorCode artec::sdk::base::createArray< IArrayFloat > ( TArrayRef< IArrayFloat > &  src,
int  elementsCount,
bool  zeroFill 
)
inline

Definition at line 185 of file TArrayRef.h.

template<>
ErrorCode artec::sdk::base::createArray< IArrayIndexTriplet > ( TArrayRef< IArrayIndexTriplet > &  src,
int  elementsCount,
bool  zeroFill 
)
inline

Definition at line 221 of file TArrayRef.h.

template<>
ErrorCode artec::sdk::base::createArray< IArrayInt > ( TArrayRef< IArrayInt > &  src,
int  elementsCount,
bool  zeroFill 
)
inline

Definition at line 173 of file TArrayRef.h.

template<>
ErrorCode artec::sdk::base::createArray< IArrayPoint3F > ( TArrayRef< IArrayPoint3F > &  src,
int  elementsCount,
bool  zeroFill 
)
inline

Definition at line 209 of file TArrayRef.h.

template<>
ErrorCode artec::sdk::base::createArray< IArrayUVCoordinates > ( TArrayRef< IArrayUVCoordinates > &  src,
int  elementsCount,
bool  zeroFill 
)
inline

Definition at line 197 of file TArrayRef.h.

ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::createArrayByte ( IArrayByte **  pArray,
int  elementsCount,
bool  zeroFill = false 
)
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::createArrayFloat ( IArrayFloat **  pArray,
int  elementsCount,
bool  zeroFill = false 
)
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::createArrayImage ( IArrayImage **  pArray,
int  elementsCount 
)
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::createArrayIndexTriplet ( IArrayIndexTriplet **  pArray,
int  elementsCount,
bool  zeroFill = false 
)
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::createArrayInt ( IArrayInt **  pArray,
int  elementsCount,
bool  zeroFill = false 
)
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::createArrayMatrix4x4D ( IArrayMatrix4x4D **  pArray,
int  elementsCount 
)
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::createArrayPoint3D ( IArrayPoint3D **  pArray,
int  elementsCount,
bool  zeroFill = false 
)
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::createArrayPoint3F ( IArrayPoint3F **  pArray,
int  elementsCount,
bool  zeroFill = false 
)
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::createArrayString ( IArrayString **  pArray,
int  elementsCount 
)
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::createArrayUuid ( IArrayUuid **  pArray,
int  elementsCount 
)
Examples:
project-sample.cpp.
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::createArrayUVCoordinates ( IArrayUVCoordinates **  pArray,
int  elementsCount,
bool  zeroFill = false 
)
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::createBlob ( IBlob **  blob,
int  size 
)
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::createCancellationTokenSource ( ICancellationTokenSource **  pCancellationTokenSource)
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::createCompositeContainer ( ICompositeContainer **  pContainer)

Create new CompositeContainer.

Parameters
pContainer- destination CompositeContainer
Returns
error code
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::createCompositeMesh ( ICompositeMesh **  mesh,
int  vertexCount = 0,
int  triangleCount = 0,
const wchar_t *  name = NULL 
)

Create composite mesh with given name and new uuid.

Parameters
meshComposite mesh to return.
vertexCountNumber of points (vertices) to pre-allocate.
triangleCountNumber of triangles (index triplets) to pre-allocate.
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::createFrameMesh ( IFrameMesh **  mesh,
int  vertexCount = 0,
int  triangleCount = 0 
)

Create frame mesh.

Parameters
meshFrame mesh to return.
vertexCountNumber of points (vertices) to pre-allocate.
triangleCountNumber of triangles (index triplets) to pre-allocate.
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::createImage ( IImage **  image,
int  width,
int  height,
PixelFormat  pixelFormat,
int  align = 1,
IBlob initialData = 0 
)

Create image.

Parameters
width,heightImage width (x) and height (y)
pixelFormatImage format. Value from PixelFormat enum.
alignMultiplicity factor for image pitch
initialDataIf it is present, then no new data is created and image will store the reference to initialData
Returns
Error code. ErrorCode_OK means that the creation is successful, any other error code indicates creation failure.
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::createImageByHeader ( IImage **  image,
const ImageHeader header,
IBlob initialData = 0 
)

Create image.

Parameters
imagecreated image
headersize, pitch and pixelFormat of the new image
initialDataIf it is present, then no new data is created and the image will store the reference to initialData
Returns
Error code. ErrorCode_OK means that the creation is successful, any other error code indicates creation failure.
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::createModel ( IModel **  pContainer)

Create new Model.

Parameters
pContainerdestination Model
Returns
error code
Examples:
project-sample.cpp, and scanning-and-process-sample.cpp.
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::createModelInfo ( IModelInfo **  modelInfo)
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::createRangeImageCylindric ( IRangeImageCylindric **  image,
const SettingsCylindric settings,
const IMesh mesh 
)
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::createRangeImagePlanar ( IRangeImagePlanar **  image,
const SettingsPlanar settings,
const IMesh mesh 
)
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::createScan ( IScan **  pContainer,
ScannerType  scannerType = ScannerType_Unknown,
const Matrix3x4D textureMappingMatrix = NULL,
const wchar_t *  name = NULL 
)

Create new Scan with given name and new uuid.

Parameters
pContainer- destination Scan
scannerType- use ScannerType_Unknown as unknown scanner type
textureMappingMatrix- matrix for texture coordinate calculation
name- new scan name
Returns
error code
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::createSimilarScan ( IScan **  out,
const IScan attributesPattern 
)

Create Scan with identical attributes, new scan has empty name and new uuid.

Parameters
outNew Scan
inScan to copy attributes from
Note
It copies only attributes, not the data.
Returns
error code
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::createString ( IString **  pString,
const wchar_t *  sourceString 
)
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::createTexture ( ITexture **  texture,
IImage image = NULL,
int  trianglesIndexCount = 0,
int  UVIndexCount = 0,
int  UVCoordinatesCount = 0 
)
template<typename T >
Point3<T> artec::sdk::base::crossProduct ( const Point3< T > &  p1,
const Point3< T > &  p2 
)
inline

Cross product of two points.

Definition at line 352 of file Point.h.

template<typename T >
T artec::sdk::base::distanceSquare ( const Point2< T > &  p1,
const Point2< T > &  p2 
)
inline

Distance measure (squared)

Definition at line 169 of file Point.h.

template<typename T >
T artec::sdk::base::distanceSquare ( const Point3< T > &  p1,
const Point3< T > &  p2 
)
inline

Distance measure (squared)

Definition at line 340 of file Point.h.

template<typename T >
T artec::sdk::base::distanceSquare ( const Point4< T > &  p1,
const Point4< T > &  p2 
)
inline

Distance measure (squared)

Definition at line 492 of file Point.h.

template<typename T >
T artec::sdk::base::dotProduct ( const Point2< T > &  p1,
const Point2< T > &  p2 
)
inline

Cross product of two points.

Definition at line 175 of file Point.h.

template<typename T >
T artec::sdk::base::dotProduct ( const Point3< T > &  p1,
const Point3< T > &  p2 
)
inline

Cross product of two points.

Definition at line 346 of file Point.h.

template<typename T >
T artec::sdk::base::dotProduct ( const Point4< T > &  p1,
const Point4< T > &  p2 
)
inline

Cross product of two points.

Definition at line 498 of file Point.h.

ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::executeJob ( IJob job,
const AlgorithmWorkset workset 
)

Synchronously execute a job in several threads.

Parameters
jobis an algorithm or a procedure, and it should be created with appropriate function like createXXXAlgorithm() or createXXXProcedure(). Use TRef to hold this pointer and take care of the object's lifetime.
worksetis a simple structure which can be created on stack or in a dynamic memory. All its interface members, such as in, out, progress (if any) or cancellation (if any), should live till the end of the job processing. Please take care of that.
Examples:
scanning-and-process-sample.cpp.
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::generateUuid ( Uuid uuid)

Generate new UUID.

Parameters
uuidpointer to UUID to be created.
Returns
Error code.
Examples:
project-sample.cpp.
int ABASESDK_LINK_SPEC artec::sdk::base::getOutputLevel ( )
const wchar_t* artec::sdk::base::getScannerTypeName ( artec::sdk::base::ScannerType  st)
inline
Examples:
simple-capture-sample.cpp.

Definition at line 33 of file ScannerType.h.

template<typename Type , int size>
bool artec::sdk::base::invert ( const GenericMatrix< size, size, Type > &  matrix,
GenericMatrix< size, size, Type > &  result 
)
inline

Inversion It returns "false", if the matrix is singular and can't be inverted, otherwise the value is "true".

Definition at line 306 of file GenericMatrix.h.

template<int size, typename Type >
GenericMatrix< size, size, Type > artec::sdk::base::invert ( const GenericMatrix< size, size, Type > &  matrix)
inline

Inversion (another form).

The given matrix shouldn't be singular. It throws std::runtime_error() if matrix is singular, otherwise returns an inversed matrix.

Definition at line 366 of file GenericMatrix.h.

template<typename Type >
bool artec::sdk::base::invert ( const Matrix4x4< Type > &  matrix,
Matrix4x4< Type > &  result 
)
inline

Returns false if the matrix is singular and can't be inverted, otherwise returns true.

Definition at line 739 of file Matrix.h.

template<typename Type >
Matrix4x4< Type > artec::sdk::base::invert ( const Matrix4x4< Type > &  matrix)
inline

Inversion (another one form).

The given matrix shouldn't be singular. Throws std::runtime_error() if the matrix is singular, otherwise returns inverse matrix.

Definition at line 749 of file Matrix.h.

bool ABASESDK_LINK_SPEC artec::sdk::base::isCompositeContainerInModelEmpty ( const IModel in)

Check for empty CompositeContainer.

Parameters
inModel to check
Returns
True If CompositeContainer in the IModel is empty.
template<typename Tf >
bool artec::sdk::base::isZero ( const Tf &  some)

Equality expression for the types which are not exact.

Definition at line 29 of file Point.h.

ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::launchJob ( IJob job,
const AlgorithmWorkset workset,
IJobObserver jobObserver 
)

Asynchronously launch a job in several threads.

Parameters
job- is an algorithm or a procedure, and it should be created with appropriate function like createXXXAlgorithm() The lifetime of this object will be cared of as well.
Examples:
project-sample.cpp.
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::mergeToFrameMesh ( IFrameMesh mesh,
const IScan scanContainer,
bool  skipTextureData = true 
)

Accumulates all meshes from the given IScan to the given IFrameMesh.

Coordinates are transformed according to the current scan and frame transformation matrices

ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::mirrorImage ( IImage **  dst,
const IImage src,
Mirror  direction 
)

Mirror image.

template<typename T , typename T2 >
Point2<T> artec::sdk::base::operator* ( const T2 &  val,
const Point2< T > &  p 
)
inline

Definition at line 186 of file Point.h.

template<typename Type , typename Type2 >
Point3< Type2 > artec::sdk::base::operator* ( const GenericMatrix< 3, 3, Type > &  matrix,
const Point3< Type2 > &  point 
)
inline

Definition at line 279 of file GenericMatrix.h.

template<int rows, typename Type >
GenericMatrix< rows, 4, Type > artec::sdk::base::operator* ( const GenericMatrix< rows, 4, Type > &  m1,
const Matrix4x4< Type > &  m2 
)

Definition at line 655 of file Matrix.h.

template<typename T , typename T2 >
Point2<T> artec::sdk::base::operator+ ( const T2 &  val,
const Point2< T > &  p 
)
inline

Arithmetical operators of the form: operator(scalar, TPoint2)

Definition at line 182 of file Point.h.

template<typename T , typename T2 >
Point2<T> artec::sdk::base::operator- ( const T2 &  val,
const Point2< T > &  p 
)
inline

Definition at line 184 of file Point.h.

template<typename Type >
Point2< Type > artec::sdk::base::project ( const Point3< Type > &  point,
const GenericMatrix< 3, 4, Type > &  m 
)
inline
Examples:
project-sample.cpp.

Definition at line 759 of file Matrix.h.

template<typename Type >
Point3< Type > artec::sdk::base::project ( const Point3< Type > &  point,
const Matrix4x4< Type > &  m 
)
inline

Definition at line 766 of file Matrix.h.

void ABASESDK_LINK_SPEC artec::sdk::base::report ( int  verboseLevel,
const wchar_t *  module,
const wchar_t *  format,
  ... 
)
Examples:
project-sample.cpp.
template<class T >
ErrorCode artec::sdk::base::resizeArray ( TArrayRef< T > &  src,
int  elementsCount 
)

Release the array assigned to TArrayRef and create a new one.

Definition at line 234 of file TArrayRef.h.

template<class T >
ErrorCode artec::sdk::base::resizeArray ( TArrayRef< T > &  src,
int  elementsCount,
bool  zeroFill 
)

Release the array assigned to TArrayRef and create a new one.

Definition at line 251 of file TArrayRef.h.

ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::rotateImage ( IImage **  dst,
const IImage src,
Rotation  direction 
)

Rotate image.

void ABASESDK_LINK_SPEC artec::sdk::base::setOutputLevel ( int  mode)
bool ABASESDK_LINK_SPEC artec::sdk::base::setReportHook ( int  mode,
REPORT_HOOK  newHook 
)
ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::toBGR ( IImage **  dst,
const IImage src 
)

Change R and B channels in given 3-channeled image.

Parameters
image- image that should be in RGB or BGR (3 channels), YUY(2 channels), or GS(1 channel) format.

supported format list: PixelFormat_RGB PixelFormat_BGR - just make image copy PixelFormat_YUY output format - PixelFormat_BGR

ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::toGrayscale ( IImage **  dst,
const IImage src 
)

Convert given image to grayscale (1 channel) format.

Fast algorithm. Select component with the maximum value.

Parameters
image- image that should be in RGB or BGR (3 channels), YUY(2 channels), or GS(1 channel) format.

supported format list: PixelFormat_BGR PixelFormat_BGRX PixelFormat_RG PixelFormat_RGB PixelFormat_RGBX PixelFormat_RG_USHORT PixelFormat_RGB_USHORT PixelFormat_RGBX_USHORT PixelFormat_RG_SINT PixelFormat_RGB_SINT PixelFormat_RGBX_SINT PixelFormat_YUY output format - PixelFormat_Mono

ErrorCode ABASESDK_LINK_SPEC artec::sdk::base::toRGB ( IImage **  dst,
const IImage src 
)

Change R and B channels in the given 3-channeled image.

Parameters
image- image that should be in RGB or BGR (3 channels), YUY(2 channels), or GS(1 channel) format.

supported format list: PixelFormat_BGR PixelFormat_RGB - just make image copy PixelFormat_YUY output format - PixelFormat_RGB

template<int rows, int cols, typename MatType , typename Type >
GenericMatrix<rows, cols, MatType> artec::sdk::base::vectorToMatrix ( const std::vector< Type > &  vec)

Definition at line 377 of file GenericMatrix.h.

template<int rows, int cols, typename Type >
GenericMatrix<rows, cols, Type> artec::sdk::base::vectorToMatrix ( const std::vector< Type > &  vec)

Definition at line 385 of file GenericMatrix.h.

void ABASESDK_LINK_SPEC artec::sdk::base::vReport ( int  verboseLevel,
const wchar_t *  module,
const wchar_t *  format,
va_list  args 
)

Variable Documentation

const int artec::sdk::base::RPTHOOK_INSTALL = 0

Definition at line 24 of file Log.h.

const int artec::sdk::base::RPTHOOK_REMOVE = 1

Definition at line 25 of file Log.h.