%COMP 256 Assignment 3
%Adrian Ilie

function drawline(theta,d,linetype)

if nargin==2
    linetype='-b';
end    
   
if theta==pi/2
    p1y=-1;
    p2y=1;
    p1x=-d;
    p2x=-d;
else
    if theta<pi/2
        p1x=-1;
        p1y=-(sin(theta)*p1x+d)/cos(theta);
        if p1y<-1
            p1y=-1;
            p1x=-(cos(theta)*p1y+d)/sin(theta);
        end
        if p1y>1
            p1y=1;
            p1x=-(cos(theta)*p1y+d)/sin(theta);
        end   
        p2x=1;
        p2y=-(sin(theta)*p2x+d)/cos(theta);
        if p2y>1
            p2y=1;
            p2x=-(cos(theta)*p2y+d)/sin(theta);
        end
        if p2y<-1
            p2y=-1;
            p2x=-(cos(theta)*p2y+d)/sin(theta);
        end   
    else
        p2x=-1;
        p2y=-(sin(theta)*p2x+d)/cos(theta);
        if p2y<-1
            p2y=-1;
            p2x=-(cos(theta)*p2y+d)/sin(theta);
        end
        if p2y>1
            p2y=1;
            p2x=-(cos(theta)*p2y+d)/sin(theta);
        end   
        p1x=1;
        p1y=-(sin(theta)*p1x+d)/cos(theta);
        if p1y>1
            p1y=1;
            p1x=-(cos(theta)*p1y+d)/sin(theta);
        end
        if p1y<-1
            p1y=-1;
            p1x=-(cos(theta)*p1y+d)/sin(theta);
        end   
    end
end

plot([p1x,p2x],[p1y,p2y], linetype);

