All Downloads are FREE. Search and download functionalities are using the official Maven repository.

sim.portrayal.network.EdgeDrawInfo2D Maven / Gradle / Ivy

Go to download

MASON is a fast discrete-event multiagent simulation library core in Java, designed to be the foundation for large custom-purpose Java simulations, and also to provide more than enough functionality for many lightweight simulation needs. MASON contains both a model library and an optional suite of visualization tools in 2D and 3D.

The newest version!
/*
  Copyright 2006 by Sean Luke and George Mason University
  Licensed under the Academic Free License version 3.0
  See the file "LICENSE" for more information
*/

package sim.portrayal.network;
import sim.portrayal.*;
import java.awt.geom.*;
import java.awt.*;
import sim.display.*;

/**
   An extension of DrawInfo2D for dealing with edges in visualizing network fields.
*/

public class EdgeDrawInfo2D extends DrawInfo2D
    {
    /** A pre-scaled point to draw to. */
    public Point2D.Double secondPoint;
    
    public EdgeDrawInfo2D(GUIState state, FieldPortrayal2D fieldPortrayal, RectangularShape draw, RectangularShape clip, Point2D.Double secondPoint)
        {
        super(state, fieldPortrayal, draw,clip);
        this.secondPoint = secondPoint;
        }
                
    public EdgeDrawInfo2D(DrawInfo2D other, double translateX, double translateY, Point2D.Double secondPoint)
        {
        super(other, translateX, translateY);
        this.secondPoint = secondPoint;
        }

    public EdgeDrawInfo2D(DrawInfo2D other, Point2D.Double secondPoint)
        {
        super(other);
        this.secondPoint = secondPoint;
        }        

    public EdgeDrawInfo2D(EdgeDrawInfo2D other)
        {
        this(other, new Point2D.Double(other.secondPoint.x, other.secondPoint.y));
        }        

    public String toString() 
        {
        return "EdgeDrawInfo2D[ Draw: " + draw + " Clip: " + clip +  " Precise: " + precise + " Location : " + location + " 2nd: " + secondPoint + "]";
        }
    }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy