Artec 3D Scanning SDK  2.0
Classes | Namespaces | Enumerations | Functions
Algorithms.h File Reference
#include <artec/sdk/algorithms/AlgorithmSdkDefines.h>
#include <artec/sdk/base/Errors.h>
#include <artec/sdk/base/IProgressInfo.h>
#include <artec/sdk/base/Point.h>
#include <artec/sdk/base/ScannerType.h>

Go to the source code of this file.

Classes

struct  artec::sdk::algorithms::FastFusionSettings
 Parameters for Fast fusion algorithm (algorithm quickly creates a simple model) More...
 
struct  artec::sdk::algorithms::PoissonFusionSettings
 Parameters for Sharp/Smooth fusion algorithms. More...
 
struct  artec::sdk::algorithms::SerialRegistrationSettings
 Parameters for Fine registration algorithm. More...
 
struct  artec::sdk::algorithms::AutoAlignSettings
 Parameters for Auto-alignment algorithm (Algorithm that assembles scans) More...
 
struct  artec::sdk::algorithms::GlobalRegistrationSettings
 Parameters for Global registration algorithm (algorithm optimizes frames within scans, launch it for a pre-aligned batch of scans or for a single scan) More...
 
struct  artec::sdk::algorithms::TexturizationSettings
 Parameters for Texturing algorithm. More...
 
struct  artec::sdk::algorithms::SmallObjectsFilterSettings
 Parameters for Small-object filter. More...
 
struct  artec::sdk::algorithms::MeshSimplificationSettings
 Parameters for Mesh simplification algorithm. More...
 
struct  artec::sdk::algorithms::FastMeshSimplificationSettings
 Parameters for Fast mesh simplification algorithm. More...
 
struct  artec::sdk::algorithms::LoopClosureSettings
 Parameters for Loop closure algorithm designed to compensate for accumulated error during scanning. More...
 
struct  artec::sdk::algorithms::OutliersRemovalSettings
 Parameters for Outlier removal algorithm designed to erases small extraneous surfaces. More...
 

Namespaces

 artec
 
 artec::sdk
 
 artec::sdk::base
 
 artec::sdk::algorithms
 

Enumerations

enum  artec::sdk::algorithms::InputFilter {
  artec::sdk::algorithms::InputFilter_UseTextureKeyFrames = 0,
  artec::sdk::algorithms::InputFilter_UseAllTextures
}
 Enum for Poisson Fusion and Texturization algorithms. More...
 
enum  artec::sdk::algorithms::PoissonFusionType {
  artec::sdk::algorithms::PoissonFusionType_Sharp,
  artec::sdk::algorithms::PoissonFusionType_Smooth,
  artec::sdk::algorithms::PoissonFusionType_ForceDword = 0x7fffffff
}
 Fusion type. More...
 
enum  artec::sdk::algorithms::FillHolesType {
  artec::sdk::algorithms::FillHolesType_All,
  artec::sdk::algorithms::FillHolesType_ByRadius,
  artec::sdk::algorithms::FillHolesType_ForceDword = 0x7fffffff
}
 What kind of holes to fill. More...
 
enum  artec::sdk::algorithms::SerialRegistrationType {
  artec::sdk::algorithms::SerialRegistrationType_Rough,
  artec::sdk::algorithms::SerialRegistrationType_RoughTextured,
  artec::sdk::algorithms::SerialRegistrationType_Fine,
  artec::sdk::algorithms::SerialRegistrationType_FineTextured,
  artec::sdk::algorithms::SerialRegistrationType_ForceDword = 0x7fffffff
}
 Serial registration type. More...
 
enum  artec::sdk::algorithms::GlobalRegistrationType {
  artec::sdk::algorithms::GlobalRegistrationType_Geometry,
  artec::sdk::algorithms::GlobalRegistrationType_GeometryAndTexture,
  artec::sdk::algorithms::GlobalRegistrationType_ForceDword = 0x7fffffff
}
 Global registration type. More...
 
enum  artec::sdk::algorithms::TexturizeType {
  artec::sdk::algorithms::TexturizeType_Advanced = 0,
  artec::sdk::algorithms::TexturizeType_Atlas,
  artec::sdk::algorithms::TexturizeType_KeepAtlas,
  artec::sdk::algorithms::TexturizeType_VertexColorToAtlas,
  artec::sdk::algorithms::TexturizeType_ForceDword = 0x7fffffff
}
 Texturing algorithm type. More...
 
enum  artec::sdk::algorithms::TexturizeResolution {
  artec::sdk::algorithms::TexturizeResolution_512x512 = 0,
  artec::sdk::algorithms::TexturizeResolution_1024x1024,
  artec::sdk::algorithms::TexturizeResolution_2048x2048,
  artec::sdk::algorithms::TexturizeResolution_4096x4096,
  artec::sdk::algorithms::TexturizeResolution_8192x8192,
  artec::sdk::algorithms::TexturizeResolution_16384x16384,
  artec::sdk::algorithms::TexturizeResolution_ForceDword = 0x7fffffff
}
 Resolution of texture output file (in pixels) More...
 
enum  artec::sdk::algorithms::SmallObjectsFilterType {
  artec::sdk::algorithms::SmallObjectsFilterType_LeaveBiggestObject = 0,
  artec::sdk::algorithms::SmallObjectsFilterType_FilterByThreshold = 1,
  artec::sdk::algorithms::SmallObjectsFilterType_ForceDword = 0x7fffffff
}
 What size of object to erase? More...
 
enum  artec::sdk::algorithms::SimplifyType {
  artec::sdk::algorithms::SimplifyType_TriangleQuantity,
  artec::sdk::algorithms::SimplifyType_Accuracy,
  artec::sdk::algorithms::SimplifyType_Remesh,
  artec::sdk::algorithms::SimplifyType_TriangleQuantityFast,
  artec::sdk::algorithms::SimplifyType_ForceDword = 0x7fffffff
}
 Simplification-algorithm target. More...
 
