diff --git a/src/de/tud/kom/p2psim/impl/topology/movement/modularosm/attraction/AttractionPoint.java b/src/de/tud/kom/p2psim/impl/topology/movement/modularosm/attraction/AttractionPoint.java index f0eb04f6e8bae48b1a3290b3860ceb2b0e9b0667..aef9320b1feb0c8892b38f5a45ebaa62b78071df 100644 --- a/src/de/tud/kom/p2psim/impl/topology/movement/modularosm/attraction/AttractionPoint.java +++ b/src/de/tud/kom/p2psim/impl/topology/movement/modularosm/attraction/AttractionPoint.java @@ -63,6 +63,11 @@ public class AttractionPoint extends BasicAttractionPoint { Monitor.getOrNull(IAttractionBasedMovementAnalyzer.class).onAttractionPointAdded(this); } } + + public AttractionPoint(String name, PositionVector posVec, double radius) { + this(name, posVec); + this.radius = radius; + } public AttractionPoint(String name, PositionVector posVec, double weight, double radius, long pauseTimeMin, long pauseTimeMax) { this(name, posVec); diff --git a/src/de/tud/kom/p2psim/impl/topology/movement/modularosm/attraction/EquidistantSquareAttractionGenerator.java b/src/de/tud/kom/p2psim/impl/topology/movement/modularosm/attraction/EquidistantSquareAttractionGenerator.java index 11113ba7168d60ea805aa8f8ae83ec7d8fa2f082..26cef66b10c708a2a52bbd4ac29fd753bde63bdc 100644 --- a/src/de/tud/kom/p2psim/impl/topology/movement/modularosm/attraction/EquidistantSquareAttractionGenerator.java +++ b/src/de/tud/kom/p2psim/impl/topology/movement/modularosm/attraction/EquidistantSquareAttractionGenerator.java @@ -21,24 +21,24 @@ package de.tud.kom.p2psim.impl.topology.movement.modularosm.attraction; import java.util.LinkedList; -import java.util.List; import de.tud.kom.p2psim.impl.topology.util.PositionVector; import de.tudarmstadt.maki.simonstrator.api.util.XMLConfigurableConstructor; /** - * Attraction Generator, providing 4 equidistant attraction points, i.e., in a square + * Attraction Generator, providing 4 equidistant attraction points, i.e., in a square. * * @author Julian Zobel * @version 1.0, Nov 2018 */ public class EquidistantSquareAttractionGenerator extends AbstractAttractionProvider { - - private PositionVector worldDimension; + private double squareSize; + private double radius; - @XMLConfigurableConstructor({ "squareSize" }) - public EquidistantSquareAttractionGenerator(double squareSize) { + @XMLConfigurableConstructor({ "squareSize", "radius" }) + public EquidistantSquareAttractionGenerator(double squareSize, double radius) { this.squareSize = squareSize; + this.radius = radius; createAttractionPoints(); } @@ -56,16 +56,16 @@ public class EquidistantSquareAttractionGenerator extends AbstractAttractionProv double y = worldDimension.getY() / 2; PositionVector p1 = new PositionVector(x - squareSize, y - squareSize); - this.addAttractionPoint(new AttractionPoint("AP1", p1)); + this.addAttractionPoint(new AttractionPoint("AP1", p1, radius)); PositionVector p2 = new PositionVector(x - squareSize, y + squareSize); - this.addAttractionPoint(new AttractionPoint("AP2", p2)); + this.addAttractionPoint(new AttractionPoint("AP2", p2, radius)); PositionVector p3 = new PositionVector(x + squareSize, y - squareSize); - this.addAttractionPoint(new AttractionPoint("AP3", p3)); + this.addAttractionPoint(new AttractionPoint("AP3", p3, radius)); PositionVector p4 = new PositionVector(x + squareSize, y + squareSize); - this.addAttractionPoint(new AttractionPoint("AP4", p4)); + this.addAttractionPoint(new AttractionPoint("AP4", p4, radius)); }