RenderMan

 view release on metacpan or  search on metacpan

RenderMan.xs  view on Meta::CPAN

#     OUTPUT:
#     RETVAL

# Duplicate
# RtToken
# RI_OBJECT()
#     CODE:
#     RETVAL = RI_OBJECT;
#     OUTPUT:
#     RETVAL

RtToken
RI_SHADER()
    CODE:
    RETVAL = RI_SHADER;
    OUTPUT:
    RETVAL

# Duplicate
# RtToken
# RI_RASTER()
#     CODE:
#     RETVAL = RI_RASTER;
#     OUTPUT:
#     RETVAL

RtToken
RI_NDC()
    CODE:
    RETVAL = RI_NDC;
    OUTPUT:
    RETVAL

# Duplicate
# RtToken
# RI_SCREEN()
#     CODE:
#     RETVAL = RI_SCREEN;
#     OUTPUT:
#     RETVAL

# Duplicate
# RtToken
# RI_CAMERA()
#     CODE:
#     RETVAL = RI_CAMERA;
#     OUTPUT:
#     RETVAL

RtToken
RI_EYE()
    CODE:
    RETVAL = RI_EYE;
    OUTPUT:
    RETVAL

######################################################################

void
RiBSplineBasis()
    PPCODE:
    {
	EXTEND(sp,16);
	PUSHs(sv_2mortal(newSVnv(RiBSplineBasis[0][0])));
	PUSHs(sv_2mortal(newSVnv(RiBSplineBasis[0][1])));
	PUSHs(sv_2mortal(newSVnv(RiBSplineBasis[0][2])));
	PUSHs(sv_2mortal(newSVnv(RiBSplineBasis[0][3])));

	PUSHs(sv_2mortal(newSVnv(RiBSplineBasis[1][0])));
	PUSHs(sv_2mortal(newSVnv(RiBSplineBasis[1][1])));
	PUSHs(sv_2mortal(newSVnv(RiBSplineBasis[1][2])));
	PUSHs(sv_2mortal(newSVnv(RiBSplineBasis[1][3])));

	PUSHs(sv_2mortal(newSVnv(RiBSplineBasis[2][0])));
	PUSHs(sv_2mortal(newSVnv(RiBSplineBasis[2][1])));
	PUSHs(sv_2mortal(newSVnv(RiBSplineBasis[2][2])));
	PUSHs(sv_2mortal(newSVnv(RiBSplineBasis[2][3])));

	PUSHs(sv_2mortal(newSVnv(RiBSplineBasis[3][0])));
	PUSHs(sv_2mortal(newSVnv(RiBSplineBasis[3][1])));
	PUSHs(sv_2mortal(newSVnv(RiBSplineBasis[3][2])));
	PUSHs(sv_2mortal(newSVnv(RiBSplineBasis[3][3])));
    }

void
RiBezierBasis()
    PPCODE:
    {
	EXTEND(sp,16);
	PUSHs(sv_2mortal(newSVnv(RiBezierBasis[0][0])));
	PUSHs(sv_2mortal(newSVnv(RiBezierBasis[0][1])));
	PUSHs(sv_2mortal(newSVnv(RiBezierBasis[0][2])));
	PUSHs(sv_2mortal(newSVnv(RiBezierBasis[0][3])));

	PUSHs(sv_2mortal(newSVnv(RiBezierBasis[1][0])));
	PUSHs(sv_2mortal(newSVnv(RiBezierBasis[1][1])));
	PUSHs(sv_2mortal(newSVnv(RiBezierBasis[1][2])));
	PUSHs(sv_2mortal(newSVnv(RiBezierBasis[1][3])));

	PUSHs(sv_2mortal(newSVnv(RiBezierBasis[2][0])));
	PUSHs(sv_2mortal(newSVnv(RiBezierBasis[2][1])));
	PUSHs(sv_2mortal(newSVnv(RiBezierBasis[2][2])));
	PUSHs(sv_2mortal(newSVnv(RiBezierBasis[2][3])));

	PUSHs(sv_2mortal(newSVnv(RiBezierBasis[3][0])));
	PUSHs(sv_2mortal(newSVnv(RiBezierBasis[3][1])));
	PUSHs(sv_2mortal(newSVnv(RiBezierBasis[3][2])));
	PUSHs(sv_2mortal(newSVnv(RiBezierBasis[3][3])));
    }

