Okay, trying that again.
Here's what I've come up with:
L = thisComp.layer("Null 1");
controlPoint = fromComp(L.toComp(L.transform.anchorPoint)); //sub in target point here
theta = (effect("Linear Wipe")("Wipe Angle")+100000*360)%360; //get angle
m = Math.tan(degreesToRadians(theta))*source.pixelAspect; //get slope of line defined by wipe
//get determinates for anchor line
if(theta < 90) {
a1 = [0, height];
a2 = [width, 0];
} else if(theta < 180) { a1 = [0, 0];
a2= [width, height];
} else if(theta < 270){
a2 = [0, height];
a1 = [width, 0];
} else {
a2 = [0, 0];
a1= [width, height];
}
//get determinates for wipe line
b1 = controlPoint;
b2 = b1+[1/m, 1]
//define individual variables for (slightly better) readability
x1 = a1[0]; y1 = a1[1]; x2 = a2[0]; y2 = a2[1]; x3 = b1[0]; y3 = b1[1]; x4 = b2[0]; y4 = b2[1];
//get point of intersection (this was transcribed straight from <http://en.wikipedia.org/wiki/Line-line_intersection)>
P = [ ( (x1*y2-y1*x2)*(x3-x4)-(x1-x2)*(x3*y4-y3*x4) ) / ( (x1-x2)*(y3-y4)-(y1-y2)*(x3-x4) ) , ( (x1*y2-y1*x2)*(y3-y4)-(y1-y2)*(x3*y4-y3*x4) ) / ( (x1-x2)*(y3-y4)-(y1-y2)*(x3-x4) ) ]
if(length(P, a2) < length(a2, a1)) linear(length(P, a1), 0, length(a1, a2), 0, 100) //now turn the point of intersection into a percentage else 0
Sub in your layer name for "Null 1", or make your own assignment to controlPoint.