# Determine if two points are on the same side of a line

pplb used Ask the Experts™
on
I have two points representing a line:
33.792262, -84.305002
33.739889, -84.289553
I also have two points A and B:
A
33.748739, -84.354355
B
33.767649, -84.273760
What I need is a javascript function that will give true/false return if both points are on the same side of the line. If any or both points are on the line then it should return true.
I found this http://j.mp/1of7JUe solution but I need it written as javascript function and I myself don't know javascript programming.

Thank you.
Comment
Watch Question

Do more with

EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®
Principal Systems Engineer
Top Expert 2005
Commented:
<script type="text/javascript">
function Point2D (x,y) {
this.x = x;
this.y = y;
return this;
};

function Vector2D(p1,p2) {
this.x = p2.x-p1.x;
this.y = p2.y-p1.y;
return this;
};

function VectorMath() {
this.dotProduct =function (v1,v2) { var dot= v1.x*v2.x+ v1.y*v2.y; return dot; };
this.normalVector = function (v1) { t=v1.x; v1.x=v1.y; v1.y=-t; return v1; };
};

// Define Points
p1 = new Point2D(33.792262, -84.305002);
p2 = new Point2D(33.739889, -84.289553);
p3 = new Point2D(33.748739, -84.354355);
p4 = new Point2D(33.767649, -84.273760);
// Define Vector for Base line
v1 = new Vector2D(p1,p2);
// Get Normal Vector
v1 = (new VectorMath()).normalVector(v1);
// Define Vector 1st Point to check
v2 = new Vector2D(p1,p3);
// Define Vector 1st Point to check
v3 = new Vector2D(p1,p4);
dot1 = (new VectorMath()).dotProduct (v1,v2);
// Can you get normalized value
dot1 = dot1 /Math.abs(dot1);
dot2 = (new VectorMath()).dotProduct (v1,v3);
// Can you get normalized value
dot2 = dot2 /Math.abs(dot2);
// Same Sign (Points on Same side) or different sign (Points on different side)
if (dot1 == dot2) { alert ('Points on Same Side');} else { alert ('Points are not on same side');}
</script>
Principal Systems Engineer
Top Expert 2005

Commented:
You may look at

http://sylvester.jcoglan.com/docs.html

This is a good library.

Commented:
Thank you.

Do more with

Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.