OSDN Git Service

Merge branch 'nouveau-import'
[android-x86/external-mesa.git] / src / glu / sgi / libnurbs / nurbtess / sampleCompRight.h
1 /*
2 ** License Applicability. Except to the extent portions of this file are
3 ** made subject to an alternative license as permitted in the SGI Free
4 ** Software License B, Version 1.1 (the "License"), the contents of this
5 ** file are subject only to the provisions of the License. You may not use
6 ** this file except in compliance with the License. You may obtain a copy
7 ** of the License at Silicon Graphics, Inc., attn: Legal Services, 1600
8 ** Amphitheatre Parkway, Mountain View, CA 94043-1351, or at:
9 ** 
10 ** http://oss.sgi.com/projects/FreeB
11 ** 
12 ** Note that, as provided in the License, the Software is distributed on an
13 ** "AS IS" basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS
14 ** DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND
15 ** CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A
16 ** PARTICULAR PURPOSE, AND NON-INFRINGEMENT.
17 ** 
18 ** Original Code. The Original Code is: OpenGL Sample Implementation,
19 ** Version 1.2.1, released January 26, 2000, developed by Silicon Graphics,
20 ** Inc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc.
21 ** Copyright in any portions created by third parties is as indicated
22 ** elsewhere herein. All Rights Reserved.
23 ** 
24 ** Additional Notice Provisions: The application programming interfaces
25 ** established by SGI in conjunction with the Original Code are The
26 ** OpenGL(R) Graphics System: A Specification (Version 1.2.1), released
27 ** April 1, 1999; The OpenGL(R) Graphics System Utility Library (Version
28 ** 1.3), released November 4, 1998; and OpenGL(R) Graphics with the X
29 ** Window System(R) (Version 1.3), released October 19, 1998. This software
30 ** was created using the OpenGL(R) version 1.2.1 Sample Implementation
31 ** published by SGI, but has not been independently verified as being
32 ** compliant with the OpenGL(R) version 1.2.1 Specification.
33 **
34 ** $Date: 2001/03/17 00:25:41 $ $Revision: 1.1 $
35 */
36 /*
37 ** $Header: /home/krh/git/sync/mesa-cvs-repo/Mesa/src/glu/sgi/libnurbs/nurbtess/sampleCompRight.h,v 1.1 2001/03/17 00:25:41 brianp Exp $
38 */
39
40 #ifndef _SAMPLECOMPRIGHT_H
41 #define _SAMPLECOMPRIGHT_H
42
43 #define NOT_TAKEOUT
44
45 #include "sampleMonoPoly.h"
46 void stripOfFanRight(vertexArray* rightChain, 
47                     Int largeIndex,
48                     Int smallIndex,
49                     gridWrap* grid,
50                     Int vlineIndex,
51                     Int ulineSmallIndex,
52                     Int ulineLargeIndex,
53                     primStream* pStream,
54                     Int gridLineUp /*1 if grid line is above the trim lines */
55                      );
56
57 #ifdef NOT_TAKEOUT
58 void sampleRightStripRecF(vertexArray* rightChain,
59                      Int topRightIndex,
60                      Int botRightIndex,
61                      gridBoundaryChain* rightGridChain,
62                      Int rightGridChainStartIndex,
63                      Int rightGridChainEndIndex,        
64                      primStream* pStream
65                      );
66 //the degenerate case of sampleRightOneGridStep
67 void sampleRightOneGridStepNoMiddle(vertexArray* rightChain,
68                                     Int beginRightIndex,
69                                     Int endRightIndex,
70                                     gridBoundaryChain* rightGridChain,
71                                     Int rightGridChainStartIndex,
72                                     primStream* pStream);
73 //sampling the right area in between two grid lines
74 //shape: _________|
75 void sampleRightOneGridStep(vertexArray* rightChain, 
76                             Int beginRightIndex,
77                             Int endRightIndex,
78                             gridBoundaryChain* rightGridChain,
79                             Int rightGridChainStartIndex,
80                             primStream* pStream);
81 void sampleRightSingleTrimEdgeRegion(Real upperVert[2], Real lowerVert[2],
82                                      gridBoundaryChain* gridChain,
83                                      Int beginIndex,
84                                      Int endIndex,
85                                      primStream* pStream);
86 //the degenerate case of sampleRightOneGridStep
87 void sampleRightOneGridStepNoMiddle(vertexArray* rightChain,
88                                     Int beginRightIndex,
89                                     Int endRightIndex,
90                                     gridBoundaryChain* rightGridChain,
91                                     Int rightGridChainStartIndex,
92                                     primStream* pStream);
93
94 void sampleCompRight(Real* topVertex, Real* botVertex,
95                     vertexArray* leftChain,
96                     Int leftStartIndex, Int leftEndIndex,
97                     vertexArray* rightChain,
98                     Int rightStartIndex, Int rightEndIndex,
99                     gridBoundaryChain* rightGridChain,
100                     Int gridIndex1, Int gridIndex2,
101                     Int up_leftCornerWhere,
102                     Int up_leftCornerIndex,
103                     Int down_leftCornerWhere,
104                     Int down_leftCornerIndex,
105                     primStream* pStream);
106
107 void sampleRightSingleTrimEdgeRegionGen(Real topVert[2], Real botVert[2],
108                                        vertexArray* rightChain,
109                                        Int rightStart,
110                                        Int rightEnd,
111                                        gridBoundaryChain* gridChain,
112                                        Int gridBegindex,
113                                        Int gridEndIndex,
114                                        vertexArray* leftChain,
115                                        Int leftUpBegin,
116                                        Int leftUpEnd,
117                                        Int leftDownBegin,
118                                        Int leftDownEnd,
119                                        primStream* pStream);
120 #endif
121
122 #endif
123
124