package nl.tudelft.bw4t.client.controller.percept.processors; import java.awt.geom.Point2D; import java.util.List; import nl.tudelft.bw4t.client.controller.ClientMapController; import nl.tudelft.bw4t.map.view.ViewBlock; import nl.tudelft.bw4t.map.view.ViewEPartner; import nl.tudelft.bw4t.map.view.ViewEntity; import eis.iilang.Numeral; import eis.iilang.Parameter; public class PositionProcessor implements PerceptProcessor { @Override public void process(List<Parameter> parameters, ClientMapController clientMapController) { long id = ((Numeral) parameters.get(0)).getValue().longValue(); double x = ((Numeral) parameters.get(1)).getValue().doubleValue(); double y = ((Numeral) parameters.get(2)).getValue().doubleValue(); ViewBlock b = clientMapController.getBlock(id); b.setPosition(new Point2D.Double(x, y)); ViewEPartner ep = clientMapController.getKnownEPartner(id); if (ep != null) { ep.setLocation(b.getPosition()); } else { ViewEntity bot = clientMapController.getKnownRobot(id); if (bot != null) { bot.setLocation(b.getPosition()); clientMapController.addVisibleRobot(bot); } } } }