123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142 |
- '\" te
- '\"! tbl|eqn | mmdoc
- '\"macro stdmacro
- .ds Vn Version 1.2
- .ds Dt 24 September 1999
- .ds Re Release 1.2.1
- .ds Dp Jan 14 18:30
- .ds Dm 01 mapgrid.g
- .ds Xs 53033 5 mapgrid.gl
- .TH GLMAPGRID 3G
- .SH NAME
- .B "glMapGrid1d, glMapGrid1f, glMapGrid2d, glMapGrid2f
- \- define a one- or two-dimensional mesh
- .SH C SPECIFICATION
- void \f3glMapGrid1d\fP(
- GLint \fIun\fP,
- .nf
- .ta \w'\f3void \fPglMapGrid1d( 'u
- GLdouble \fIu1\fP,
- GLdouble \fIu2\fP )
- .fi
- void \f3glMapGrid1f\fP(
- GLint \fIun\fP,
- .nf
- .ta \w'\f3void \fPglMapGrid1f( 'u
- GLfloat \fIu1\fP,
- GLfloat \fIu2\fP )
- .fi
- void \f3glMapGrid2d\fP(
- GLint \fIun\fP,
- .nf
- .ta \w'\f3void \fPglMapGrid2d( 'u
- GLdouble \fIu1\fP,
- GLdouble \fIu2\fP,
- GLint \fIvn\fP,
- GLdouble \fIv1\fP,
- GLdouble \fIv2\fP )
- .fi
- void \f3glMapGrid2f\fP(
- GLint \fIun\fP,
- .nf
- .ta \w'\f3void \fPglMapGrid2f( 'u
- GLfloat \fIu1\fP,
- GLfloat \fIu2\fP,
- GLint \fIvn\fP,
- GLfloat \fIv1\fP,
- GLfloat \fIv2\fP )
- .fi
- .EQ
- delim $$
- .EN
- .SH PARAMETERS
- .TP \w'\f2un\fP\ \ 'u
- \f2un\fP
- Specifies the number of partitions in the grid range interval
- [\f2u1\fP, \f2u2\fP].
- Must be positive.
- .TP
- \f2u1\fP, \f2u2\fP
- Specify the mappings for integer grid domain values $i~=~0$ and $i~=~"un"$.
- .TP
- \f2vn\fP
- Specifies the number of partitions in the grid range interval
- [\f2v1\fP, \f2v2\fP]
- .br
- (\%\f3glMapGrid2\fP only).
- .TP
- \f2v1\fP, \f2v2\fP
- Specify the mappings for integer grid domain values $j~=~0$ and $j~=~"vn"$
- .br
- (\%\f3glMapGrid2\fP only).
- .SH DESCRIPTION
- \%\f3glMapGrid\fP and \%\f3glEvalMesh\fP are used together to efficiently
- generate and evaluate a series of evenly-spaced map domain values.
- \%\f3glEvalMesh\fP steps through the integer domain
- of a one- or two-dimensional grid,
- whose range is the domain of the evaluation maps specified by
- \%\f3glMap1\fP and \%\f3glMap2\fP.
- .P
- \%\f3glMapGrid1\fP and \%\f3glMapGrid2\fP specify the linear grid mappings
- between the $i$
- (or $i$ and $j$)
- integer grid coordinates,
- to the $u$
- (or $u$ and $v$)
- floating-point evaluation map coordinates.
- See \%\f3glMap1\fP and \%\f3glMap2\fP for details of how $u$ and $v$ coordinates
- are evaluated.
- .P
- \%\f3glMapGrid1\fP specifies a single linear mapping
- such that integer grid coordinate 0 maps exactly to \f2u1\fP,
- and integer grid coordinate \f2un\fP maps exactly to \f2u2\fP.
- All other integer grid coordinates $i$ are mapped so that
- .sp
- .ce
- .EQ
- u ~=~ i ("u2" - "u1") / "un" ~+~ "u1"
- .EN
- .sp
- \%\f3glMapGrid2\fP specifies two such linear mappings.
- One maps integer grid coordinate $i~=~0$ exactly to \f2u1\fP,
- and integer grid coordinate $i~=~"un"$ exactly to \f2u2\fP.
- The other maps integer grid coordinate $j~=~0$ exactly to \f2v1\fP,
- and integer grid coordinate $j~=~"vn"$ exactly to \f2v2\fP.
- Other integer grid coordinates $i$ and $j$ are mapped such that
- .P
- .ce
- .EQ
- u ~=~ i ("u2" - "u1") / "un" ~+~ "u1"
- .EN
- .P
- .ce
- .EQ
- v ~=~ j ("v2" - "v1") / "vn" ~+~ "v1"
- .EN
- .P
- The mappings specified by \%\f3glMapGrid\fP are used identically by
- \%\f3glEvalMesh\fP and \%\f3glEvalPoint\fP.
- .SH ERRORS
- \%\f3GL_INVALID_VALUE\fP is generated if either \f2un\fP or \f2vn\fP is not
- positive.
- .P
- \%\f3GL_INVALID_OPERATION\fP is generated if \%\f3glMapGrid\fP
- is executed between the execution of \%\f3glBegin\fP
- and the corresponding execution of \%\f3glEnd\fP.
- .SH ASSOCIATED GETS
- \%\f3glGet\fP with argument \%\f3GL_MAP1_GRID_DOMAIN\fP
- .br
- \%\f3glGet\fP with argument \%\f3GL_MAP2_GRID_DOMAIN\fP
- .br
- \%\f3glGet\fP with argument \%\f3GL_MAP1_GRID_SEGMENTS\fP
- .br
- \%\f3glGet\fP with argument \%\f3GL_MAP2_GRID_SEGMENTS\fP
- .SH SEE ALSO
- \%\f3glEvalCoord(3G)\fP,
- \%\f3glEvalMesh(3G)\fP,
- \%\f3glEvalPoint(3G)\fP,
- \%\f3glMap1(3G)\fP,
- \%\f3glMap2(3G)\fP
|