///////////////////////////////////////////////////////// // // part_targetsize // ///////////////////////////////////////////////////////// // Constructor // ///////////////////////////////////////////////////////// part_targetsize :: part_targetsize(t_floatarg size, t_floatarg scale) { if (size != 0.f) { sizeMess(size, size, size); } else { sizeMess(1.f, 1.f, 1.f); } if (scale != 0.f) { scaleMess(scale, scale, scale); } else { scaleMess(.05f, 0.05f, 0.05f); } // create the new inlet inlet_new(this->x_obj, &this->x_obj->ob_pd, &s_float, gensym("ft1")); inlet_new(this->x_obj, &this->x_obj->ob_pd, &s_float, gensym("ft2")); }
///////////////////////////////////////////////////////// // // part_targetcolor // ///////////////////////////////////////////////////////// // Constructor // ///////////////////////////////////////////////////////// part_targetcolor :: part_targetcolor(int argc, t_atom *argv) { scaleMess(.05f); if (argc == 5) { colorMess(atom_getfloat(&argv[0]), atom_getfloat(&argv[1]), atom_getfloat(&argv[2]), atom_getfloat(&argv[3])); scaleMess(atom_getfloat(&argv[4])); } else if (argc == 4) colorMess(atom_getfloat(&argv[0]), atom_getfloat(&argv[1]), atom_getfloat(&argv[2]), atom_getfloat(&argv[3])); else if (argc == 3) colorMess(atom_getfloat(&argv[0]), atom_getfloat(&argv[1]), atom_getfloat(&argv[2]), 1.f); else if (argc == 0) colorMess(1.f, 1.f, 1.f, 1.f); else { throw(GemException("needs 0, 3, 4, or 5 arguments")); } // create the new inlet inlet_new(this->x_obj, &this->x_obj->ob_pd, &s_list, gensym("color")); inlet_new(this->x_obj, &this->x_obj->ob_pd, &s_float, gensym("ft1")); }