DAVID4 SDK
1.8.7
|
Specification of communication protocol between a DAVID client and a DAVID Enterprise Server using JsonRPC remote procedure calls. More...
Namespaces | |
david::jsonrpc | |
Specifications for DAVID remote procedure calls in JSON RPC 2.0. | |
Specification of communication protocol between a DAVID client and a DAVID Enterprise Server using JsonRPC remote procedure calls.
A list of supported JSON RPC 2.0 functions in namespace david.
Enumerator | |||||||||
---|---|---|---|---|---|---|---|---|---|
david_Connect |
Initializes connection between client and server. "method": "david::Connect"
--> "params" : {"clientVersion" : double}
<-- "result" : {"serverVersion" : string, "licenseOk" : bool}
<-- "error" : {"code" : int, "message" : string}
Parameters
Return Values
Error Codes
| ||||||||
david_Disconnect |
Informs the server that the client is going to disconnect. "method": "david::Disconnect"
--> "params" : null
<-- "result" : null
<-- "error" : {"code" : int, "message" : string}
| ||||||||
david_RequestBinaryChannel |
Requests IP address and port for setting up a binary channel over TCP/IP. "method": "david::RequestBinaryChannel"
--> "params" : null
<-- "result" : {"port" : uint16_t}
<-- "error" : {"code" : int, "message" : string}
Return Values
Error Codes
| ||||||||
david_ShowMainWindow |
Shows the main window of DAVID Server. "method": "david::ShowMainWindow"
--> "params" : null
<-- "result" : null
<-- "error" : {"code" : int, "message" : string}
| ||||||||
david_HideMainWindow |
Hides the main window of DAVID Server. "method": "david::HideMainWindow"
--> "params" : null
<-- "result" : null
<-- "error" : {"code" : int, "message" : string}
| ||||||||
david_ShowMenus |
Shows the GUI menus in DAVID Server. "method": "david::ShowMenus"
--> "params" : null
<-- "result" : null
<-- "error" : {"code" : int, "message" : string}
| ||||||||
david_HideMenus |
Hides the GUI menus in DAVID Server. "method": "david::HideMenus"
--> "params" : null
<-- "result" : null
<-- "error" : {"code" : int, "message" : string}
| ||||||||
david_StopServer |
Stops the DAVID SDK Server. "method": "david::StopServer"
--> "params" : null
<-- "result" : null
<-- "error" : {"code" : int, "message" : string}
|
Definition at line 57 of file JsonRpcFunctions.h.
A list of supported JSON RPC 2.0 functions in namespace david::measure.
Enumerator | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
david_measure_ComputeSurfaceDistances |
Computes signed distance values for each vertex of 'MeasureTestObject' relative to 'MeasureReferenceObject'. Note: If SDK Server is not licensed, part of the distance values (sent over binary channel) will be ZEROES only. "method": "david::measure::ComputeSurfaceDistances"
--> "params" : {"meshID1" : int, "meshID2" : int, "distThresh" : double}
<-- "result" : {"vertexCount": uint32_t, "size" : uint32_t}
<-- "error" : {"code" : int, "message" : string}
Parameters
Return Values
Error Codes
|
Definition at line 1338 of file JsonRpcFunctions.h.
A list of supported JSON RPC 2.0 functions in namespace david::shapefusion.
Enumerator | ||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
david_shapefusion_ImportMesh |
Imports a mesh into the mesh list from a file given by 'filename'. See documentation of DAVID software for supported file formats.
"method": "david::shapefusion::ImportMesh"
--> "params" : {"filename" : string}
<-- "result" : int
<-- "error" : {"code" : int, "message" : string}
Parameters
Return Values
Error Codes
| |||||||||||||||||||||||||||||||||||||
david_shapefusion_ExportMesh |
Exports a mesh. This mesh can be an item of the scan list or the fusion result. Just provide a valid 'meshID'. See documentation of DAVID software for supported file formats. Note: If SDK Server is not licensed, saving will not be possible, and david::Error_NotLicensed will be returned.
"method": "david::shapefusion::ExportMesh"
--> "params" : {"meshID" : int, "filename" : string}
<-- "result" : null
<-- "error" : {"code" : int, "message" : string}
Parameters
Error Codes
| |||||||||||||||||||||||||||||||||||||
david_shapefusion_DuplicateMesh |
Duplicate mesh with mesh ID 'sourceMeshID'. "method": "david::shapefusion::DuplicateMesh"
--> "params" : {"sourceMeshID" : int}
<-- "result" : int
<-- "error" : {"code" : int, "message" : string}
Parameters
Return Values
Error Codes
| |||||||||||||||||||||||||||||||||||||
david_shapefusion_DeleteAllMeshes |
Deletes all meshes in 'Shape Fusion'. "method": "david::shapefusion::DeleteAllMeshes"
--> "params" : null
<-- "result" : null
<-- "error" : {"code" : int, "message" : string}
| |||||||||||||||||||||||||||||||||||||
david_shapefusion_DeleteMesh |
Deletes a specific mesh of the mesh list. "method": "david::shapefusion::DeleteMesh"
--> "params" : {"meshID" : int}
<-- "result" : null
<-- "error" : {"code" : int, "message" : string}
Parameters
Error Codes
| |||||||||||||||||||||||||||||||||||||
david_shapefusion_GetMeshBuffer |
Gets a selected data (array buffer like vertex positions) from a specified mesh. Note: If SDK Server is not licensed, part of the vertex coordinates / normals (sent over binary channel) will be ZEROES only. "method": "david::shapefusion::GetMeshBuffer"
--> "params" : {"meshID" : int, "bufferType" : string}
<-- "result" : {"vertexCount": uint32_t, "triangleCount:" uint32_t, "size" : uint32_t}
<-- "error" : {"code" : int, "message" : string}
Parameters
Return Values
Error Codes
| |||||||||||||||||||||||||||||||||||||
david_shapefusion_GetTextureImage |
Gets the texture image of a mesh as binary data. Each pixel is represented by 3 bytes in BGR order. The pixels are ordered row by row, from top to bottom, each row from left to right. The data size is (3*width*height) bytes. "method": "david::shapefusion::GetTextureImage"
--> "params" : {"meshID" : int, "sendData" : bool}
<-- "result" : {"width": uint32_t, "height:" uint32_t, "size" : uint32_t}
<-- "error" : {"code" : int, "message" : string}
Parameters
Return Values
Error Codes
| |||||||||||||||||||||||||||||||||||||
david_shapefusion_GetPose |
Gets the current transformation (position+rotation) of a mesh. Initially, an imported mesh has no transformation. The transformation depends on previous calls of the Align... functions, or the Rotate or Translate functions. The position is returned in vector (px, py, pz). The rotation is returned in three different representations which are equivalent: A rotation matrix (n,o,a), roll-pitch-yaw angles, and a quaternion. Note: If SDK Server is not licensed, this function will return the error code david::Error_NotLicensed. "method": "david::shapefusion::GetPose"
--> "params" : {"meshID" : int}
<-- "result" : {"px": double, "py": double, "pz": double,
"nx": double, "ny": double, "nz": double,
"ox": double, "oy": double, "oz": double,
"ax": double, "ay": double, "az": double,
"roll": double, "pitch": double, "yaw": double,
"quat0": double, "quat1": double, "quat2": double, "quat3": double}
<-- "error" : {"code" : int, "message" : string}
Parameters
Return Values
Error Codes
| |||||||||||||||||||||||||||||||||||||
david_shapefusion_SetPose |
Sets the current transformation (position+rotation) of a mesh. Initially, an imported mesh has no transformation. The transformation depends on previous calls of the Align... functions, or the Rotate or Translate functions. The position is returned in vector (px, py, pz). The rotation is returned in three different representations which are equivalent: A rotation matrix (n,o,a), roll-pitch-yaw angles, and a quaternion. Note: If SDK Server is not licensed, this function will return the error code david::Error_NotLicensed. "method": "david::shapefusion::SetPose"
--> "params" : {"meshID" : int,
"px": double, "py": double, "pz": double,
"nx": double, "ny": double, "nz": double,
"ox": double, "oy": double, "oz": double,
"ax": double, "ay": double, "az": double}
<-- "result" : null
<-- "error" : {"code" : int, "message" : string}
Parameters
Error Codes
| |||||||||||||||||||||||||||||||||||||
david_shapefusion_Rotate |
Rotates a mesh around specified axis by given degrees. "method": "david::shapefusion::Rotate"
--> "params" : {"meshID" : int, "transformType" : string, "degrees" : double }
<-- "result" : null
<-- "error" : {"code" : int, "message" : string}
Parameters
Error Codes
| |||||||||||||||||||||||||||||||||||||
david_shapefusion_Translate |
Translates a mesh along specified axis by given degrees. "method": "david::shapefusion::Translate"
--> "params" : {"meshID" : int, "transformType" : string, "amount" : double }
<-- "result" : null
<-- "error" : {"code" : int, "message" : string}
Parameters
Error Codes
| |||||||||||||||||||||||||||||||||||||
david_shapefusion_ReduceMeshDensity |
Reduces the density of a mesh. "method": "david::shapefusion::ReduceMeshDensity"
--> "params" : {"meshID" : int, "factor" : float }
<-- "result" : null
<-- "error" : {"code" : int, "message" : string}
Parameters
Error Codes
| |||||||||||||||||||||||||||||||||||||
david_shapefusion_CombineMeshes |
Combines several meshes into one group. "method": "david::shapefusion::CombineMeshes"
--> "params" : {"meshIDs" : int[]}
<-- "result" : int
<-- "error" : {"code" : int, "message" : string}
Parameters
Return Values
Error Codes
| |||||||||||||||||||||||||||||||||||||
david_shapefusion_UncombineMeshes |
Uncombines a groups of meshes into seperate meshes. "method": "david::shapefusion::UncombineMeshes"
--> "params" : {"meshID" : int}
<-- "result" : int[]
<-- "error" : {"code" : int, "message" : string}
Parameters
Return Values
Error Codes
| |||||||||||||||||||||||||||||||||||||
david_shapefusion_AlignPairCoarse |
Coarse alignment of a pair of meshes. "method": "david::shapefusion::AlignPairCoarse"
--> "params" : {"meshID1" : int,
"meshID2" : int,
"texturePercentage" : int,
"motionInfo" : {"angleKnown" : bool,
"axisDirKnown" : bool,
"angle" : double,
"angleTolerance" : double,
"axisDir" : [double,double,double]},
"qualityFactor" : float }
<-- "result" : double
<-- "error" : {"code" : int, "message" : string}
Parameters
Return Values
Error Codes
| |||||||||||||||||||||||||||||||||||||
david_shapefusion_AlignPairFine |
Fine alignment of a pair of meshes. "method": "david::shapefusion::AlignPairFine"
--> "params" : {"meshID1" : int, "meshID2" : int, "texturePercentage" : int, "maxNumIterations" : int}
<-- "result" : null
<-- "error" : {"code" : int, "message" : string}
Parameters
Error Codes
| |||||||||||||||||||||||||||||||||||||
david_shapefusion_AlignGlobalFine |
Global fine alignment of all visible meshes. "method": "david::shapefusion::AlignGlobalFine"
--> "params" : {"texturePercentage" : int, "numIterations" : int}
<-- "result" : null
<-- "error" : {"code" : int, "message" : string}
Parameters
| |||||||||||||||||||||||||||||||||||||
david_shapefusion_Fuse |
Fuses all visible meshes of the mesh list. "method": "david::shapefusion::Fuse"
--> "params" : {"resolution" : int, "closeHoles" : bool, "sharpness" : int}
<-- "result" : int
<-- "error" : {"code" : int, "message" : string}
Parameters
Return Values
|
Definition at line 805 of file JsonRpcFunctions.h.
A list of supported JSON RPC 2.0 functions in namespace david::sls.
Enumerator | |||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
david_sls_SetScreenID |
Sets the new screen ID. "method": "david::sls::SetScreenID"
--> "params" : {"screenID" : int}
<-- "result" : null
<-- "error" : {"code" : int, "message" : string}
Parameters
Error Codes
| ||||||||||||||||||||||||||||||||||||||||||||||||
david_sls_GetAvailableCameraNames |
Gets a list of available cameras. "method": "david::sls::GetAvailableCameraNames"
--> "params" : null
<-- "result" : {"names" : string[]}
<-- "error" : {"code" : int, "message" : string}
Return Values
| ||||||||||||||||||||||||||||||||||||||||||||||||
david_sls_SelectCamera |
Selects a new camera. Note: For using pre-recorded image files, please see david::sls::SelectImageSequence. "method": "david::sls::SelectCamera"
--> "params" : {"cameraName" : string, "format" : {"width" : uint32_t, "height" : uint32_t, "fps" : double, "pixelFormat" : string}}
<-- "result" : null
<-- "error" : {"code" : int, "message" : string}
Parameters
Error Codes
| ||||||||||||||||||||||||||||||||||||||||||||||||
david_sls_CheckCamera |
Checks the state of the camera. "method": "david::sls::CheckCamera"
--> "params" : null
<-- "result" : bool
<-- "error" : {"code" : int, "message" : string}
Return Values
| ||||||||||||||||||||||||||||||||||||||||||||||||
david_sls_SetCameraProperty |
Sets the camera property 'propertyName'. "method": "david::sls::SetCameraProperty"
--> "params" : {"propertyName" : string, "value" : double, "usage" : string}
<-- "result" : null
<-- "error" : {"code" : int, "message" : string}
Parameters
Error Codes
| ||||||||||||||||||||||||||||||||||||||||||||||||
david_sls_GetCameraProperty |
Gets the camera property 'propertyName'. "method": "david::sls::GetCameraProperty"
--> "params" : {"propertyName" : string, "usage" : string}
<-- "result" : {"value" : double}
<-- "error" : {"code" : int, "message" : string}
Parameters
Error Codes
Return Values
| ||||||||||||||||||||||||||||||||||||||||||||||||
david_sls_GetCameraPropertyNames |
Gets a list of camera property names. This list may depend on the used camera. "method": "david::sls::GetCameraPropertyNames"
--> "params" : {"onlyAvailable" : bool}
<-- "result" : {"names" : string[]}
<-- "error" : {"code" : int, "message" : string}
Return Values
| ||||||||||||||||||||||||||||||||||||||||||||||||
david_sls_SelectImageSequence |
Selects a sequence of image files as "virtual camera". All images must be located in the same directory. The image file names are chosen automatically:
"method": "david::sls::SelectImageSequence"
--> "params" : {"directory" : string}
<-- "result" : null
<-- "error" : {"code" : int, "message" : string}
Parameters
Error Codes
| ||||||||||||||||||||||||||||||||||||||||||||||||
david_sls_GetLiveImage |
Gets the current grayscale live image from the camera. "method": "david::sls::GetLiveImage"
--> "params" : null
<-- "result" : {"width" : int, "height" : int, "size" : uint32_t}
<-- "error" : {"code" : int, "message" : string}
Return Values
Error Codes
| ||||||||||||||||||||||||||||||||||||||||||||||||
david_sls_SetCodedLightPhaseShiftMode |
Selects scan mode Coded Light + Phase Shift (standard DAVID4 mode) and sets the parameters. Missing parameters will remain unchanged. "method": "david::sls::SetCodedLightPhaseShiftMode"
--> "params" : {"inverse" : bool, "shifts" : int, "orientation" : string, "brightness" : int, "noiseReduction" : int}
<-- "result" : null
<-- "error" : {"code" : int, "message" : string}
Parameters
| ||||||||||||||||||||||||||||||||||||||||||||||||
david_sls_GetCodedLightPhaseShiftParams |
Gets current SLS params for Coded Light and Phase Shift. "method": "david::sls::GetCodedLightPhaseShiftParams"
--> "params" : null
<-- "result" : {"inverse" : bool, "shifts" : int, "orientation" : string, "brightness" : int, "noiseReduction" : int}
<-- "error" : {"code" : int, "message" : string}
Return Values
s | ||||||||||||||||||||||||||||||||||||||||||||||||
david_sls_SetResultFiltering |
Sets the result filtering parameters for SL scans. "method": "david::sls::SetResultFiltering"
--> "params" : {"qualityCheck" : double, "backgroundRemovalEnabled" : bool, "backgroundRemovalEpsilon" : double}
<-- "result" : null
<-- "error" : {"code" : int, "message" : string}
Parameters
| ||||||||||||||||||||||||||||||||||||||||||||||||
david_sls_GetResultFiltering |
Gets the result filtering parameters for SL scans. "method": "david::sls::GetResultFiltering"
--> "params" : null
<-- "result" : {"qualityCheck" : double, "backgroundRemovalEnabled" : bool, "backgroundRemovalEpsilon" : double}
<-- "error" : {"code" : int, "message" : string}
Return Values
| ||||||||||||||||||||||||||||||||||||||||||||||||
david_sls_ImportCalibration |
Imports calibration parameters of camera and projector from an XML files.
"method": "david::sls::ImportCalibration"
--> "params" : {"cameraCalibrationFilename" : string, "projectorCalibrationFilename" : string}
<-- "result" : null
<-- "error" : {"code" : int, "message" : string}
Parameters
Error Codes
| ||||||||||||||||||||||||||||||||||||||||||||||||
david_sls_ExportCalibration |
Exports the current calibration parameters of camera and projector to XML files.
"method": "david::sls::ExportCalibration"
--> "params" : {"cameraCalibrationFilename" : string, "projectorCalibrationFilename" : string}
<-- "result" : null
<-- "error" : {"code" : int, "message" : string}
Parameters
Error Codes
| ||||||||||||||||||||||||||||||||||||||||||||||||
david_sls_Calibrate |
Triggers automatic calibration of the Structured Light Scanner. The function returns when calibration is finished or an error occurred. "method": "david::sls::Calibrate"
--> "params" : {"calibScale" : double}
<-- "result" : null
<-- "error" : {"code" : int, "message" : string}
Parameters
Error Codes
| ||||||||||||||||||||||||||||||||||||||||||||||||
david_sls_Scan |
Triggers a Structured Light Scan. The function returns when scanning is finished or an error occurred. "method": "david::sls::Scan"
--> "params" : {"grabTexture" : bool, "setAsBackground" : bool}
<-- "result" : int
<-- "error" : {"code" : int, "message" : string}
Parameters
Return Values
Error Codes
| ||||||||||||||||||||||||||||||||||||||||||||||||
david_sls_GrabTexture |
Grabs a new texture. "method": "david::sls::GrabTexture"
--> "params" : null
<-- "result" : null
<-- "error" : {"code" : int, "message" : string}
Error Codes
| ||||||||||||||||||||||||||||||||||||||||||||||||
david_sls_AutoWhiteBalance |
Executes an auto white balancing procedure. "method": "david::sls::AutoWhiteBalance"
--> "params" : null
<-- "result" : null
<-- "error" : {"code" : int, "message" : string}
Error Codes
| ||||||||||||||||||||||||||||||||||||||||||||||||
david_sls_AddScanToShapeFusion |
Adds the current scan to 'Shape Fusion' module. "method": "david::sls::AddScanToShapeFusion"
--> "params" : null
<-- "result" : int
<-- "error" : {"code" : int, "message" : string}
Return Values
Error Codes
| ||||||||||||||||||||||||||||||||||||||||||||||||
david_sls_ExportMesh |
Exports the scan as a mesh. See documentation of DAVID software for supported file formats. Note: If SDK Server is not licensed, the resulting OBJ file will have reduced mesh resolution (like Free Edition).
"method": "david::sls::ExportMesh"
--> "params" : {"filename" : string}
<-- "result" : null
<-- "error" : {"code" : int, "message" : string}
Parameters
Error Codes
| ||||||||||||||||||||||||||||||||||||||||||||||||
david_sls_ExportBackgroundDepthmap |
Exports the current background scan as depthmap (PFM file). Note: If SDK Server is not licensed, this function will not run.
"method": "david::sls::ExportBackgroundDepthmap"
--> "params" : {"filename" : string}
<-- "result" : null
<-- "error" : {"code" : int, "message" : string}
Parameters
Error Codes
| ||||||||||||||||||||||||||||||||||||||||||||||||
david_sls_ImportBackgroundDepthmap |
Imports a background scan from a depthmap (PFM file).
"method": "david::sls::ImportBackgroundDepthmap"
--> "params" : {"filename" : string}
<-- "result" : null
<-- "error" : {"code" : int, "message" : string}
Parameters
Error Codes
|
Definition at line 185 of file JsonRpcFunctions.h.
A list of supported JSON RPC 2.0 functions in namespace david::turntable.
Enumerator | |||||||
---|---|---|---|---|---|---|---|
david_turntable_Setup |
Connects or disconnects a turntable. "method": "david::turntable::Setup"
--> "params" : {"enable" : bool}
<-- "result" : null
<-- "error" : {"code" : int, "message" : string}
Parameters
Error Codes
| ||||||
david_turntable_Rotate |
Rotates the turntable. The turntable rotates counterclockwise ('degrees' is postive) or clockwise ('degrees' is negative). "method": "david::turntable::Rotate"
--> "params" : {"degrees" : double}
<-- "result" : null
<-- "error" : {"code" : int, "message" : string}
Parameters
Error Codes
|
Definition at line 755 of file JsonRpcFunctions.h.