2016-07-19 17:35:25 +00:00
|
|
|
/*
|
|
|
|
* This program source code file is part of KiCad, a free EDA CAD application.
|
|
|
|
*
|
|
|
|
* Copyright (C) 2016 Mario Luzeiro <mrluzeiro@ua.pt>
|
2020-04-17 21:33:23 +00:00
|
|
|
* Copyright (C) 1992-2020 KiCad Developers, see AUTHORS.txt for contributors.
|
2016-07-19 17:35:25 +00:00
|
|
|
*
|
|
|
|
* This program is free software; you can redistribute it and/or
|
|
|
|
* modify it under the terms of the GNU General Public License
|
|
|
|
* as published by the Free Software Foundation; either version 2
|
|
|
|
* of the License, or (at your option) any later version.
|
|
|
|
*
|
|
|
|
* This program is distributed in the hope that it will be useful,
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
* GNU General Public License for more details.
|
|
|
|
*
|
|
|
|
* You should have received a copy of the GNU General Public License
|
|
|
|
* along with this program; if not, you may find one here:
|
|
|
|
* http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
|
|
|
|
* or you may search the http://www.gnu.org website for the version 2 license,
|
|
|
|
* or you may write to the Free Software Foundation, Inc.,
|
|
|
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
|
|
|
|
*/
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @file 3d_enums.h
|
|
|
|
* @brief declared enumerations and flags
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef _3D_ENUMS_H_
|
|
|
|
#define _3D_ENUMS_H_
|
|
|
|
|
2020-07-27 23:16:21 +00:00
|
|
|
/// Rotation direction for the 3d canvas
|
|
|
|
enum class ROTATION_DIR
|
|
|
|
{
|
2020-12-14 20:21:36 +00:00
|
|
|
X_CW,
|
|
|
|
X_CCW,
|
|
|
|
Y_CW,
|
|
|
|
Y_CCW,
|
|
|
|
Z_CW,
|
|
|
|
Z_CCW
|
2020-07-27 23:16:21 +00:00
|
|
|
};
|
|
|
|
|
2016-07-19 17:35:25 +00:00
|
|
|
/// Camera types
|
2019-12-30 13:01:06 +00:00
|
|
|
enum class CAMERA_TYPE
|
2016-07-19 17:35:25 +00:00
|
|
|
{
|
2019-12-30 13:01:06 +00:00
|
|
|
TRACKBALL
|
2016-07-19 17:35:25 +00:00
|
|
|
};
|
|
|
|
|
2021-12-30 23:02:38 +00:00
|
|
|
// Do not modify the following enum numbers, they are saved in the config file and used in the UI
|
2016-07-19 17:35:25 +00:00
|
|
|
|
|
|
|
/// Grid types
|
2021-12-30 23:02:38 +00:00
|
|
|
enum class GRID3D_TYPE
|
2016-07-19 17:35:25 +00:00
|
|
|
{
|
2021-12-30 23:02:38 +00:00
|
|
|
NONE = 0,
|
|
|
|
GRID_1MM = 1,
|
|
|
|
GRID_2P5MM = 2,
|
|
|
|
GRID_5MM = 3,
|
|
|
|
GRID_10MM = 4
|
2016-07-19 17:35:25 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
/// Render engine mode
|
2021-12-30 23:02:38 +00:00
|
|
|
enum class RENDER_ENGINE
|
2016-07-19 17:35:25 +00:00
|
|
|
{
|
2021-12-30 23:02:38 +00:00
|
|
|
OPENGL = 0,
|
|
|
|
RAYTRACING = 1,
|
2016-07-19 17:35:25 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
/// Render 3d model shape materials mode
|
2021-12-30 23:02:38 +00:00
|
|
|
enum class MATERIAL_MODE
|
2016-07-19 17:35:25 +00:00
|
|
|
{
|
2021-12-30 23:02:38 +00:00
|
|
|
NORMAL = 0, ///< Use all material properties from model file
|
|
|
|
DIFFUSE_ONLY = 1, ///< Use only diffuse material properties
|
|
|
|
CAD_MODE = 2 ///< Use a gray shading based on diffuse material
|
2016-07-19 17:35:25 +00:00
|
|
|
};
|
|
|
|
|
2022-09-28 23:18:50 +00:00
|
|
|
enum class VIEW3D_TYPE
|
|
|
|
{
|
|
|
|
// Specific directions
|
|
|
|
VIEW3D_TOP,
|
|
|
|
VIEW3D_BOTTOM,
|
|
|
|
VIEW3D_LEFT,
|
|
|
|
VIEW3D_RIGHT,
|
|
|
|
VIEW3D_FRONT,
|
|
|
|
VIEW3D_BACK,
|
|
|
|
VIEW3D_RESET,
|
|
|
|
VIEW3D_FLIP,
|
|
|
|
|
|
|
|
// Movement commands
|
|
|
|
VIEW3D_PAN_UP,
|
|
|
|
VIEW3D_PAN_DOWN,
|
|
|
|
VIEW3D_PAN_LEFT,
|
|
|
|
VIEW3D_PAN_RIGHT,
|
|
|
|
VIEW3D_ZOOM_IN,
|
|
|
|
VIEW3D_ZOOM_OUT,
|
|
|
|
VIEW3D_PIVOT_CENTER,
|
|
|
|
|
|
|
|
// Specific levels
|
|
|
|
VIEW3D_FIT_SCREEN
|
|
|
|
};
|
|
|
|
|
2016-07-19 17:35:25 +00:00
|
|
|
#endif // _3D_ENUMS_H_
|