Is there a way to check for objects on a given line?
public List getObjectsOnLine(Point P1, Point P2,Class clss)
{
double
EX=P1.getX(),
EY=P1.getY(),
XB=P2.getX(),
YB=P2.getY();
int
i_AX=getX(),
i_AY=getY(),
i_Rot=getRotation();
setLocation((int)((EX+XB)/2),(int)((EY+YB)/2));
GreenfootImage
i = getImage(),
ColImage = new GreenfootImage((int)(getDistance(EX,XB,EY,YB)+0.5),1);
setImage(ColImage);
setRotation((int)getDegreesToFrom(XB,YB,EX,EY));
List List_Class_ = getIntersectingObjects(clss);
setRotation(i_Rot);
setLocation(i_AX,i_AY);
setImage(i);
return List_Class_;
}
public static double getDistance(double x1,double x2, double y1,double y2)
{
return Math.hypot(x2-x1,y2-y1);
}
public double getDegreesToFrom(double x1, double y1,double x,double y)
{
return Math.toDegrees(Math.atan2(y1-y,x1-x));
}