|
@@ -1,6 +1,7 @@
|
|
|
package gui.simulator;
|
|
package gui.simulator;
|
|
|
|
|
|
|
|
-import gui.simulator.facilities.*;
|
|
|
|
|
|
|
+import gui.simulator.facilities.RestRoom;
|
|
|
|
|
+import gui.simulator.facilities.Stage;
|
|
|
|
|
|
|
|
import java.awt.BasicStroke;
|
|
import java.awt.BasicStroke;
|
|
|
import java.awt.Color;
|
|
import java.awt.Color;
|
|
@@ -16,7 +17,11 @@ import java.awt.event.MouseEvent;
|
|
|
import java.awt.event.MouseMotionAdapter;
|
|
import java.awt.event.MouseMotionAdapter;
|
|
|
import java.awt.event.MouseWheelEvent;
|
|
import java.awt.event.MouseWheelEvent;
|
|
|
import java.awt.event.MouseWheelListener;
|
|
import java.awt.event.MouseWheelListener;
|
|
|
-import java.awt.geom.*;
|
|
|
|
|
|
|
+import java.awt.geom.AffineTransform;
|
|
|
|
|
+import java.awt.geom.Area;
|
|
|
|
|
+import java.awt.geom.NoninvertibleTransformException;
|
|
|
|
|
+import java.awt.geom.Point2D;
|
|
|
|
|
+import java.awt.geom.Rectangle2D;
|
|
|
import java.awt.image.BufferedImage;
|
|
import java.awt.image.BufferedImage;
|
|
|
import java.io.File;
|
|
import java.io.File;
|
|
|
import java.io.IOException;
|
|
import java.io.IOException;
|
|
@@ -33,7 +38,7 @@ public class Terrain extends JPanel {
|
|
|
private Point2D oldPosition;
|
|
private Point2D oldPosition;
|
|
|
private Draw dragObject, selectedObject;
|
|
private Draw dragObject, selectedObject;
|
|
|
private BufferedImage background;
|
|
private BufferedImage background;
|
|
|
-
|
|
|
|
|
|
|
+ private boolean grid;
|
|
|
private int festivallength, festivalwidth;
|
|
private int festivallength, festivalwidth;
|
|
|
private int sideBarWidth = 200;
|
|
private int sideBarWidth = 200;
|
|
|
private SimulatorPane.Terrains terrain;
|
|
private SimulatorPane.Terrains terrain;
|
|
@@ -47,6 +52,7 @@ public class Terrain extends JPanel {
|
|
|
//get values
|
|
//get values
|
|
|
setFestivalLength(length);
|
|
setFestivalLength(length);
|
|
|
setFestivalWidth(width);
|
|
setFestivalWidth(width);
|
|
|
|
|
+ grid = true;
|
|
|
this.terrain = terrain;
|
|
this.terrain = terrain;
|
|
|
//set terrainbackground
|
|
//set terrainbackground
|
|
|
switch(terrain){
|
|
switch(terrain){
|
|
@@ -167,6 +173,7 @@ public class Terrain extends JPanel {
|
|
|
@Override
|
|
@Override
|
|
|
public void mouseWheelMoved(MouseWheelEvent e) {
|
|
public void mouseWheelMoved(MouseWheelEvent e) {
|
|
|
Point2D clickPoint = getClickPoint(e.getPoint());
|
|
Point2D clickPoint = getClickPoint(e.getPoint());
|
|
|
|
|
+ lastMousePosition = e.getPoint();
|
|
|
for(Draw object: entities){
|
|
for(Draw object: entities){
|
|
|
//if object selected, scale object
|
|
//if object selected, scale object
|
|
|
if(object.contains(clickPoint)){
|
|
if(object.contains(clickPoint)){
|
|
@@ -227,15 +234,23 @@ public class Terrain extends JPanel {
|
|
|
TexturePaint p = new TexturePaint(background, new Rectangle2D.Double(0, 0, 200, 200));
|
|
TexturePaint p = new TexturePaint(background, new Rectangle2D.Double(0, 0, 200, 200));
|
|
|
g2.setPaint(p);
|
|
g2.setPaint(p);
|
|
|
g2.fill(new Rectangle2D.Double(0,0,festivalwidth,festivallength));
|
|
g2.fill(new Rectangle2D.Double(0,0,festivalwidth,festivallength));
|
|
|
- for(int i = 0; i < (festivalwidth/100); i++){
|
|
|
|
|
-
|
|
|
|
|
- };
|
|
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
|
|
+ if(grid){
|
|
|
|
|
+ g2.setColor(new Color(160,160,160,120));
|
|
|
|
|
+ g2.setStroke(new BasicStroke(1));
|
|
|
|
|
+ for(int i = 0; i < (getFestivalWidth()/10)+1; i++){
|
|
|
|
|
+ g2.drawLine(i*10, 0, i*10, getFestivalLength());
|
|
|
|
|
+ };
|
|
|
|
|
+ for(int i = 0; i < (getFestivalLength()/10)+1; i++){
|
|
|
|
|
+ g2.drawLine(0, i*10, getFestivalWidth(), i*10);
|
|
|
|
|
+ };
|
|
|
|
|
+ }
|
|
|
for(Draw drawObject: entities){
|
|
for(Draw drawObject: entities){
|
|
|
drawObject.draw(g2);
|
|
drawObject.draw(g2);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
//draw collide boxes
|
|
//draw collide boxes
|
|
|
|
|
+ g2.setColor(Color.RED);
|
|
|
if(this.selectedObject != null){
|
|
if(this.selectedObject != null){
|
|
|
Shape shape = this.selectedObject.getRect();
|
|
Shape shape = this.selectedObject.getRect();
|
|
|
g2.setColor(Color.RED);
|
|
g2.setColor(Color.RED);
|