27 lines
827 B
C++
27 lines
827 B
C++
|
|
#include <iostream>
|
|
#include <QPainter>
|
|
#include "agentitem.h"
|
|
|
|
AgentItem::AgentItem(Agent *ag, QColor col) :
|
|
agent(ag), color(col){
|
|
}
|
|
QRectF AgentItem::boundingRect()const {
|
|
int radius = agent->getRadius();
|
|
return QRectF(-radius, -radius, 2*radius, 2*radius);
|
|
}
|
|
void AgentItem::paint(QPainter * painter, const QStyleOptionGraphicsItem *option,
|
|
QWidget *widget){
|
|
int radius = agent->getRadius();
|
|
painter->setBrush(color);
|
|
painter->drawEllipse(-radius, -radius, 2*radius, 2*radius);
|
|
}
|
|
|
|
/*
|
|
* Событие: обновление текущих координат
|
|
*/
|
|
void AgentItem::agentEvent(){
|
|
//std::cout << "coordX: " << agent->getCoordX() << " coordY: " << agent->getCoordY() << std::endl;
|
|
setPos(agent->getCoordX(), agent->getCoordY());
|
|
}
|