/usr/include/mgl2/opengl.h is in libmgl-dev 2.3.4-1.1+b1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 | /***************************************************************************
* opengl.h is part of Math Graphic Library
* Copyright (C) 2007-2014 Alexey Balakin <mathgl.abalakin@gmail.ru> *
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU Library General Public License as *
* published by the Free Software Foundation; either version 3 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 Library General Public *
* License along with this program; if not, write to the *
* Free Software Foundation, Inc., *
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
***************************************************************************/
#ifndef MGL_CANVAS_GL_H
#define MGL_CANVAS_GL_H
//-----------------------------------------------------------------------------
#include "mgl2/canvas.h"
//-----------------------------------------------------------------------------
class MGL_EXPORT mglCanvasGL : public mglCanvas
{
public:
mglCanvasGL();
virtual ~mglCanvasGL();
void SetQuality(int =0) { Quality=2; }
void Finish();
void SetSize(int ,int ,bool clf=true) { if(clf) Clf(); }
void View(mreal tetX,mreal tetY,mreal tetZ);
void Zoom(mreal x1, mreal y1, mreal x2, mreal y2);
/* int NewFrame();
void EndFrame();
void DelFrame(long ){}*/
bool Alpha(bool enable);
void Fog(mreal d, mreal dz=0.25);
bool Light(bool enable);
void Light(int n, bool enable);
void AddLight(int n,mglPoint r,mglPoint d, char c='w', mreal bright=0.5, mreal ap=0);
void Clf(mglColor Back=NC);
void Clf(const char *col);
protected:
// provide fastest variant for usual points (not glyphs or marks)
void line_draw(long n1, long n2);
void trig_draw(long n1, long n2, long n3);
void quad_draw(long n1, long n2, long n3, long n4);
// variant for glyphs or marks
void line_draw(const mglPnt &p1, const mglPnt &p2, const mglDrawReg *d);
void trig_draw(const mglPnt &p1, const mglPnt &p2, const mglPnt &p3, bool anorm, const mglDrawReg *d);
void quad_draw(const mglPnt &p1, const mglPnt &p2, const mglPnt &p3, const mglPnt &p4, const mglDrawReg *d);
void pnt_draw(const mglPnt &p, const mglDrawReg *d);
void mark_draw(const mglPnt &q, char type, mreal size, mglDrawReg *d);
unsigned char **GetRGBLines(long &w, long &h, unsigned char *&f, bool solid=true);
void LightScale(const mglMatrix *M);
void gl_clf(mglColor Back=WC);
};
//-----------------------------------------------------------------------------
#endif
|