void Widget::spawncirc(QPoint coord){ int A = rand()%100+30; double d = A*scale; QRectF Itemrect(coord.x(),coord.y(),d/scale,d/scale); QGraphicsItem* item = scene->addEllipse(Itemrect); item->setTransformOriginPoint(d/scale/2,d/scale/2); QGraphicsRectItem* temp = new QGraphicsRectItem(coord.x()*scale,coord.y()*scale,d,d); temp->setTransformOriginPoint(d/2,d/2); circle* circ = new circle(temp,coord.x()*scale+d/2,coord.y()*scale+d/2, item,d/2); next = next->addToList(NULL, NULL, circ); }
void Widget::spawnrect(QPointF coord){ int A = rand()%100+30; double a = A*scale; int B = rand()%100+30; double b = B*scale; QRectF Itemrect(coord.x(),coord.y(),A,B); QGraphicsItem* item = scene->addRect(Itemrect); item->setTransformOriginPoint(A/2,B/2); QGraphicsRectItem* temp = new QGraphicsRectItem(coord.x()*scale,coord.y()*scale,a,b); temp->setTransformOriginPoint(a/2,b/2); rectangle* ret = new rectangle(temp,coord.x()*scale+a/2,coord.y()*scale+b/2, item,false,a,b); next = next->addToList(ret); }
void Widget::placeborders(){ double P=500,Q=300; QRectF lol2(P,Q,50,100); QGraphicsItem* lol = scene->addRect(lol2); lol->setTransformOriginPoint(P+25,Q+50); lol->setRotation(45); QGraphicsRectItem* lolI = new QGraphicsRectItem(P*scale,Q*scale,50*scale,100*scale); lolI->setTransformOriginPoint((P+25)*scale,(Q+50)*scale); lolI->setRotation(45); lol->setVisible(true); next = next->addToList(new rectangle(lolI,(P+25)*scale,(Q+50)*scale, lol,true,50*scale,100*scale)); QRectF top(0,0,990,10); QRectF left(0,0,10,690); QRectF right(980,0,10,690); QRectF bottom(0,680,990,10); QGraphicsRectItem* Rtop = new QGraphicsRectItem(0*scale,0*scale,990*scale,10*scale); QGraphicsRectItem* Rleft = new QGraphicsRectItem(0*scale,0*scale,10*scale,690*scale); QGraphicsRectItem* Rright = new QGraphicsRectItem(980*scale,0*scale,10*scale,690*scale); QGraphicsRectItem* Rbottom = new QGraphicsRectItem(0*scale,680*scale,990*scale,10*scale); QGraphicsItem* itop = scene->addRect(top); itop->setVisible(true); QGraphicsItem* ileft = scene->addRect(left); ileft->setVisible(true); QGraphicsItem* iright = scene->addRect(right); iright->setVisible(true); QGraphicsItem* ibottom = scene->addRect(bottom); ibottom->setVisible(true); next = next->addToList(new rectangle(Rtop,990/2*scale,5*scale, itop,true,990*scale,10*scale)); next = next->addToList(new rectangle(Rleft,5*scale,690/2*scale, ileft,true,10*scale,690*scale)); next = next->addToList(new rectangle(Rright,985*scale,690/2*scale, iright,true,10*scale,690*scale)); next = next->addToList(new rectangle(Rbottom,990/2*scale,685*scale, ibottom,true,990*scale,10*scale)); }