artec::sdk::scanning Namespace Reference

Classes

class  IArrayScanner
 
class  IScanningProcedure
 
class  IScanningProcedureBundle
 
class  IScanningProcedureObserver
 
struct  RegistrationInfo
 
struct  ScanningProcedureBundleSettings
 
class  ScanningProcedureObserverBase
 
struct  ScanningProcedureSettings
 

Enumerations

enum  ScanningState {
  ScanningState_Preview,
  ScanningState_Record,
  ScanningState_ContinueRecord,
  ScanningState_Stop,
  ScanningState_ForceDword = 0x7fffffff
}
 
enum  RegistrationAlgorithmType {
  RegistrationAlgorithmType_ICP = 0x0,
  RegistrationAlgorithmType_Hybrid = 0x1,
  RegistrationAlgorithmType_Texture = 0x2,
  RegistrationAlgorithmType_ForceDword = 0x7fffffff
}
 
enum  ScanningPipeline {
  ScanningPipeline_CaptureOnly = 0x0,
  ScanningPipeline_ConvertTextures = 0x1,
  ScanningPipeline_CalculateNormals = 0x2,
  ScanningPipeline_MapTexture = 0x4,
  ScanningPipeline_RegisterFrame = 0x8,
  ScanningPipeline_FindGeometryKeyFrame = 0x10,
  ScanningPipeline_FastCapture = 0x20,
  ScanningPipelene_ForceDword = 0x7fffffff
}
 
enum  CaptureTextureMethod {
  CaptureTextureMethod_NoTextures,
  CaptureTextureMethod_EveryNFrame,
  CaptureTextureMethod_OnTextureKeyFrame,
  CaptureTextureMethod_Always,
  CaptureTextureMethod_ForceDword = 0x7fffffff
}
 Note. This setting define condition for full-size texture capturing. More...
 
enum  FrameState {
  FrameState_Ok,
  FrameState_TriggerCaptureFailed,
  FrameState_CaptureFailed,
  FrameState_ReconstructionFailed,
  FrameState_RegistrationFailed,
  FrameState_TextureMappingFailed,
  FrameState_AddToScanFailed,
  FrameState_ForceDword = 0x7fffffff
}
 Scanned frame state. More...
 

Functions

ErrorCode ASCANNINGSDK_LINK_SPEC createArrayScanner (IArrayScanner **pArray, int elementsCount)
 
ErrorCode ASCANNINGSDK_LINK_SPEC initializeScanningProcedureSettings (ScanningProcedureSettings *desc)
 Initializes scanning procedure descriptor with defaults settings. More...
 
ErrorCode ASCANNINGSDK_LINK_SPEC createScanningProcedure (IScanningProcedure **job, artec::sdk::capturing::IScanner *scanner, const ScanningProcedureSettings *desc=NULL)
 
ErrorCode ASCANNINGSDK_LINK_SPEC createScanningProcedureBundle (IScanningProcedureBundle **job, IArrayScanner *scanners, const ScanningProcedureBundleSettings *desc=NULL)
 

Enumeration Type Documentation

Note. This setting define condition for full-size texture capturing.

Enumerator
CaptureTextureMethod_NoTextures 

Don't capture textures at all.

CaptureTextureMethod_EveryNFrame 

Capture textures each N-th frame.

CaptureTextureMethod_OnTextureKeyFrame 

Capture textures only if frame detected as key frame for texturing algorithm If registration unsuccessful or ScanningPipeline_FindGeometryKeyFrame not set this action is skipped

CaptureTextureMethod_Always 

Capture textures on each frame.

CaptureTextureMethod_ForceDword 

Definition at line 85 of file IScanningProcedure.h.

Scanned frame state.

Enumerator
FrameState_Ok 
FrameState_TriggerCaptureFailed 
FrameState_CaptureFailed 
FrameState_ReconstructionFailed 
FrameState_RegistrationFailed 
FrameState_TextureMappingFailed 
FrameState_AddToScanFailed 
FrameState_ForceDword 

Definition at line 26 of file IScanningProcedureObserver.h.

Enumerator
RegistrationAlgorithmType_ICP 
RegistrationAlgorithmType_Hybrid 

Texture will be captured automatically.

RegistrationAlgorithmType_Texture 
RegistrationAlgorithmType_ForceDword 

Definition at line 41 of file IScanningProcedure.h.

Enumerator
ScanningPipeline_CaptureOnly 

Capture frames and reconstruct surfaces.

ScanningPipeline_ConvertTextures 

Convert textures from raw to color format.

ScanningPipeline_CalculateNormals 

Normals will be calculated if CaclulateNormals of RegisterFrame flags set.

ScanningPipeline_MapTexture 

Map Raw, Half-size or Full-size texture on the mesh If no texture captured this action is skipped

ScanningPipeline_RegisterFrame 

Make frame registration. When enabled, only unsuccessfully registered frames added to scan. Otherwise all frames added to scan. Normals will be calculated automatically for this case. In case of texture or hybrid tracking type texture will be mapped also.

ScanningPipeline_FindGeometryKeyFrame 

Detect is captured frame is geometry key frame (skeleton frame). If registration unsuccessful or ScanningPipeline_RegisterFrame not set this action is skipped

ScanningPipeline_FastCapture 

Make only capture while scanning and execute all post-processing later. Very suitable for scanning with bundle

ScanningPipelene_ForceDword 

Definition at line 52 of file IScanningProcedure.h.

Enumerator
ScanningState_Preview 
ScanningState_Record 
ScanningState_ContinueRecord 
ScanningState_Stop 
ScanningState_ForceDword 

Definition at line 31 of file IScanningProcedure.h.

Function Documentation

ErrorCode ASCANNINGSDK_LINK_SPEC artec::sdk::scanning::createArrayScanner ( IArrayScanner **  pArray,
int  elementsCount 
)
ErrorCode ASCANNINGSDK_LINK_SPEC artec::sdk::scanning::createScanningProcedure ( IScanningProcedure **  job,
artec::sdk::capturing::IScanner scanner,
const ScanningProcedureSettings desc = NULL 
)
ErrorCode ASCANNINGSDK_LINK_SPEC artec::sdk::scanning::createScanningProcedureBundle ( IScanningProcedureBundle **  job,
IArrayScanner scanners,
const ScanningProcedureBundleSettings desc = NULL 
)

Create procedure for scanning by scanners bundle

Parameters
job- procedure interface to create
scanners- scanners list. zero index scanner in master
desc- scanning procedure setting. same for all scanners
Returns
error code
ErrorCode ASCANNINGSDK_LINK_SPEC artec::sdk::scanning::initializeScanningProcedureSettings ( ScanningProcedureSettings desc)

Initializes scanning procedure descriptor with defaults settings.