Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import matplotlib.pyplot as plt
- def segments(p0, p1, num_steps):
- """return some number of evenly spaced points beetween p0 and p1"""
- def interpolate(a,b,f):
- return a + (b-a)*f
- def interpolate_2d(p0, p1, f):
- return (interpolate(p0[0],p1[0], f), interpolate(p0[1], p1[1], f))
- return [interpolate_2d(p0, p1, i/num_steps) for i in range(num_steps)]
- corners = [(0,3), (1,5), (3,3), (2,1)]
- range_points = segments(corners[0], corners[1], 10) + segments(corners[2], corners[3], 10)
- row_points = segments(corners[1], corners[2], 30) + segments(corners[3], corners[0], 30)
- fig, axs = plt.subplots(1,1, figsize=(10,10))
- axs.plot([i[0] for i in corners], [i[1] for i in corners], 'o')
- axs.plot([i[0] for i in range_points], [i[1] for i in range_points], 'o')
- axs.plot([i[0] for i in row_points], [i[1] for i in row_points], 'o')
- plt.show()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement