Former-commit-id:a02aeb236c
[formerly9f19e3f712
] [formerlya02aeb236c
[formerly9f19e3f712
] [formerly06a8b51d6d
[formerly 64fa9254b946eae7e61bbc3f513b7c3696c4f54f]]] Former-commit-id:06a8b51d6d
Former-commit-id:8e80217e59
[formerly3360eb6c5f
] Former-commit-id:377dcd10b9
35 lines
838 B
Python
Executable file
35 lines
838 B
Python
Executable file
"""
|
|
Make a compund path -- in this case two simple polygons, a rectangle
|
|
and a triangle. Use CLOSEOPOLY and MOVETO for the different parts of
|
|
the compound path
|
|
"""
|
|
import numpy as np
|
|
from matplotlib.path import Path
|
|
from matplotlib.patches import PathPatch
|
|
import matplotlib.pyplot as plt
|
|
|
|
|
|
vertices = []
|
|
codes = []
|
|
|
|
codes = [Path.MOVETO] + [Path.LINETO]*3 + [Path.CLOSEPOLY]
|
|
vertices = [(1,1), (1,2), (2, 2), (2, 1), (0,0)]
|
|
|
|
codes += [Path.MOVETO] + [Path.LINETO]*2 + [Path.CLOSEPOLY]
|
|
vertices += [(4,4), (5,5), (5, 4), (0,0)]
|
|
|
|
vertices = np.array(vertices, float)
|
|
path = Path(vertices, codes)
|
|
|
|
pathpatch = PathPatch(path, facecolor='red', edgecolor='green')
|
|
|
|
fig = plt.figure()
|
|
ax = fig.add_subplot(111)
|
|
ax.add_patch(pathpatch)
|
|
ax.set_title('A compound path')
|
|
|
|
ax.dataLim.update_from_data_xy(vertices)
|
|
ax.autoscale_view()
|
|
|
|
|
|
plt.show()
|