HRESULT PlaybackControls::LoadFile() { QPixmap picture; picture = getPicture(mFile); if (!picture.isNull()) { mpParentWindow->id3Art->setPixmap(picture.scaledToHeight(128)); } HRESULT hr = 0; if (!mpGraph) { if (FAILED(hr = InitialiseFilterGraph())) return hr; } if (!mGraphValid) { hr = mpGraph->RenderFile(mFile.toStdWString().c_str(), NULL); if (SUCCEEDED(hr)) { QString metadata = getArtist(mFile); mpParentWindow->artistLabel->setText("Artist : " + metadata); metadata = getAlbum(mFile); mpParentWindow->albumLabel->setText("Album : " + metadata); metadata = getTitle(mFile); mpParentWindow->titleLabel->setText("Title : " + metadata); mGraphValid = true; setVolume(mVolume); emit volumeChanged(mVolume); } return hr; } return S_OK; }
void PictureBank::createResources() { Picture& originalPic = getPicture( ResourceGroup::utilitya, 34 ); setPicture( std::string( ResourceGroup::waterbuildings ) + "_00001.png", *originalPic.getSurface() ); Picture* fullReservoir = originalPic.createCopy(); //mem leak on destroy picloader fullReservoir->draw( getPicture( ResourceGroup::utilitya, 35 ), 47, 37 ); setPicture( std::string( ResourceGroup::waterbuildings ) + "_00002.png", *fullReservoir->getSurface() ); Picture& emptyFontainOrig = getPicture( ResourceGroup::utilitya, 10 ); setPicture( std::string( ResourceGroup::waterbuildings ) + "_00003.png", *emptyFontainOrig.getSurface() ); Picture* fullFontain = emptyFontainOrig.createCopy(); //mem leak on destroy picloader fullFontain->draw( getPicture( ResourceGroup::utilitya, 11 ), 12, 25 ); setPicture( std::string( ResourceGroup::waterbuildings) + "_00004.png", *fullFontain->getSurface() ); }
void House::_update() { int picId = ( _d->houseId == smallHovel && _d->currentHabitants == 0 ) ? 45 : (_d->houseId + _d->picIdOffset); setPicture( Picture::load( ResourceGroup::housing, picId ) ); setSize( Size( (getPicture().getWidth() + 2 ) / 60 ) ); _d->maxHabitants = _d->houseLevelSpec.getMaxHabitantsByTile() * getSize().getArea(); }
TriumphalArch::TriumphalArch() : Building( B_TRIUMPHAL_ARCH, Size(3) ) { setPicture( Picture::load( "land3a", 43 ) ); getPicture().set_offset(0,116); _animation.load("land3a", 44, 1); _animation.setOffset( Point( 63, 97 ) ); _fgPictures.resize(1); _fgPictures.at(0) = _animation.getCurrentPicture(); }
// Print gameboard's picture bool PlayGround::printPicture(KPrinter &printer) const { QPainter artist; QPixmap picture(getPicture()); if (!artist.begin(&printer)) return false; artist.drawPixmap(QPoint(32, 32), picture); if (!artist.end()) return false; return true; }
TriumphalArch::TriumphalArch() { setType(B_TRIUMPHAL_ARCH); _size = 3; setPicture(PicLoader::instance().get_picture("land3a", 43)); getPicture().set_offset(0,116); _animation.load("land3a", 44, 1); _animation.setOffset( Point( 63, 97 ) ); _fgPictures.resize(1); _fgPictures.at(0) = _animation.getCurrentPicture(); }
BuildingHippodrome::BuildingHippodrome() : EntertainmentBuilding(S_HIPPODROME, B_HIPPODROME, Size(5) ) { setPicture( Picture::load("circus", 5)); getPicture().set_offset(0,106); Picture* logo = &Picture::load("circus", 3); Picture* logo1 = &Picture::load("circus", 1); logo -> set_offset(150,181); logo1 -> set_offset(300,310); _fgPictures.resize(5); _fgPictures.at(0) = logo; _fgPictures.at(1) = logo1; }
TriumphalArch::TriumphalArch() { setType(B_TRIUMPHAL_ARCH); _size = 3; setPicture(PicLoader::instance().get_picture("land3a", 43)); getPicture().set_offset(0,116); AnimLoader animLoader(PicLoader::instance()); animLoader.fill_animation(_animation, "land3a", 44, 1); animLoader.change_offset(_animation, 63, 97); _fgPictures.resize(1); _fgPictures.at(0) = _animation.get_current_picture(); }
Encode_Status VaapiEncoderBase::getOutput(VideoEncOutputBuffer * outBuffer, bool withWait) { bool isEmpty; PicturePtr picture; Encode_Status ret; FUNC_ENTER(); ret = checkEmpty(outBuffer, &isEmpty); if (isEmpty) return ret; getPicture(picture); ret = picture->getOutput(outBuffer); if (ret != ENCODE_SUCCESS) return ret; checkCodecData(outBuffer); return ENCODE_SUCCESS; }
BuildingHippodrome::BuildingHippodrome() : EntertainmentBuilding(S_HIPPODROME) { setType(B_HIPPODROME); _size = 5; setPicture(PicLoader::instance().get_picture("circus", 5)); getPicture().set_offset(0,106); Picture* logo = &PicLoader::instance().get_picture("circus", 3); Picture* logo1 = &PicLoader::instance().get_picture("circus", 1); logo -> set_offset(150,181); logo1 -> set_offset(300,310); _fgPictures.resize(5); _fgPictures.at(0) = logo; _fgPictures.at(1) = logo1; }
HRESULT PlaybackControls::LoadFile() { mMediaObject.stop(); // Phonon::State state = mMediaObject.state(); QPixmap picture; picture = getPicture(mFile); if (!picture.isNull()) { mpParentWindow->id3Art->setPixmap(picture.scaledToHeight(128)); } QString metadata = getArtist(mFile); mpParentWindow->artistLabel->setText("Artist : " + metadata); metadata = getAlbum(mFile); mpParentWindow->albumLabel->setText("Album : " + metadata); metadata = getTitle(mFile); mpParentWindow->titleLabel->setText("Title : " + metadata); mMediaObject.setCurrentSource(mFile); QStringList list = mMediaObject.metaData(Phonon::TitleMetaData); // bool test = list.isEmpty(); mAudioOutput.setVolume(mVolume / 100.0); volumeChanged(mVolume); return 0; }
static CameraError retrievePic(String imgName) { setPowerOutput(ON); /** * Increasing Power On Period * * Although the data sheet says that the camera needs ~1.5 sec to start-up, * in practice 2 sec makes for a much more reliable situation. */ wait(2000);//1500); // initialize camera and image storage cameraComPort.init(); cameraComPort.baudrate(14400); //imageFile = getFileStream(); imageFile = FSfopen(imgName, "w"); CameraError error = NO_FILE; //if(imageFile.open) if(imageFile) { //FSfclose(FSfopen(imgName, "w")); // erase file //imageFile.open(imgName); // open file error = getPicture(); FSfclose(imageFile); imageFile = NullPtr; //imageFile.close(); } //imageFile.free(); setPowerOutput(OFF); wait(1000); return error; }
Encode_Status VaapiEncoderBase::getOutput(VideoEncOutputBuffer * outBuffer, VideoEncMVBuffer * MVBuffer, bool withWait) { void *data = NULL; uint32_t mappedSize; bool isEmpty; PicturePtr picture; Encode_Status ret; FUNC_ENTER(); ret = checkEmpty(outBuffer, &isEmpty); if (isEmpty) return ret; getPicture(picture); ret = picture->getOutput(outBuffer); if (ret != ENCODE_SUCCESS) return ret; if (!picture->editMVBuffer(data, &mappedSize)) return ret; if (data) memcpy(MVBuffer->data, data, mappedSize); checkCodecData(outBuffer); return ENCODE_SUCCESS; }
bool DrawAni::doDraw(const int frameIndex, const AniModify* mod_lev2, const AniModify* mod_lev3) { if (!m_pkAni || !m_pkInstance || !m_pkInstance->getOwnerNode()) return false; // get picture to draw NDPicture* pkPicture = getPicture(m_pkAni, frameIndex); if (!pkPicture) return false; // get node screen rect CCRect kNodeRect; NDNode* pkOwnerNode = m_pkInstance->getOwnerNode(); if (pkOwnerNode->IsA(RTCLS(NDTileObj))) { NDTileObj* pkTileObj = (NDTileObj*) pkOwnerNode; if (pkTileObj->isPlayer() || pkTileObj->isPath()) kNodeRect = pkOwnerNode->GetScreenRect(); else kNodeRect = pkOwnerNode->GetPushScreenRect(); } else { kNodeRect = pkOwnerNode->GetScreenRect(); } // node center pos (caution: world map tile obj!) CCPoint centerPos = CCPointMake( kNodeRect.origin.x + kNodeRect.size.width * 0.5f, kNodeRect.origin.y + kNodeRect.size.height * 0.5f); // get node scale (recursive) float nodeScaleX = pkOwnerNode->GetScaleX_R(); float nodeScaleY = pkOwnerNode->GetScaleY_R(); // add offset int sign = pkOwnerNode->isReverse() ? -1 : 1; centerPos.x += m_pkAni->m_kAniModifyEx.getOffsetX() * COORD_SCALE_X_960 * nodeScaleX * sign; centerPos.y += m_pkAni->m_kAniModifyEx.getOffsetY() * COORD_SCALE_Y_960 * nodeScaleY; // apply mod: offset if (mod_lev2) { centerPos.x += mod_lev2->getOffsetX() * COORD_SCALE_X_960 * nodeScaleX * sign; centerPos.y += mod_lev2->getOffsetY() * COORD_SCALE_Y_960 * nodeScaleY; } if (mod_lev3) { centerPos.x += mod_lev3->getOffsetX() * COORD_SCALE_X_960 * nodeScaleX * sign; centerPos.y += mod_lev3->getOffsetY() * COORD_SCALE_Y_960 * nodeScaleY; } // calculate pic size CCSize picSize = pkPicture->GetSize(); if (m_pkAni->m_kAniModifyEx.getStretch()) { picSize.width *= COORD_SCALE_X_960; picSize.height *= COORD_SCALE_Y_960; } else { picSize.width *= RESOURCE_SCALE_960; picSize.height *= RESOURCE_SCALE_960; } if (m_pkAni->m_kAniModifyEx.getFullScreen()) { // apply fullscreen picSize = CCDirector::sharedDirector()->getWinSizeInPixels(); } else { // size override if (m_pkAni->m_kAniModifyEx.sizeOverride()) { picSize = CCSizeMake(m_pkAni->m_kAniModifyEx.getWidth(), m_pkAni->m_kAniModifyEx.getHeight()); } // apply node scale picSize.width *= nodeScaleX; picSize.height *= nodeScaleY; // apply scale picSize.width *= m_pkAni->m_kAniModifyEx.getScale(); picSize.height *= m_pkAni->m_kAniModifyEx.getScale(); // apply mod: scale if (mod_lev2) { picSize.width *= mod_lev2->getScale(); picSize.height *= mod_lev2->getScale(); } if (mod_lev3) { picSize.width *= mod_lev3->getScale(); picSize.height *= mod_lev3->getScale(); } } // apply alpha applyAlpha(pkPicture, mod_lev2); // apply HSL applyHSL(pkPicture, mod_lev2); // target rect to draw in CCRect picRect = CCRectMake(centerPos.x - picSize.width * 0.5f, centerPos.y - picSize.height * 0.5f, picSize.width, picSize.height); // check to disable scissor if (!isAllowScissor()) { NDDirector::DefaultDirector()->DisableScissor(); } // draw if (m_pkInstance && m_pkInstance->getOwnerNode()) { // apply from action: opacity/rotation/gaussianBlur NDNode* pkOwnerNode = m_pkInstance->getOwnerNode(); pkPicture->SetOpacity(pkOwnerNode->getRGBA()->getOpacity()); pkPicture->SetRotation(pkOwnerNode->getCCNode()->getRotation()); pkPicture->SetRotationX(pkOwnerNode->getCCNode()->getRotationX()); pkPicture->SetRotationY(pkOwnerNode->getCCNode()->getRotationY()); pkPicture->setGaussianBlur(pkOwnerNode->getCCNode()->getGaussianBlur()); // toggle reverse bool bReverse = m_pkAni->m_kAniModifyEx.getReverse(); if (pkOwnerNode->isReverse()) bReverse = !bReverse; pkPicture->SetReverse(bReverse); } pkPicture->DrawInRect(picRect); }
Picture& PictureBank::getPicture(const std::string &prefix, const int idx) { std::string resource_name = StringHelper::format( 0xff, "%s_%05d.png", prefix.c_str(),idx ); return getPicture(resource_name); }
Picture& PictureBank::getPicture(const std::string& prefix, const int idx) { _d->cache.rc = utils::format( 0xff, "%s_%05d", prefix.c_str(), idx ); return getPicture( _d->cache.rc ); }
/** * 对图片进行处理 */ void processImage(ImageProcess *mImageProcess, std::vector<OCRMask>* mOCRMasks, BillInfo& mBillInfo) { //ImageProcess *mImageProcess = new ImageProcess(); //ParamWidget* paramWidget = new ParamWidget(); QString fileName = getPicture(); mBillInfo.fileName = fileName; IplImage* cvImage = cvLoadImage(fileName.toLocal8Bit().data()); if(cvImage) { mImageProcess->setImage(cvImage); //QImage* qtImage= ImageAdapter::IplImage2QImage(cvImage); //imageWidget->setImage(qtImage); //mBillInfo.fileName = *qtImage;//保存图片,不知道会不会有问题 } if(mImageProcess->getOriginalImage() == NULL) { QMessageBox msgBox; msgBox.setIcon(QMessageBox::Warning); msgBox.setText(QObject::tr("No image loaded.\nPlease load an image file before OpenCV.")); msgBox.exec(); return; } /* ImageProcessParam param; param.debug = true; param.gray =paramWidget->grayGroup->isChecked(); param.threshold = paramWidget->threshold->isChecked(); param.thresholdBlockSize = paramWidget->thresholdBlockSize->value(); param.thresholdMeanBias = paramWidget->thresholdMeanBias->value(); param.hough = paramWidget->houghGroup->isChecked(); param.houghRho = paramWidget->houghRho->value(); param.houghTheta = paramWidget->houghTheta->value(); param.houghThreshold = paramWidget->houghThreshold->value(); param.houghParam1 = paramWidget->houghParam1->value(); param.houghParam2 = paramWidget->houghParam2->value(); param.corner = paramWidget->cornerGroup->isChecked(); param.cornerDegree = paramWidget->cornerDegree->value(); param.cornerGap = paramWidget->cornerGap->value(); param.background = paramWidget->backgroundGroup->isChecked(); param.normalize = paramWidget->normalizeGroup->isChecked(); param.normalizeTopMargin = paramWidget->normalizeTopMargin->value(); param.normalizeSideMargin =paramWidget->normalizeSideMargin->value(); param.normalizeWidth = paramWidget->normalizeWidth->value(); param.normalizeHeight = paramWidget->normalizeHeight->value(); param.blueText = paramWidget->blueTextGroup->isChecked(); param.blueTextMin = paramWidget->blueTextMin->value(); param.blueTextMax = paramWidget->blueTextMax->value(); */ mImageProcess->setMasks(mOCRMasks); mImageProcess->run(¶m); //IplImage* cvImage2 = mImageProcess->getProcessedImage(); //QImage* qtImage = ImageAdapter::IplImage2QImage(cvImage2); //imageWidget->setImage(qtImage); //delete paramWidget; }