KiCad PCB EDA Suite
ogl_utils.h
Go to the documentation of this file.
1/*
2 * This program source code file is part of KiCad, a free EDA CAD application.
3 *
4 * Copyright (C) 2015-2016 Mario Luzeiro <[email protected]>
5 * Copyright (C) 1992-2020 KiCad Developers, see AUTHORS.txt for contributors.
6 *
7 * This program is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU General Public License
9 * as published by the Free Software Foundation; either version 2
10 * of the License, or (at your option) any later version.
11 *
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License
18 * along with this program; if not, you may find one here:
19 * http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
20 * or you may search the http://www.gnu.org website for the version 2 license,
21 * or you may write to the Free Software Foundation, Inc.,
22 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
23 */
24
31#ifndef OGL_UTILS_H_
32#define OGL_UTILS_H_
33
34#include <wx/image.h>
35#include "3d_rendering/image.h"
37
46void OglSetMaterial( const SMATERIAL& aMaterial, float aOpacity,
47 bool aUseSelectedMaterial = false,
48 SFVEC3F aSelectionColor = SFVEC3F( 0.0f ) );
49
55void OglSetDiffuseMaterial( const SFVEC3F& aMaterialDiffuse, float aOpacity,
56 bool aUseSelectedMaterial = false,
57 SFVEC3F aSelectionColor = SFVEC3F( 0.0f ) );
58
65GLuint OglLoadTexture( const IMAGE& aImage );
66
72void OglGetScreenshot( wxImage& aDstImage );
73
74void OglDrawBackground( const SFVEC3F& aTopColor, const SFVEC3F& aBotColor );
75
80
81#endif // OGL_UTILS_H_
define an internal structure to be used by the 3D renders
Manage an 8-bit channel image.
Definition: image.h:90
one 8bit-channel image definition.
void OglSetDiffuseMaterial(const SFVEC3F &aMaterialDiffuse, float aOpacity, bool aUseSelectedMaterial=false, SFVEC3F aSelectionColor=SFVEC3F(0.0f))
Sets only the diffuse color and keep other parameters with default values.
Definition: ogl_utils.cpp:143
void OglGetScreenshot(wxImage &aDstImage)
Get the pixel data of current OpenGL image.
Definition: ogl_utils.cpp:37
void OglResetTextureState()
Reset to default state the texture settings.
Definition: ogl_utils.cpp:189
void OglDrawBackground(const SFVEC3F &aTopColor, const SFVEC3F &aBotColor)
Definition: ogl_utils.cpp:160
void OglSetMaterial(const SMATERIAL &aMaterial, float aOpacity, bool aUseSelectedMaterial=false, SFVEC3F aSelectionColor=SFVEC3F(0.0f))
Set OpenGL materials.
Definition: ogl_utils.cpp:119
GLuint OglLoadTexture(const IMAGE &aImage)
Generate a new OpenGL texture.
Definition: ogl_utils.cpp:71
glm::vec3 SFVEC3F
Definition: xv3d_types.h:44