toolbar icons and many more things
git-svn-id: http://svn.lsim.tuxzone.org/trunk@24 4bec179b-ab65-46ed-a5f8-55b8b5c735d0
This commit is contained in:
@@ -39,12 +39,8 @@
|
||||
#include <QListWidget>
|
||||
|
||||
|
||||
|
||||
SimulScene::SimulScene ( QObject* parent ) : QGraphicsScene ( parent ) {
|
||||
//variablen initialisieren
|
||||
setTimePerStep(1e-10);
|
||||
setSteps(300000);
|
||||
//setMeterPerPx(1/1000.0);
|
||||
setMeterPerPx(0.01);
|
||||
|
||||
fieldListWidget = new QListWidget();
|
||||
|
||||
@@ -71,7 +67,7 @@ SimulScene::SimulScene ( QObject* parent ) : QGraphicsScene ( parent ) {
|
||||
for (int i = -39; i< 39; ++i) {
|
||||
if(i!=0) {
|
||||
QGraphicsLineItem *line = addLine(i*10,-298,i*10,298,QPen(Qt::lightGray, 1, Qt::DotLine) );
|
||||
line ->setCacheMode(QGraphicsItem::DeviceCoordinateCache);
|
||||
line->setCacheMode(QGraphicsItem::DeviceCoordinateCache);
|
||||
line->setZValue(-1);
|
||||
}
|
||||
}
|
||||
@@ -88,24 +84,40 @@ SimulScene::SimulScene ( QObject* parent ) : QGraphicsScene ( parent ) {
|
||||
ellipse1->setPen(Qt::NoPen);
|
||||
ellipse1->setBrush(Qt::red);
|
||||
ellipse1->setZValue(200);
|
||||
//ellipse1->scale(4,4);
|
||||
ellipse1->setAcceptDrops(true);
|
||||
//ellipse1->scale(0.25,0.25);
|
||||
connect(this,SIGNAL(changed(QList<QRectF>)),ellipse1,SLOT(handleSceneChange(QList<QRectF>)));
|
||||
|
||||
|
||||
addItem(ellipse1);
|
||||
|
||||
timer = new QTimeLine( 30000);
|
||||
//qDebug()<< (200e-3/8.0e+6) *1000 * 2e+8;
|
||||
timer->setFrameRange(0,100);
|
||||
timer->setUpdateInterval(25);
|
||||
timer = new QTimeLine(1);
|
||||
timer->setCurveShape(QTimeLine::LinearCurve);
|
||||
//timer->toggleDirection();
|
||||
ani = new QGraphicsItemAnimation();
|
||||
ani->setItem(ellipse1);
|
||||
ani->setTimeLine(timer);
|
||||
|
||||
connect( timer, SIGNAL(finished()), this, SIGNAL(timeLineInRunningState()) );
|
||||
|
||||
setupVars();
|
||||
|
||||
}
|
||||
|
||||
void SimulScene::setupVars() {
|
||||
//variablen initialisieren
|
||||
setTimePerStep(1e-10);
|
||||
setSteps(300000);
|
||||
//setMeterPerPx(1/1000.0);
|
||||
setMeterPerPx(0.01);
|
||||
|
||||
timer->setFrameRange(0,100);
|
||||
timer->setUpdateInterval(30);
|
||||
timer->setCurveShape(QTimeLine::LinearCurve);
|
||||
|
||||
setTimeLineDuration(30000);
|
||||
setFlightPathVisible(true);
|
||||
|
||||
|
||||
}
|
||||
|
||||
void SimulScene::startTimer() {
|
||||
@@ -116,6 +128,17 @@ void SimulScene::startTimer() {
|
||||
void SimulScene::stopTimer() {
|
||||
timer->setCurrentTime(0);
|
||||
timer->stop();
|
||||
emit timeLineInRunningState(false);
|
||||
}
|
||||
|
||||
|
||||
void SimulScene::pauseTimer(bool yesno) {
|
||||
if (yesno) timer->stop();
|
||||
else timer->start();
|
||||
}
|
||||
|
||||
void SimulScene::startPauseTimer(bool yesno) {
|
||||
pauseTimer(!yesno);
|
||||
}
|
||||
|
||||
void SimulScene::mousePressEvent(QGraphicsSceneMouseEvent *mouseEvent) {
|
||||
@@ -1048,3 +1071,14 @@ GraphicsEllipseItem* SimulScene::getProbeChargeItem() {
|
||||
void SimulScene::clearFlightPath() {
|
||||
pathItem1->setPath(QPainterPath());
|
||||
}
|
||||
|
||||
void SimulScene::resetScene() {
|
||||
//Alle felder Entfernen
|
||||
QList<QGraphicsItem*> currItems = items();
|
||||
for (int i = 0; i<currItems.count();++i)
|
||||
if(FieldItem::isFieldItem(currItems.at(i)) )
|
||||
delete currItems.at(i);
|
||||
|
||||
setupVars();
|
||||
ellipse1->resetProbe();
|
||||
}
|
||||
Reference in New Issue
Block a user