Mercurial > hg > nsaunier > traffic-intelligence
annotate scripts/examples.sql @ 372:349eb1e09f45
Cleaned the methods/functions indicating if a point is in a polygon
In general, shapely should be used, especially for lots of points:
from shapely.geometry import Polygon, Point
poly = Polygon(array([[0,0],[0,1],[1,1],[1,0]]))
p = Point(0.5,0.5)
poly.contains(p) -> returns True
poly.contains(Point(-1,-1)) -> returns False
You can convert a moving.Point to a shapely point: p = moving.Point(1,2) p.asShapely() returns the equivalent shapely point
If you have several points to test, use moving.pointsInPolygon(points, polygon) where points are moving.Point and polygon is a shapely polygon.
| author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
|---|---|
| date | Tue, 16 Jul 2013 17:00:17 -0400 |
| parents | d44eba0db517 |
| children |
| rev | line source |
|---|---|
|
367
d44eba0db517
creating a file with SQL code samples
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
1 |
|
d44eba0db517
creating a file with SQL code samples
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
2 |
|
d44eba0db517
creating a file with SQL code samples
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
3 # get object id, first and last frame numbers, length and number of features |
|
d44eba0db517
creating a file with SQL code samples
Nicolas Saunier <nicolas.saunier@polymtl.ca>
parents:
diff
changeset
|
4 select OF.object_id, min(P.frame_number) as frame1, max(P.frame_number) as frame2, max(P.frame_number)-min(P.frame_number) as length, count(OF.trajectory_id) as nfeatures from positions P, objects_features OF where P.trajectory_id = OF.trajectory_id group by OF.object_id order by nfeatures asc; |
