void static afficherInfoZombie(sf::RenderWindow& window,Zombie zomb) { sf::View fixed = window.getView(); sf::Texture texture; texture.loadFromFile("./assets/zombie_face.png"); sf::Sprite sprite(texture); sf::RectangleShape boite(sf::Vector2f(60, 40)); boite.setPosition(window.getSize().x - 60, window.getSize().y - 65); boite.setFillColor(sf::Color(0, 0, 0)); window.draw(boite); sprite.setPosition(window.getSize().x - 45, window.getSize().y - 62); window.setView(fixed); window.draw(sprite); sf::Text texteVie; sf::Font font; if (!font.loadFromFile("./assets/arial.ttf")) { std::cout << "Erreur de chargement de la police arial.ttf" << std::endl; } texteVie.setFont(font); texteVie.setCharacterSize(12); texteVie.setColor(sf::Color::White); texteVie.setString(zomb.getNom()); texteVie.setPosition(window.getSize().x - 48, window.getSize().y - 15); window.draw(texteVie); sf::RectangleShape vie(sf::Vector2f(zomb.getVie(), 3)); vie.setPosition(window.getSize().x - 42, window.getSize().y - 25); vie.setFillColor(sf::Color(255, 255, 0)); window.draw(vie); }
boost::shared_ptr<LibraryInterfaceElement> ValueElementList::front() { if (_elements.size() > 0) { boost::shared_ptr<LibraryInterfaceElement> vie(_elements.front()); _elements.pop_front(); return vie; } else return boost::shared_ptr<LibraryInterfaceElement>(); }
float TEFMDataDescription::getExampleWeight(const TExample &example) const { if (example.domain != domain) raiseError("example's domain doesn't match the data descriptor's"); float weight=1.0; TVarList::const_iterator vi(domain->attributes->begin()), vie(domain->attributes->end()); TExample::iterator ei(example.begin()); for(; vi!=vie; ei++, vi++) if ((*ei).isDK() && ((*ei).varType == TValue::INTVAR)) weight /= (*vi)->noOfValues(); return weight; }
float TEFMDataDescription::getExampleMatch(const TExample &ex1, const TExample &ex2) { if ((ex1.domain != domain) && (ex2.domain != domain)) raiseError("example's domain doesn't match the data descriptor's"); float weight=1.0; TExample::iterator e1i(ex1.begin()), e2i(ex2.end()); if (domainDistributions) { if (matchProbabilities.size() != domainDistributions->size()) matchProbabilities = vector<float>(domainDistributions->size(), -1); vector<float>::iterator mi(matchProbabilities.begin()); TDomainDistributions::const_iterator di(domainDistributions->begin()), de(domainDistributions->end()); for(; di!=de; e1i++, e2i++, di++, mi++) { if ((*e1i).varType == TValue::INTVAR) { if ((*e1i).isDK()) { if ((*e2i).isDK()) { if (*mi == -1) { float mp = 0.0; ITERATE(TDiscDistribution, ddi, ((TDiscDistribution &)((*di).getReference()))) mp += *ddi * *ddi; *mi = mp; } weight *= *mi; } else if (!(*e2i).isSpecial()) weight *= (*di)->p(*e2i); } else if ((*e2i).isDK() && !(*e1i).isSpecial()) weight *= (*di)->p(*e1i); } } } else { TVarList::const_iterator vi(domain->attributes->begin()), vie(domain->attributes->end()); for(; vi!=vie; e1i++, e2i++, vi++) if (((*e1i).varType == TValue::INTVAR) && ((*e1i).isDK() && !(*e2i).isSpecial() || (*e2i).isDK() && !(*e1i).isSpecial())) weight /= (*vi)->noOfValues(); } return weight; }
void TExampleForMissing::resetExample() { checkProperty(dataDescription); DCs.clear(); DKs.clear(); float averageWeight=1; TVarList::const_iterator vi(domain->attributes->begin()), vie(domain->attributes->end()); TExample::iterator ei(begin()), bei(ei); vector<float>::const_iterator ai(dataDescription->averages.begin()), aei(dataDescription->averages.end()); for(; vi!=vie; ei++, vi++) { if ((*ei).isSpecial()) { if ((*vi)->varType==TValue::FLOATVAR) *ei=TValue(*ai); else if (dataDescription->missingWeight && (*ei).isDK()) { DKs.push_back(ei-bei); averageWeight/=float((*vi)->noOfValues()); } else DCs.push_back(ei-bei); (*vi)->firstValue(*ei); } if (ai!=aei) ai++; } if (dataDescription->missingWeight) { float weight = dataDescription->originalWeight ? getMeta(dataDescription->originalWeight).floatV : 1; if (dataDescription->domainDistributions) { TDomainDistributions::const_iterator di(dataDescription->domainDistributions->begin()); ITERATE(vector<int>, ci, DKs) { // DKs contain only discrete variables, so it is safe to cast const TDiscDistribution &dist = CAST_TO_DISCDISTRIBUTION(*(di+*ci)); if (dist.abs) weight *= dist.front() / dist.abs; } }
void patientListView::viewPR(){ int out = tableWidget->item(tableWidget->currentRow(), 5)->text().toInt(); emit vie(out); }
void static dessinerHUD(sf::RenderWindow& window, sf::Clock& temps, Joueur j,int manche) { // Boite sf::RectangleShape boite(sf::Vector2f(window.getSize().x -60, 70)); boite.setPosition(0, window.getSize().y - 65); boite.setFillColor(sf::Color(0, 0, 0)); window.draw(boite); // Texte sf::Text kill; sf::Text round; sf::Text munition; sf::Text texteVie; sf::Font font; if (!font.loadFromFile("./assets/arial.ttf")) { std::cout << "Erreur de chargement de la police arial.ttf" << std::endl; } kill.setFont(font); kill.setCharacterSize(12); kill.setColor(sf::Color::Red); kill.setStyle(sf::Text::Bold); kill.setString("KILLS: " + to_string(j.m_kill)); kill.setPosition(window.getSize().x / 2 - 30, 1); window.draw(kill); // Manche round.setFont(font); round.setCharacterSize(14); round.setColor(sf::Color::Red); round.setStyle(sf::Text::Bold); round.setString("MANCHE: " + to_string(manche)); round.setPosition(window.getSize().x / 2 - 30, window.getSize().y - 60); window.draw(round); // Munition munition.setFont(font); munition.setCharacterSize(12); munition.setColor(sf::Color::White); munition.setStyle(sf::Text::Bold); munition.setString("P226: " + to_string(j.getMunition()) + " / UNL"); munition.setPosition(50, window.getSize().y - 35); window.draw(munition); // La vie sf::RectangleShape vie(sf::Vector2f(j.getVie() * 1.5, 7)); vie.setPosition(32, window.getSize().y - 50); vie.setFillColor(sf::Color(255, 0, 0)); window.draw(vie); // image sf::Texture texture_joueur; texture_joueur.loadFromFile("./assets/player_face.png"); sf::Sprite sprite_joueur(texture_joueur); sprite_joueur.setPosition(7, window.getSize().y - 65); window.draw(sprite_joueur); // Le temps sf::Text chrono; chrono.setFont(font); chrono.setCharacterSize(15); chrono.setColor(sf::Color::White); chrono.setStyle(sf::Text::Bold); int time = int(temps.getElapsedTime().asSeconds()); int minutes = time / 60; int secondes = time; if (secondes >= 60) { int retirer = 60 * minutes; secondes = time - retirer; } chrono.setString(to_string(minutes) + " : " + to_string(secondes)); chrono.setPosition(window.getSize().x / 2, window.getSize().y - 25); window.draw(chrono); }