Пример #1
0
/////////////////////////////////////////////////////////
//
// pix_sig2pix
//
/////////////////////////////////////////////////////////
// Constructor
//
/////////////////////////////////////////////////////////
pix_sig2pix :: pix_sig2pix(t_floatarg width, t_floatarg height) : m_reqFormat(GL_RGBA_GEM)
{

    m_pixBlock.image = m_imageStruct;
    m_pixBlock.image.data=NULL;

    dimenMess((int)width, (int)height);	//tigital

    int i;
    for (i=0; i<3; i++)
        inlet_new(this->x_obj, &this->x_obj->ob_pd, &s_signal, &s_signal); /* channels inlet */
}
Пример #2
0
void pix_sig2pix :: dspMess(void *data, t_signal** sp)
{
    if (m_width==0 && m_height==0) {
        int w = powerOfTwo((int)sqrt((double)sp[0]->s_n));
        int h = (sp[0]->s_n / w);
        dimenMess(w, h);
        m_width = 0;
        m_height= 0;
    }
    m_pixBlock.image.setBlack();
    dsp_add(perform, 6, data, sp[0]->s_vec, sp[1]->s_vec, sp[2]->s_vec, sp[3]->s_vec, sp[0]->s_n);
}
Пример #3
0
/////////////////////////////////////////////////////////
//
// pix_crop
//
/////////////////////////////////////////////////////////
// Constructor
//
/////////////////////////////////////////////////////////
pix_crop :: pix_crop(t_floatarg x, t_floatarg y, t_floatarg w, t_floatarg h) :
  m_data(0), m_size(0),
  sizeX(0), sizeY(0), sizeC(0),
  offsetX(0), offsetY(0),
  wantSizeX(0), wantSizeY(0)
{
  if(w<=1. && h<=1.) {
    w=h=64.;
  }

  offsetMess((int)x,(int)y);
  dimenMess((int)w,(int)h);

  inlet_new(this->x_obj, &this->x_obj->ob_pd, gensym("float"), gensym("dimenX"));
  inlet_new(this->x_obj, &this->x_obj->ob_pd, gensym("float"), gensym("dimenY"));
  inlet_new(this->x_obj, &this->x_obj->ob_pd, gensym("float"), gensym("offsetX"));
  inlet_new(this->x_obj, &this->x_obj->ob_pd, gensym("float"), gensym("offsetY"));
}
Пример #4
0
/////////////////////////////////////////////////////////
//
// pix_resize
//
/////////////////////////////////////////////////////////
// Constructor
//
/////////////////////////////////////////////////////////
pix_resize :: pix_resize(t_floatarg width, t_floatarg height)
{
  dimenMess((int)width, (int)height);
}