public double[] getIntersection(Line l){
		double [] retArr = new double[2];
		if ((_x == l.getSlope() && _y == l.getYCoefficient()) || (_y == 0 && l.getYCoefficient() == 0)){
			return null;
		}
		else{
			convertToSlopeIntersect();
			l.convertToSlopeIntersect();

			if (l.getYCoefficient() == 0){
				retArr[0] = -1 * l.getConstant();
				retArr[1] = _x * retArr[0] + _c;
				return retArr;
			}
			else if (_y == 0){
				retArr[0] = -1 * _c;
				retArr[1] = l.getSlope() * retArr[0] + l.getConstant();
				return retArr;
			}
			double xOfLHS = _x;
			double cOfLHS = _c;
			double xOfRHS = l.getSlope();
			double cOfRHS = l.getConstant();
			xOfLHS -= xOfRHS; // Move all x terms to LHS
			xOfRHS = 0; // Move all x terms to LHS
			cOfRHS -= cOfLHS; // Move all constant terms to RHS
			cOfLHS = 0; // Move all constant terms to RHS
			cOfRHS /= xOfLHS; // Solve for x by dividing on both sides
			xOfLHS = 1;  
			// x coordinate of intersection is found
			retArr[0] = cOfRHS;
			retArr[1] = _x * cOfRHS + _c;
		}
		return retArr;
	}