Mercurial > hg > orthanc-stone
diff OrthancStone/Resources/Computations/IntersectSegmentAndHorizontalLine.py @ 1512:244ad1e4e76a
reorganization of folders
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Tue, 07 Jul 2020 16:21:02 +0200 |
parents | Resources/Computations/IntersectSegmentAndHorizontalLine.py@35c2b85836ce |
children | 8c5f9864545f |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/OrthancStone/Resources/Computations/IntersectSegmentAndHorizontalLine.py Tue Jul 07 16:21:02 2020 +0200 @@ -0,0 +1,21 @@ +#!/usr/bin/env python + +from sympy import * + +# Intersection between the 2D line segment (prevX,prevY)-(curX,curY) and the +# horizontal line "y = y0" using homogeneous coordinates + +prevX, prevY, curX, curY, y0 = symbols('prevX prevY curX curY y0') + +p1 = Matrix([prevX, prevY, 1]) +p2 = Matrix([curX, curY, 1]) +l1 = p1.cross(p2) + +h1 = Matrix([0, y0, 1]) +h2 = Matrix([1, y0, 1]) +l2 = h1.cross(h2) + +a = l1.cross(l2) + +#pprint(cse(a/a[2], symbols = symbols('a b'))) +pprint(a / a[2])