FreeWRL / FreeX3D
4.3.0
trimregion.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
* trimregion.h
33
*
34
*/
35
36
#ifndef __glutrimregion_h_
37
#define __glutrimregion_h_
38
39
#include "trimline.h"
40
#include "gridline.h"
41
#include "uarray.h"
42
43
class
Arc
;
44
class
Backend
;
45
46
class
TrimRegion
{
47
public
:
48
TrimRegion
();
49
Trimline
left;
50
Trimline
right;
51
Gridline
top;
52
Gridline
bot;
53
Uarray
uarray;
54
55
void
init( REAL );
56
void
advance( REAL, REAL, REAL );
57
void
setDu( REAL );
58
void
init(
long
, Arc_ptr );
59
void
getPts( Arc_ptr );
60
void
getPts(
Backend
& );
61
void
getGridExtent(
TrimVertex
*,
TrimVertex
* );
62
void
getGridExtent(
void
);
63
int
canTile(
void
);
64
private
:
65
REAL oneOverDu;
66
};
67
68
inline
void
69
TrimRegion::init( REAL vval )
70
{
71
bot.vval = vval;
72
}
73
74
inline
void
75
TrimRegion::advance( REAL topVindex, REAL botVindex, REAL botVval )
76
{
77
top.vindex = (long) topVindex;
78
bot.vindex = (long) botVindex;
79
top.vval = bot.vval;
80
bot.vval = botVval;
81
top.ustart = bot.ustart;
82
top.uend = bot.uend;
83
}
84
#endif
/* __glutrimregion_h_ */
Arc
Definition
arc.h:55
Backend
Definition
backend.h:46
TrimRegion
Definition
trimregion.h:46
TrimVertex
Definition
trimvertex.h:43
Trimline
Definition
trimline.h:46
Uarray
Definition
uarray.h:44
Gridline
Definition
gridline.h:39
src
libnurbs
internals
trimregion.h
Generated by
1.11.0