Synchronize with trunk's revision r57629.
[reactos.git] / dll / opengl / glu32 / src / libnurbs / internals / nurbsconsts.h
1 /*
2 * SGI FREE SOFTWARE LICENSE B (Version 2.0, Sept. 18, 2008)
3 * Copyright (C) 1991-2000 Silicon Graphics, Inc. All Rights Reserved.
4 *
5 * Permission is hereby granted, free of charge, to any person obtaining a
6 * copy of this software and associated documentation files (the "Software"),
7 * to deal in the Software without restriction, including without limitation
8 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
9 * and/or sell copies of the Software, and to permit persons to whom the
10 * Software is furnished to do so, subject to the following conditions:
11 *
12 * The above copyright notice including the dates of first publication and
13 * either this permission notice or a reference to
14 * http://oss.sgi.com/projects/FreeB/
15 * shall be included in all copies or substantial portions of the Software.
16 *
17 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
18 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
20 * SILICON GRAPHICS, INC. BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
21 * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
22 * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
23 * SOFTWARE.
24 *
25 * Except as contained in this notice, the name of Silicon Graphics, Inc.
26 * shall not be used in advertising or otherwise to promote the sale, use or
27 * other dealings in this Software without prior written authorization from
28 * Silicon Graphics, Inc.
29 */
30
31 /*
32 * nurbsconsts.h
33 *
34 */
35
36 #ifndef __glunurbsconsts_h_
37 #define __glunurbsconsts_h_
38
39 /* NURBS Properties - one set per map,
40 each takes a single INREAL arg */
41 #define N_SAMPLING_TOLERANCE 1
42 #define N_S_RATE 6
43 #define N_T_RATE 7
44 #define N_CLAMPFACTOR 13
45 #define N_NOCLAMPING 0.0
46 #define N_MINSAVINGS 14
47 #define N_NOSAVINGSSUBDIVISION 0.0
48
49 /* NURBS Properties - one set per map,
50 each takes an enumerated value */
51 #define N_CULLING 2
52 #define N_NOCULLING 0.0
53 #define N_CULLINGON 1.0
54 #define N_SAMPLINGMETHOD 10
55 #define N_NOSAMPLING 0.0
56 #define N_FIXEDRATE 3.0
57 #define N_DOMAINDISTANCE 2.0
58 #define N_PARAMETRICDISTANCE 5.0
59 #define N_PATHLENGTH 6.0
60 #define N_SURFACEAREA 7.0
61 #define N_OBJECTSPACE_PARA 8.0
62 #define N_OBJECTSPACE_PATH 9.0
63 #define N_BBOX_SUBDIVIDING 17
64 #define N_NOBBOXSUBDIVISION 0.0
65 #define N_BBOXTIGHT 1.0
66 #define N_BBOXROUND 2.0
67
68 /* NURBS Rendering Properties - one set per renderer
69 each takes an enumerated value */
70 #define N_DISPLAY 3
71 #define N_FILL 1.0
72 #define N_OUTLINE_POLY 2.0
73 #define N_OUTLINE_TRI 3.0
74 #define N_OUTLINE_QUAD 4.0
75 #define N_OUTLINE_PATCH 5.0
76 #define N_OUTLINE_PARAM 6.0
77 #define N_OUTLINE_PARAM_S 7.0
78 #define N_OUTLINE_PARAM_ST 8.0
79 #define N_OUTLINE_SUBDIV 9.0
80 #define N_OUTLINE_SUBDIV_S 10.0
81 #define N_OUTLINE_SUBDIV_ST 11.0
82 #define N_ISOLINE_S 12.0
83 #define N_ERRORCHECKING 4
84 #define N_NOMSG 0.0
85 #define N_MSG 1.0
86
87 /* GL 4.0 propeties not defined above */
88 #ifndef N_PIXEL_TOLERANCE
89 #define N_PIXEL_TOLERANCE N_SAMPLING_TOLERANCE
90 #define N_ERROR_TOLERANCE 20
91 #define N_SUBDIVISIONS 5
92 #define N_TILES 8
93 #define N_TMP1 9
94 #define N_TMP2 N_SAMPLINGMETHOD
95 #define N_TMP3 11
96 #define N_TMP4 12
97 #define N_TMP5 N_CLAMPFACTOR
98 #define N_TMP6 N_MINSAVINGS
99 #define N_S_STEPS N_S_RATE
100 #define N_T_STEPS N_T_RATE
101 #endif
102
103 /* NURBS Rendering Properties - one set per map,
104 each takes an INREAL matrix argument */
105 #define N_CULLINGMATRIX 1
106 #define N_SAMPLINGMATRIX 2
107 #define N_BBOXMATRIX 3
108
109
110 /* NURBS Rendering Properties - one set per map,
111 each takes an INREAL vector argument */
112 #define N_BBOXSIZE 4
113
114 /* type argument for trimming curves */
115 #ifndef N_P2D
116 #define N_P2D 0x8
117 #define N_P2DR 0xd
118 #endif
119
120 #endif /* __glunurbsconsts_h_ */