# Easy3DViewer

| Support            | ![](assets/images/sample_programs/applies_to/cpp.svg) ![](assets/images/sample_programs/applies_to/cs.svg) ![](assets/images/sample_programs/applies_to/qt.svg)   |
|--------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Required licenses  | **Easy3D**                                                                                                                                                        |
| Recommended images | Any point cloud or mesh file in the folder `Sample Images/3D`                                                                                                     |
| Location           | `3D Processing/Easy3DViewer`                                                                                                                                      |

## Purpose

This sample program demonstrates how to:

- Use most of the features of the class `E3DViewer`:
  - Load and save point clouds and meshes in the supported formats.
  - Manage several render sources.
  - Navigate the 3D view.
  - Change the color ramp.
  - Manage the display of grid, axis and colors.
- Convert 3D files formats.
- Use a point picking.

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

## Code highlights

1. Add a render source to display a point cloud.
   ```c++
   viewer_->AddRenderSource(name, pointCloud_);
   ```
2. Change the grid step of the 3D viewer.
   ```c++
   Easy3D::E3DPoint step(x, y, z);
   viewer_->GetRenderAxisConfiguration().SetRenderGridStep(step);
   ```
