]> de.git.xonotic.org Git - xonotic/netradiant.git/blob - plugins/model/model.cpp
f8d5eacfa2e5a19c40ca15e8eafe814877f0e774
[xonotic/netradiant.git] / plugins / model / model.cpp
1 /*
2    Copyright (C) 1999-2007 id Software, Inc. and contributors.
3    For a list of contributors, see the accompanying CONTRIBUTORS file.
4
5    This file is part of GtkRadiant.
6
7    GtkRadiant is free software; you can redistribute it and/or modify
8    it under the terms of the GNU General Public License as published by
9    the Free Software Foundation; either version 2 of the License, or
10    (at your option) any later version.
11
12    GtkRadiant 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 GtkRadiant; if not, write to the Free Software
19    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
20  */
21
22 #include "plugin.h"
23 #include "picomodel.h"
24
25 void pivot_draw( const vec3_t pivot ){
26         vec3_t vCenter, vMin, vMax;
27         VectorCopy( pivot, vCenter );
28
29         g_QglTable.m_pfn_qglPointSize( 4 );
30
31         g_QglTable.m_pfn_qglBegin( GL_POINTS );
32         g_QglTable.m_pfn_qglVertex3fv( vCenter );
33         g_QglTable.m_pfn_qglEnd();
34
35         g_QglTable.m_pfn_qglBegin( GL_LINES );
36         vCenter[0] -= 8;
37         g_QglTable.m_pfn_qglVertex3fv( vCenter );
38         vCenter[0] += 16;
39         g_QglTable.m_pfn_qglVertex3fv( vCenter );
40         vCenter[0] -= 8;
41         vCenter[1] -= 8;
42         g_QglTable.m_pfn_qglVertex3fv( vCenter );
43         vCenter[1] += 16;
44         g_QglTable.m_pfn_qglVertex3fv( vCenter );
45         vCenter[1] -= 8;
46         vCenter[2] -= 8;
47         g_QglTable.m_pfn_qglVertex3fv( vCenter );
48         vCenter[2] += 16;
49         g_QglTable.m_pfn_qglVertex3fv( vCenter );
50         vCenter[2] -= 8;
51         g_QglTable.m_pfn_qglEnd();
52
53         VectorCopy( vCenter, vMin );
54         VectorCopy( vCenter, vMax );
55         vMin[0] -= 4;
56         vMin[1] -= 4;
57         vMin[2] -= 4;
58         vMax[0] += 4;
59         vMax[1] += 4;
60         vMax[2] += 4;
61
62         g_QglTable.m_pfn_qglBegin( GL_LINE_LOOP );
63         g_QglTable.m_pfn_qglVertex3f( vMin[0],vMin[1],vMin[2] );
64         g_QglTable.m_pfn_qglVertex3f( vMax[0],vMin[1],vMin[2] );
65         g_QglTable.m_pfn_qglVertex3f( vMax[0],vMax[1],vMin[2] );
66         g_QglTable.m_pfn_qglVertex3f( vMin[0],vMax[1],vMin[2] );
67         g_QglTable.m_pfn_qglEnd();
68
69         g_QglTable.m_pfn_qglBegin( GL_LINE_LOOP );
70         g_QglTable.m_pfn_qglVertex3f( vMin[0],vMin[1],vMax[2] );
71         g_QglTable.m_pfn_qglVertex3f( vMax[0],vMin[1],vMax[2] );
72         g_QglTable.m_pfn_qglVertex3f( vMax[0],vMax[1],vMax[2] );
73         g_QglTable.m_pfn_qglVertex3f( vMin[0],vMax[1],vMax[2] );
74         g_QglTable.m_pfn_qglEnd();
75
76         g_QglTable.m_pfn_qglBegin( GL_LINES );
77         g_QglTable.m_pfn_qglVertex3f( vMin[0],vMin[1],vMin[2] );
78         g_QglTable.m_pfn_qglVertex3f( vMin[0],vMin[1],vMax[2] );
79         g_QglTable.m_pfn_qglVertex3f( vMin[0],vMax[1],vMax[2] );
80         g_QglTable.m_pfn_qglVertex3f( vMin[0],vMax[1],vMin[2] );
81         g_QglTable.m_pfn_qglVertex3f( vMax[0],vMin[1],vMin[2] );
82         g_QglTable.m_pfn_qglVertex3f( vMax[0],vMin[1],vMax[2] );
83         g_QglTable.m_pfn_qglVertex3f( vMax[0],vMax[1],vMax[2] );
84         g_QglTable.m_pfn_qglVertex3f( vMax[0],vMax[1],vMin[2] );
85         g_QglTable.m_pfn_qglEnd();
86 }