class Fox::FXLight
OpenGL Light Source
Public Class Methods
Source
SWIGINTERN VALUE
_wrap_new_FXLight(int argc, VALUE *argv, VALUE self) {
FXLight *result = 0 ;
if ((argc < 0) || (argc > 0)) {
rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
}
result = (FXLight *)new FXLight();
DATA_PTR(self) = result;
return self;
fail:
return Qnil;
}
Public Instance Methods
Source
SWIGINTERN VALUE
_wrap_FXLight_ambient_get(int argc, VALUE *argv, VALUE self) {
FXLight *arg1 = (FXLight *) 0 ;
void *argp1 = 0 ;
int res1 = 0 ;
FXVec4f *result = 0 ;
VALUE vresult = Qnil;
if ((argc < 0) || (argc > 0)) {
rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
}
res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_FXLight, 0 | 0 );
if (!SWIG_IsOK(res1)) {
SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "FXLight *","ambient", 1, self ));
}
arg1 = reinterpret_cast< FXLight * >(argp1);
result = (FXVec4f *) & ((arg1)->ambient);
{
FXVec4f* resultptr = new FXVec4f(*result);
vresult = FXRbGetRubyObj(resultptr, "FXVec4f *");
}
return vresult;
fail:
return Qnil;
}
Ambient light color {FXVec4f}
Source
SWIGINTERN VALUE
_wrap_FXLight_ambient_set(int argc, VALUE *argv, VALUE self) {
FXLight *arg1 = (FXLight *) 0 ;
FXVec4f *arg2 = 0 ;
void *argp1 = 0 ;
int res1 = 0 ;
if ((argc < 1) || (argc > 1)) {
rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
}
res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_FXLight, 0 | 0 );
if (!SWIG_IsOK(res1)) {
SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "FXLight *","ambient", 1, self ));
}
arg1 = reinterpret_cast< FXLight * >(argp1);
{
if (TYPE(argv[0]) == T_ARRAY) {
arg2 = new FXVec4f(NUM2DBL(rb_ary_entry(argv[0], 0)), NUM2DBL(rb_ary_entry(argv[0], 1)), NUM2DBL(rb_ary_entry(argv[0], 2)), NUM2DBL(rb_ary_entry(argv[0], 3)));
} else {
FXVec4f *p;
SWIG_ConvertPtr(argv[0],(void **)&p,SWIGTYPE_p_FXVec4f,1);
arg2 = new FXVec4f(*p);
}
}
if (arg1) (arg1)->ambient = *arg2;
delete arg2;
return Qnil;
fail:
delete arg2;
return Qnil;
}
Ambient light color {FXVec4f}
Source
SWIGINTERN VALUE
_wrap_FXLight_c_attn_get(int argc, VALUE *argv, VALUE self) {
FXLight *arg1 = (FXLight *) 0 ;
void *argp1 = 0 ;
int res1 = 0 ;
FXfloat result;
VALUE vresult = Qnil;
if ((argc < 0) || (argc > 0)) {
rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
}
res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_FXLight, 0 | 0 );
if (!SWIG_IsOK(res1)) {
SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "FXLight *","c_attn", 1, self ));
}
arg1 = reinterpret_cast< FXLight * >(argp1);
result = (FXfloat) ((arg1)->c_attn);
vresult = SWIG_From_float(static_cast< float >(result));
return vresult;
fail:
return Qnil;
}
Constant attenuation factor [Float]
Source
SWIGINTERN VALUE
_wrap_FXLight_c_attn_set(int argc, VALUE *argv, VALUE self) {
FXLight *arg1 = (FXLight *) 0 ;
FXfloat arg2 ;
void *argp1 = 0 ;
int res1 = 0 ;
float val2 ;
int ecode2 = 0 ;
if ((argc < 1) || (argc > 1)) {
rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
}
res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_FXLight, 0 | 0 );
if (!SWIG_IsOK(res1)) {
SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "FXLight *","c_attn", 1, self ));
}
arg1 = reinterpret_cast< FXLight * >(argp1);
ecode2 = SWIG_AsVal_float(argv[0], &val2);
if (!SWIG_IsOK(ecode2)) {
SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "FXfloat","c_attn", 2, argv[0] ));
}
arg2 = static_cast< FXfloat >(val2);
if (arg1) (arg1)->c_attn = arg2;
return Qnil;
fail:
return Qnil;
}
Constant attenuation factor [Float]
Source
SWIGINTERN VALUE
_wrap_FXLight_cutoff_get(int argc, VALUE *argv, VALUE self) {
FXLight *arg1 = (FXLight *) 0 ;
void *argp1 = 0 ;
int res1 = 0 ;
FXfloat result;
VALUE vresult = Qnil;
if ((argc < 0) || (argc > 0)) {
rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
}
res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_FXLight, 0 | 0 );
if (!SWIG_IsOK(res1)) {
SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "FXLight *","cutoff", 1, self ));
}
arg1 = reinterpret_cast< FXLight * >(argp1);
result = (FXfloat) ((arg1)->cutoff);
vresult = SWIG_From_float(static_cast< float >(result));
return vresult;
fail:
return Qnil;
}
Spotlight cutoff angle [Float]
Source
SWIGINTERN VALUE
_wrap_FXLight_cutoff_set(int argc, VALUE *argv, VALUE self) {
FXLight *arg1 = (FXLight *) 0 ;
FXfloat arg2 ;
void *argp1 = 0 ;
int res1 = 0 ;
float val2 ;
int ecode2 = 0 ;
if ((argc < 1) || (argc > 1)) {
rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
}
res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_FXLight, 0 | 0 );
if (!SWIG_IsOK(res1)) {
SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "FXLight *","cutoff", 1, self ));
}
arg1 = reinterpret_cast< FXLight * >(argp1);
ecode2 = SWIG_AsVal_float(argv[0], &val2);
if (!SWIG_IsOK(ecode2)) {
SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "FXfloat","cutoff", 2, argv[0] ));
}
arg2 = static_cast< FXfloat >(val2);
if (arg1) (arg1)->cutoff = arg2;
return Qnil;
fail:
return Qnil;
}
Spotlight cutoff angle [Float]
Source
SWIGINTERN VALUE
_wrap_FXLight_diffuse_get(int argc, VALUE *argv, VALUE self) {
FXLight *arg1 = (FXLight *) 0 ;
void *argp1 = 0 ;
int res1 = 0 ;
FXVec4f *result = 0 ;
VALUE vresult = Qnil;
if ((argc < 0) || (argc > 0)) {
rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
}
res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_FXLight, 0 | 0 );
if (!SWIG_IsOK(res1)) {
SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "FXLight *","diffuse", 1, self ));
}
arg1 = reinterpret_cast< FXLight * >(argp1);
result = (FXVec4f *) & ((arg1)->diffuse);
{
FXVec4f* resultptr = new FXVec4f(*result);
vresult = FXRbGetRubyObj(resultptr, "FXVec4f *");
}
return vresult;
fail:
return Qnil;
}
Diffuse light color {FXVec4f}
Source
SWIGINTERN VALUE
_wrap_FXLight_diffuse_set(int argc, VALUE *argv, VALUE self) {
FXLight *arg1 = (FXLight *) 0 ;
FXVec4f *arg2 = 0 ;
void *argp1 = 0 ;
int res1 = 0 ;
if ((argc < 1) || (argc > 1)) {
rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
}
res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_FXLight, 0 | 0 );
if (!SWIG_IsOK(res1)) {
SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "FXLight *","diffuse", 1, self ));
}
arg1 = reinterpret_cast< FXLight * >(argp1);
{
if (TYPE(argv[0]) == T_ARRAY) {
arg2 = new FXVec4f(NUM2DBL(rb_ary_entry(argv[0], 0)), NUM2DBL(rb_ary_entry(argv[0], 1)), NUM2DBL(rb_ary_entry(argv[0], 2)), NUM2DBL(rb_ary_entry(argv[0], 3)));
} else {
FXVec4f *p;
SWIG_ConvertPtr(argv[0],(void **)&p,SWIGTYPE_p_FXVec4f,1);
arg2 = new FXVec4f(*p);
}
}
if (arg1) (arg1)->diffuse = *arg2;
delete arg2;
return Qnil;
fail:
delete arg2;
return Qnil;
}
Diffuse light color {FXVec4f}
Source
SWIGINTERN VALUE
_wrap_FXLight_direction_get(int argc, VALUE *argv, VALUE self) {
FXLight *arg1 = (FXLight *) 0 ;
void *argp1 = 0 ;
int res1 = 0 ;
FXVec3f *result = 0 ;
VALUE vresult = Qnil;
if ((argc < 0) || (argc > 0)) {
rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
}
res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_FXLight, 0 | 0 );
if (!SWIG_IsOK(res1)) {
SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "FXLight *","direction", 1, self ));
}
arg1 = reinterpret_cast< FXLight * >(argp1);
result = (FXVec3f *) & ((arg1)->direction);
{
FXVec3f* resultptr = new FXVec3f(*result);
vresult = FXRbGetRubyObj(resultptr, "FXVec3f *");
}
return vresult;
fail:
return Qnil;
}
Spot direction {FXVec3f}
Source
SWIGINTERN VALUE
_wrap_FXLight_direction_set(int argc, VALUE *argv, VALUE self) {
FXLight *arg1 = (FXLight *) 0 ;
FXVec3f *arg2 = 0 ;
void *argp1 = 0 ;
int res1 = 0 ;
if ((argc < 1) || (argc > 1)) {
rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
}
res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_FXLight, 0 | 0 );
if (!SWIG_IsOK(res1)) {
SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "FXLight *","direction", 1, self ));
}
arg1 = reinterpret_cast< FXLight * >(argp1);
{
if (TYPE(argv[0]) == T_ARRAY) {
arg2 = new FXVec3f(NUM2DBL(rb_ary_entry(argv[0], 0)), NUM2DBL(rb_ary_entry(argv[0], 1)), NUM2DBL(rb_ary_entry(argv[0], 2)));
} else {
FXVec3f *p;
SWIG_ConvertPtr(argv[0], (void **)&p, SWIGTYPE_p_FXVec3f, 1);
arg2 = new FXVec3f(*p);
}
}
if (arg1) (arg1)->direction = *arg2;
delete arg2;
return Qnil;
fail:
delete arg2;
return Qnil;
}
Spot direction {FXVec3f}
Source
SWIGINTERN VALUE
_wrap_FXLight_exponent_get(int argc, VALUE *argv, VALUE self) {
FXLight *arg1 = (FXLight *) 0 ;
void *argp1 = 0 ;
int res1 = 0 ;
FXfloat result;
VALUE vresult = Qnil;
if ((argc < 0) || (argc > 0)) {
rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
}
res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_FXLight, 0 | 0 );
if (!SWIG_IsOK(res1)) {
SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "FXLight *","exponent", 1, self ));
}
arg1 = reinterpret_cast< FXLight * >(argp1);
result = (FXfloat) ((arg1)->exponent);
vresult = SWIG_From_float(static_cast< float >(result));
return vresult;
fail:
return Qnil;
}
Spotlight exponent [Float]
Source
SWIGINTERN VALUE
_wrap_FXLight_exponent_set(int argc, VALUE *argv, VALUE self) {
FXLight *arg1 = (FXLight *) 0 ;
FXfloat arg2 ;
void *argp1 = 0 ;
int res1 = 0 ;
float val2 ;
int ecode2 = 0 ;
if ((argc < 1) || (argc > 1)) {
rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
}
res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_FXLight, 0 | 0 );
if (!SWIG_IsOK(res1)) {
SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "FXLight *","exponent", 1, self ));
}
arg1 = reinterpret_cast< FXLight * >(argp1);
ecode2 = SWIG_AsVal_float(argv[0], &val2);
if (!SWIG_IsOK(ecode2)) {
SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "FXfloat","exponent", 2, argv[0] ));
}
arg2 = static_cast< FXfloat >(val2);
if (arg1) (arg1)->exponent = arg2;
return Qnil;
fail:
return Qnil;
}
Spotlight exponent [Float]
Source
SWIGINTERN VALUE
_wrap_FXLight_l_attn_get(int argc, VALUE *argv, VALUE self) {
FXLight *arg1 = (FXLight *) 0 ;
void *argp1 = 0 ;
int res1 = 0 ;
FXfloat result;
VALUE vresult = Qnil;
if ((argc < 0) || (argc > 0)) {
rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
}
res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_FXLight, 0 | 0 );
if (!SWIG_IsOK(res1)) {
SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "FXLight *","l_attn", 1, self ));
}
arg1 = reinterpret_cast< FXLight * >(argp1);
result = (FXfloat) ((arg1)->l_attn);
vresult = SWIG_From_float(static_cast< float >(result));
return vresult;
fail:
return Qnil;
}
Linear attenuation factor [Float]
Source
SWIGINTERN VALUE
_wrap_FXLight_l_attn_set(int argc, VALUE *argv, VALUE self) {
FXLight *arg1 = (FXLight *) 0 ;
FXfloat arg2 ;
void *argp1 = 0 ;
int res1 = 0 ;
float val2 ;
int ecode2 = 0 ;
if ((argc < 1) || (argc > 1)) {
rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
}
res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_FXLight, 0 | 0 );
if (!SWIG_IsOK(res1)) {
SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "FXLight *","l_attn", 1, self ));
}
arg1 = reinterpret_cast< FXLight * >(argp1);
ecode2 = SWIG_AsVal_float(argv[0], &val2);
if (!SWIG_IsOK(ecode2)) {
SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "FXfloat","l_attn", 2, argv[0] ));
}
arg2 = static_cast< FXfloat >(val2);
if (arg1) (arg1)->l_attn = arg2;
return Qnil;
fail:
return Qnil;
}
Linear attenuation factor [Float]
Source
SWIGINTERN VALUE
_wrap_FXLight_position_get(int argc, VALUE *argv, VALUE self) {
FXLight *arg1 = (FXLight *) 0 ;
void *argp1 = 0 ;
int res1 = 0 ;
FXVec4f *result = 0 ;
VALUE vresult = Qnil;
if ((argc < 0) || (argc > 0)) {
rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
}
res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_FXLight, 0 | 0 );
if (!SWIG_IsOK(res1)) {
SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "FXLight *","position", 1, self ));
}
arg1 = reinterpret_cast< FXLight * >(argp1);
result = (FXVec4f *) & ((arg1)->position);
{
FXVec4f* resultptr = new FXVec4f(*result);
vresult = FXRbGetRubyObj(resultptr, "FXVec4f *");
}
return vresult;
fail:
return Qnil;
}
Light position {FXVec4f}
Source
SWIGINTERN VALUE
_wrap_FXLight_position_set(int argc, VALUE *argv, VALUE self) {
FXLight *arg1 = (FXLight *) 0 ;
FXVec4f *arg2 = 0 ;
void *argp1 = 0 ;
int res1 = 0 ;
if ((argc < 1) || (argc > 1)) {
rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
}
res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_FXLight, 0 | 0 );
if (!SWIG_IsOK(res1)) {
SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "FXLight *","position", 1, self ));
}
arg1 = reinterpret_cast< FXLight * >(argp1);
{
if (TYPE(argv[0]) == T_ARRAY) {
arg2 = new FXVec4f(NUM2DBL(rb_ary_entry(argv[0], 0)), NUM2DBL(rb_ary_entry(argv[0], 1)), NUM2DBL(rb_ary_entry(argv[0], 2)), NUM2DBL(rb_ary_entry(argv[0], 3)));
} else {
FXVec4f *p;
SWIG_ConvertPtr(argv[0],(void **)&p,SWIGTYPE_p_FXVec4f,1);
arg2 = new FXVec4f(*p);
}
}
if (arg1) (arg1)->position = *arg2;
delete arg2;
return Qnil;
fail:
delete arg2;
return Qnil;
}
Light position {FXVec4f}
Source
SWIGINTERN VALUE
_wrap_FXLight_q_attn_get(int argc, VALUE *argv, VALUE self) {
FXLight *arg1 = (FXLight *) 0 ;
void *argp1 = 0 ;
int res1 = 0 ;
FXfloat result;
VALUE vresult = Qnil;
if ((argc < 0) || (argc > 0)) {
rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
}
res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_FXLight, 0 | 0 );
if (!SWIG_IsOK(res1)) {
SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "FXLight *","q_attn", 1, self ));
}
arg1 = reinterpret_cast< FXLight * >(argp1);
result = (FXfloat) ((arg1)->q_attn);
vresult = SWIG_From_float(static_cast< float >(result));
return vresult;
fail:
return Qnil;
}
Quadratic attenuation factor [Float]
Source
SWIGINTERN VALUE
_wrap_FXLight_q_attn_set(int argc, VALUE *argv, VALUE self) {
FXLight *arg1 = (FXLight *) 0 ;
FXfloat arg2 ;
void *argp1 = 0 ;
int res1 = 0 ;
float val2 ;
int ecode2 = 0 ;
if ((argc < 1) || (argc > 1)) {
rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
}
res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_FXLight, 0 | 0 );
if (!SWIG_IsOK(res1)) {
SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "FXLight *","q_attn", 1, self ));
}
arg1 = reinterpret_cast< FXLight * >(argp1);
ecode2 = SWIG_AsVal_float(argv[0], &val2);
if (!SWIG_IsOK(ecode2)) {
SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "FXfloat","q_attn", 2, argv[0] ));
}
arg2 = static_cast< FXfloat >(val2);
if (arg1) (arg1)->q_attn = arg2;
return Qnil;
fail:
return Qnil;
}
Quadratic attenuation factor [Float]
Source
SWIGINTERN VALUE
_wrap_FXLight_specular_get(int argc, VALUE *argv, VALUE self) {
FXLight *arg1 = (FXLight *) 0 ;
void *argp1 = 0 ;
int res1 = 0 ;
FXVec4f *result = 0 ;
VALUE vresult = Qnil;
if ((argc < 0) || (argc > 0)) {
rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
}
res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_FXLight, 0 | 0 );
if (!SWIG_IsOK(res1)) {
SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "FXLight *","specular", 1, self ));
}
arg1 = reinterpret_cast< FXLight * >(argp1);
result = (FXVec4f *) & ((arg1)->specular);
{
FXVec4f* resultptr = new FXVec4f(*result);
vresult = FXRbGetRubyObj(resultptr, "FXVec4f *");
}
return vresult;
fail:
return Qnil;
}
Specular light color {FXVec4f}
Source
SWIGINTERN VALUE
_wrap_FXLight_specular_set(int argc, VALUE *argv, VALUE self) {
FXLight *arg1 = (FXLight *) 0 ;
FXVec4f *arg2 = 0 ;
void *argp1 = 0 ;
int res1 = 0 ;
if ((argc < 1) || (argc > 1)) {
rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
}
res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_FXLight, 0 | 0 );
if (!SWIG_IsOK(res1)) {
SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "FXLight *","specular", 1, self ));
}
arg1 = reinterpret_cast< FXLight * >(argp1);
{
if (TYPE(argv[0]) == T_ARRAY) {
arg2 = new FXVec4f(NUM2DBL(rb_ary_entry(argv[0], 0)), NUM2DBL(rb_ary_entry(argv[0], 1)), NUM2DBL(rb_ary_entry(argv[0], 2)), NUM2DBL(rb_ary_entry(argv[0], 3)));
} else {
FXVec4f *p;
SWIG_ConvertPtr(argv[0],(void **)&p,SWIGTYPE_p_FXVec4f,1);
arg2 = new FXVec4f(*p);
}
}
if (arg1) (arg1)->specular = *arg2;
delete arg2;
return Qnil;
fail:
delete arg2;
return Qnil;
}
Specular light color {FXVec4f}