void
RiCatmullRomBasis()
    PPCODE:
    {
	EXTEND(sp,16);
	PUSHs(sv_2mortal(newSVnv(RiCatmullRomBasis[0][0])));
	PUSHs(sv_2mortal(newSVnv(RiCatmullRomBasis[0][1])));
	PUSHs(sv_2mortal(newSVnv(RiCatmullRomBasis[0][2])));
	PUSHs(sv_2mortal(newSVnv(RiCatmullRomBasis[0][3])));

	PUSHs(sv_2mortal(newSVnv(RiCatmullRomBasis[1][0])));
	PUSHs(sv_2mortal(newSVnv(RiCatmullRomBasis[1][1])));
	PUSHs(sv_2mortal(newSVnv(RiCatmullRomBasis[1][2])));
	PUSHs(sv_2mortal(newSVnv(RiCatmullRomBasis[1][3])));

	PUSHs(sv_2mortal(newSVnv(RiCatmullRomBasis[2][0])));
	PUSHs(sv_2mortal(newSVnv(RiCatmullRomBasis[2][1])));
	PUSHs(sv_2mortal(newSVnv(RiCatmullRomBasis[2][2])));
	PUSHs(sv_2mortal(newSVnv(RiCatmullRomBasis[2][3])));

	PUSHs(sv_2mortal(newSVnv(RiCatmullRomBasis[3][0])));
	PUSHs(sv_2mortal(newSVnv(RiCatmullRomBasis[3][1])));
	PUSHs(sv_2mortal(newSVnv(RiCatmullRomBasis[3][2])));
	PUSHs(sv_2mortal(newSVnv(RiCatmullRomBasis[3][3])));
    }

void
RiHermiteBasis()
    PPCODE:
    {
	EXTEND(sp,16);
	PUSHs(sv_2mortal(newSVnv(RiHermiteBasis[0][0])));
	PUSHs(sv_2mortal(newSVnv(RiHermiteBasis[0][1])));
	PUSHs(sv_2mortal(newSVnv(RiHermiteBasis[0][2])));
	PUSHs(sv_2mortal(newSVnv(RiHermiteBasis[0][3])));

	PUSHs(sv_2mortal(newSVnv(RiHermiteBasis[1][0])));
	PUSHs(sv_2mortal(newSVnv(RiHermiteBasis[1][1])));
	PUSHs(sv_2mortal(newSVnv(RiHermiteBasis[1][2])));
	PUSHs(sv_2mortal(newSVnv(RiHermiteBasis[1][3])));

	PUSHs(sv_2mortal(newSVnv(RiHermiteBasis[2][0])));
	PUSHs(sv_2mortal(newSVnv(RiHermiteBasis[2][1])));
	PUSHs(sv_2mortal(newSVnv(RiHermiteBasis[2][2])));
	PUSHs(sv_2mortal(newSVnv(RiHermiteBasis[2][3])));

	PUSHs(sv_2mortal(newSVnv(RiHermiteBasis[3][0])));
	PUSHs(sv_2mortal(newSVnv(RiHermiteBasis[3][1])));
	PUSHs(sv_2mortal(newSVnv(RiHermiteBasis[3][2])));
	PUSHs(sv_2mortal(newSVnv(RiHermiteBasis[3][3])));
    }

void
RiPowerBasis()
    PPCODE:
    {
	EXTEND(sp,16);
	PUSHs(sv_2mortal(newSVnv(RiPowerBasis[0][0])));
	PUSHs(sv_2mortal(newSVnv(RiPowerBasis[0][1])));
	PUSHs(sv_2mortal(newSVnv(RiPowerBasis[0][2])));
	PUSHs(sv_2mortal(newSVnv(RiPowerBasis[0][3])));

	PUSHs(sv_2mortal(newSVnv(RiPowerBasis[1][0])));
	PUSHs(sv_2mortal(newSVnv(RiPowerBasis[1][1])));
	PUSHs(sv_2mortal(newSVnv(RiPowerBasis[1][2])));
	PUSHs(sv_2mortal(newSVnv(RiPowerBasis[1][3])));

	PUSHs(sv_2mortal(newSVnv(RiPowerBasis[2][0])));
	PUSHs(sv_2mortal(newSVnv(RiPowerBasis[2][1])));
	PUSHs(sv_2mortal(newSVnv(RiPowerBasis[2][2])));
	PUSHs(sv_2mortal(newSVnv(RiPowerBasis[2][3])));

	PUSHs(sv_2mortal(newSVnv(RiPowerBasis[3][0])));
	PUSHs(sv_2mortal(newSVnv(RiPowerBasis[3][1])));
	PUSHs(sv_2mortal(newSVnv(RiPowerBasis[3][2])));
	PUSHs(sv_2mortal(newSVnv(RiPowerBasis[3][3])));
    }

######################################################################
# Now give interfaces to the functions...
######################################################################

# RC p.242
RtToken
RiDeclare(name,declaration)
    char*	name
    char*	declaration

# RC p.48 - DONE
void
RiBegin(...)
    CODE:
    {
	char *name;
	if (items==0) { RiBegin(RI_NULL); return; }
	if (items != 1) {
	    croak("Usage: RenderMan::Begin([name])");
	    return;
	}
	name = (char*)SvPV_nolen(ST(0));
	if (!name || !name[0])
	    RiBegin(RI_NULL);
	else
	    RiBegin(name);
    }

# RC p.48 - DONE
void
RiEnd()

# RC p.51 - DONE
void
RiFrameBegin(number)
    RtInt	number



( run in 0.513 second using v1.01-cache-2.11-cpan-5511b514fd6 )