# Easy3DCoaxlinkLLE

| Support            | ![](assets/images/sample_programs/applies_to/cpp.svg)   |
|--------------------|---------------------------------------------------------|
| Required licenses  | **Easy3D**                                              |
| Recommended images |                                                         |
| Location           | `3D Processing/Easy3DCoaxlinkLLE`                       |

## Purpose

This sample program demonstrates how to:

- Acquire depth maps from a **Coaxlink 3D LLE** frame grabber and optionally save them.

#### NOTE
- You must provide a Coaxlink configuration file to start the acquisition.
- You can save single or continuous depth maps.

* **Coaxlink** documentation: [https://documentation.euresys.com/Products/COAXLINK/COAXLINK/en-us/Content/00_Home/home.htm](https://documentation.euresys.com/Products/COAXLINK/COAXLINK/en-us/Content/00_Home/home.htm)
* **Easy3D** example: [https://documentation.euresys.com/Products/OPEN_EVISION/OPEN_EVISION/en-us/Content/03_Using/6_3D_Processing/1_Easy3D/Easy3D_-_Using_3D_Toolset.htm](https://documentation.euresys.com/Products/OPEN_EVISION/OPEN_EVISION/en-us/Content/03_Using/6_3D_Processing/1_Easy3D/Easy3D_-_Using_3D_Toolset.htm)

![](assets/images/sample_programs/3d_processing_easy3dcoaxlinklle.webp)

## Code highlights

1. Retrieve the extraction method from the **Coaxlink 3D LLE** frame grabber.
2. Set up the resolution of the depth map.
   ```c++
   // Set 16-bit depth map fixed-point precision
   std::string method = getString<StreamModule>("Scan3dExtractionMethod");
   if (method == "PeakDetection_11_5" || method == "CenterOfGravity_11_5")
   {
     // 11.5 fixed point depth map
     depthMap16->SetZResolution(1.0f / 32.0f);
   }
   else if (method == "PeakDetection_8_8" || method == "CenterOfGravity_8_8")
   {
     // 8.8 fixed point depth map
     depthMap16->SetZResolution(1.0f / 256.0f);
   }
   else
   {
     // 16.0 fixed point depth map
     depthMap16->SetZResolution(1.0f);
   }
   ```
