本文整理汇总了C++中Pixel::getA方法的典型用法代码示例。如果您正苦于以下问题:C++ Pixel::getA方法的具体用法?C++ Pixel::getA怎么用?C++ Pixel::getA使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Pixel
的用法示例。
在下文中一共展示了Pixel::getA方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: buildFrameToTransmit
DTFrame* ServerClientProxy::buildFrameToTransmit(){
vector<Pixel*>::iterator it;
it=this->pixelsFast.begin();
vector<DTPixel*>* dtVector = new vector<DTPixel*>();
int size=this->pixelsFast.size();
cl_float* newPixelArray = new cl_float[size * 4];
int cont=0;
while (it != this->pixelsFast.end())
{
Pixel* px = *it;
int pId = px->getId();
float pR = px->getR();
float pG = px->getG();
float pB = px->getB();
float pA = px->getA();
DTPixel * pixelForNewFrame= px->getDTPixel();
dtVector->push_back(pixelForNewFrame);
newPixelArray[(cont*4)] = (cl_float)pR;
newPixelArray[(cont*4)+1] = (cl_float)pG;
newPixelArray[(cont*4)+2] = (cl_float)pB;
newPixelArray[(cont*4)+3] = (cl_float)pA;
cont++;
it++;
}
return new DTFrame(0, dtVector, newPixelArray, this->pixelsFast.size(), 0);
}
示例2:
Pixel::Pixel(Pixel &p)
{
this->_r = p.getR();
this->_g = p.getG();
this->_b = p.getB();
this->_a = p.getA();
}
示例3: transmitFrame
void GenericClientManager::transmitFrame() {
//construyo DTFrame en base a los pixels mezclados
if(this->waitForReceiver==0) { // envio solo si el server no me pidio esperarpor error
vector<DTPixel*>* newVector = new vector<DTPixel*>;
map<int,Pixel*>::iterator it = this->pixels->begin();
while (it!=this->pixels->end())
{
Pixel* px = it->second;
ofVec3f position = px->getPosition();
ofVec3f front = px->getFront();
ofVec3f up = px->getUp();
string modelName = px->getModelName();
DTPixel* dtPix = new DTPixel(px->getId(), px->getR(), px->getG(), px->getB(), px->getA(), position.x, position.y, position.z, front, up, modelName);
newVector->push_back(dtPix);
it++;
}
DTFrame * newFrame = new DTFrame(0, newVector, this->pixels->size() , this->sequenceNumber);
// slice the DTFrame and transmit by piece.
int pixelQuantity = newVector->size();
int minId=0;
int maxId=pixelQuantity-1;
while(pixelQuantity>0) {
celebra_packet_t toTransmit;
int headerSize =18;
if (pixelQuantity<=341) {
toTransmit=newFrame->getBinaryPacketFromFrame(minId, maxId, this->sequenceNumber, 1);
int sent = this->udpManager.SendAll((char *)&toTransmit, headerSize+((maxId-minId+1)*3));
pixelQuantity=0;
}
else {
toTransmit=newFrame->getBinaryPacketFromFrame(minId, minId+340, this->sequenceNumber, 0);
int sent = this->udpManager.SendAll((char *)&toTransmit, headerSize+(341*3));
pixelQuantity=pixelQuantity-341;
minId = minId + 341;
}
// must increment sequence number.
if (this->sequenceNumber==65535) {
this->sequenceNumber=0;
}
else {
this->sequenceNumber++;
}
}
delete newFrame;
}
else {
this->waitForReceiver-=1;
}
}