enum  artec::sdk::algorithms::SimplifyMetric {
  artec::sdk::algorithms::SimplifyMetric_EdgeLength,
  artec::sdk::algorithms::SimplifyMetric_EdgeLengthAndAngle,
  artec::sdk::algorithms::SimplifyMetric_DistanceToSurface,
  artec::sdk::algorithms::SimplifyMetric_DistanceToSurfaceIterative,
  artec::sdk::algorithms::SimplifyMetric_ForceDword = 0x7fffffff
}
 Simplification method. What exactly algorithm does to meet the target. More...
 

Functions

bool AALGORITHMSDK_LINK_SPEC artec::sdk::algorithms::checkAlgorithmsPermission ()
 Check whether the algorithms are available on this machine. More...
 
ErrorCode AALGORITHMSDK_LINK_SPEC artec::sdk::algorithms::initializeFastFusionSettings (FastFusionSettings *desc, base::ScannerType scannerType)
 Initializes Fast Fusion algorithm descriptor with scanner related defaults. More...
 
ErrorCode AALGORITHMSDK_LINK_SPEC artec::sdk::algorithms::initializePoissonFusionSettings (PoissonFusionSettings *desc, base::ScannerType scannerType)
 Initializes Sharp/Smooth fusion algorithm descriptor with scanner related defaults. More...
 
ErrorCode AALGORITHMSDK_LINK_SPEC artec::sdk::algorithms::initializeTexturizationSettings (TexturizationSettings *desc, base::ScannerType scannerType)
 Initialize Texturing algorithm descriptor with scanner related defaults. More...
 
ErrorCode AALGORITHMSDK_LINK_SPEC artec::sdk::algorithms::initializeSmallObjectsFilterSettings (SmallObjectsFilterSettings *desc, base::ScannerType scannerType)
 Initializes Small-object filter descriptor with scanner related defaults. More...
 
ErrorCode AALGORITHMSDK_LINK_SPEC artec::sdk::algorithms::initializeMeshSimplificationSettings (MeshSimplificationSettings *desc, base::ScannerType scannerType, SimplifyType simplifyType)
 Initializes Mesh simplification descriptor with scanner related defaults. More...
 
ErrorCode AALGORITHMSDK_LINK_SPEC artec::sdk::algorithms::initializeFastMeshSimplificationSettings (FastMeshSimplificationSettings *desc, base::ScannerType scannerType)
 Initializes Fast mesh simplification descriptor with scanner related defaults. More...
 
ErrorCode AALGORITHMSDK_LINK_SPEC artec::sdk::algorithms::initializeOutliersRemovalSettings (OutliersRemovalSettings *desc, base::ScannerType scannerType)
 Initializes Outliers removal descriptor with scanner related defaults. More...
 
ErrorCode AALGORITHMSDK_LINK_SPEC artec::sdk::algorithms::createFastFusionAlgorithm (IAlgorithm **fusion, const FastFusionSettings *desc)
 Creates Fast fusion algorithm. More...
 
ErrorCode AALGORITHMSDK_LINK_SPEC artec::sdk::algorithms::createPoissonFusionAlgorithm (IAlgorithm **fusion, const PoissonFusionSettings *desc)
 Creates Sharp/Smooth fusion algorithm. More...
 
ErrorCode AALGORITHMSDK_LINK_SPEC artec::sdk::algorithms::createSerialRegistrationAlgorithm (IAlgorithm **serialRegistration, const SerialRegistrationSettings *desc)
 Creates Fine/Rough serial registration algorithm. More...
 
ErrorCode AALGORITHMSDK_LINK_SPEC artec::sdk::algorithms::createAutoalignAlgorithm (IAlgorithm **autoalign, const AutoAlignSettings *desc)
 Creates Auto-align algorithm. More...
 
ErrorCode AALGORITHMSDK_LINK_SPEC artec::sdk::algorithms::createGlobalRegistrationAlgorithm (IAlgorithm **globalRegistration, const GlobalRegistrationSettings *desc)
 Creates Global registration algorithm. More...
 
ErrorCode AALGORITHMSDK_LINK_SPEC artec::sdk::algorithms::createTexturizationAlgorithm (IAlgorithm **texturizer, const TexturizationSettings *desc)
 Creates texturing algorithm. More...
 
ErrorCode AALGORITHMSDK_LINK_SPEC artec::sdk::algorithms::createSmallObjectsFilterAlgorithm (IAlgorithm **smallObjectsFilter, const SmallObjectsFilterSettings *desc)
 Creates Small-object filter. More...
 
ErrorCode AALGORITHMSDK_LINK_SPEC artec::sdk::algorithms::createMeshSimplificationAlgorithm (IAlgorithm **meshSimplification, const MeshSimplificationSettings *desc)
 Creates Mesh simplification algorithm. More...
 
ErrorCode AALGORITHMSDK_LINK_SPEC artec::sdk::algorithms::createFastMeshSimplificationAlgorithm (IAlgorithm **meshSimplification, const FastMeshSimplificationSettings *desc)
 Creates Fast mesh simplification algorithm. More...
 
ErrorCode AALGORITHMSDK_LINK_SPEC artec::sdk::algorithms::createLoopClosureAlgorithm (IAlgorithm **loopClosure, const LoopClosureSettings *desc)
 Creates Loop closure algorithm. More...
 
ErrorCode AALGORITHMSDK_LINK_SPEC artec::sdk::algorithms::createOutliersRemovalAlgorithm (IAlgorithm **outliesRemoval, const OutliersRemovalSettings *desc)
 Creates Outlier removal algorithm. More...