package org.lucci.madhoc.gui.aircraft;
import java.awt.Dimension;
import java.util.ConcurrentModificationException;
import org.lucci.up.Graphics2DPlotter;
import org.lucci.up.InteractiveSwingPlotter;
import org.lucci.up.system.Space;
public class AirCraftViewPlotter extends InteractiveSwingPlotter
{
public AirCraftViewPlotter(final AircraftView view)
{
setGraphics2DPlotter(new Graphics2DPlotter()
{
public void updateFigureRightBeforePainting()
{
try
{
setFigure(view.createNetworkFigure(view.getMonitor().getNetwork()));
}
catch (ConcurrentModificationException ex)
{
System.err.println("The connection graph showed in the aircraft view might have non-represented links (only for this iteration).");
}
}
});
Space space = getGraphics2DPlotter().getSpace();
space.getXDimension().setBorder(0.05);
space.getYDimension().setBorder(0.05);
space.getXDimension().setBounds(0, view.getMonitor().getNetwork().getNetworkEnvironment().getGrid().getEdgeLenght());
space.getYDimension().setBounds(0, view.getMonitor().getNetwork().getNetworkEnvironment().getGrid().getEdgeLenght());
space.getXDimension().getLegend().setVisible(false);
space.getYDimension().getLegend().setVisible(false);
space.getXDimension().getLowerBoundAxis().setVisible(false);
space.getXDimension().getOriginAxis().setVisible(false);
space.getYDimension().getLowerBoundAxis().setVisible(false);
space.getYDimension().getOriginAxis().setVisible(false);
space.getLegend().setVisible(false);
space.getXDimension().getUpperBoundAxis().getLine().getArrow().setVisible(false);
setImageBufferedUsed(true);
}
public Dimension getPreferredSize()
{
Dimension dimension = (Dimension) getParent().getSize().clone();
if (dimension.height < dimension.width)
{
dimension.width = dimension.height;
}
else
{
dimension.height = dimension.width;
}
return dimension;
}
}