OpenGL-GLU
view release on metacpan or search on metacpan
m[i] = SvIV(ST(i+4));
gluPickMatrix(x, y, delX, delY, &m[0]);
}
#//# gluProject_p($objx, $objy, $objz, @m4x4, @o4x4, $v1,$v2,$v3,$v4);
void
gluProject_p(objx, objy, objz, m1,m2,m3,m4,m5,m6,m7,m8,m9,m10,m11,m12,m13,m14,m15,m16, o1,o2,o3,o4,o5,o6,o7,o8,o9,o10,o11,o12,o13,o14,o15,o16, v1,v2,v3,v4)
GLdouble objx
GLdouble objy
GLdouble objz
PPCODE:
{
GLdouble m[16], p[16], winx, winy, winz;
GLint v[4];
int i;
for (i=0;i<16;i++)
m[i] = SvNV(ST(i+3));
for (i=0;i<16;i++)
p[i] = SvNV(ST(i+3+16));
for (i=0;i<4;i++)
v[i] = SvIV(ST(i+3+16+16));
gluTessVertex(tess->triangulator, data, data);
}
}
#//# gluUnProject_p($winx,$winy,$winz, @m4x4, @o4x4, $v1,$v2,$v3,$v4);
void
gluUnProject_p(winx,winy,winz, m1,m2,m3,m4,m5,m6,m7,m8,m9,m10,m11,m12,m13,m14,m15,m16, o1,o2,o3,o4,o5,o6,o7,o8,o9,o10,o11,o12,o13,o14,o15,o16, v1,v2,v3,v4)
GLdouble winx
GLdouble winy
GLdouble winz
PPCODE:
{
GLdouble m[16], p[16], objx, objy, objz;
GLint v[4];
int i;
for (i=0;i<16;i++)
m[i] = SvNV(ST(i+3));
for (i=0;i<16;i++)
p[i] = SvNV(ST(i+3+16));
for (i=0;i<4;i++)
fallback/const-xs.inc view on Meta::CPAN
dTARGET;
#endif
STRLEN len;
int type;
IV iv;
/* NV nv; Uncomment this if you need to return NVs */
/* const char *pv; Uncomment this if you need to return PVs */
INPUT:
SV * sv;
const char * s = SvPV(sv, len);
PPCODE:
/* Change this to constant(aTHX_ s, len, &iv, &nv);
if you need to return both NVs and IVs */
type = constant(aTHX_ s, len, &iv);
/* Return 1 or 2 items. First is error message, or undef if no error.
Second, if present, is found value */
switch (type) {
case PERL_constant_NOTFOUND:
sv =
sv_2mortal(newSVpvf("%s is not a valid OpenGL::GLU macro", s));
PUSHs(sv);
( run in 2.832 seconds using v1.01-cache-2.11-cpan-5511b514fd6 )