#### Overview of this book

Mastering SciPy
Credits
www.PacktPub.com
Preface
Free Chapter
Numerical Linear Algebra
Interpolation and Approximation
Differentiation and Integration
Nonlinear Equations and Optimization
Initial Value Problems for Ordinary Differential Equations
Computational Geometry
Descriptive Statistics
Inference and Data Analysis
Mathematical Imaging
Index

## Plane geometry

The geometry module of the SymPy library covers basic geometry capabilities. Rather than giving an academic description of all objects and properties in that module, we discover the most useful ones through a series of small self-explanatory Python sessions.

We start with the concepts of point and segment. The aim is to illustrate how easily we can check for collinearity, compute lengths, midpoints, or slopes of segments, for example. We also show how to quickly compute the angle between two segments, as well as decide whether a given point belongs to a segment or not. The following diagram illustrates an example, which we will follow up with the code:

In [1]: from sympy.geometry import Point, Segment, Line, \
...:                            Circle, Triangle, Curve
In [2]: P1 = Point(0, 0); \
...: P2 = Point(3, 4); \
...: P3 = Point(2, -1); \
...: P4 = Point(-1, 5)
In [3]: statement = Point.is_collinear(P1, P2, P3); \
...: print "Are P1, P2, P3 collinear?," statement...