Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- X = np.random.rand(10,2)
- X = X[np.argsort(X[:,0],0)]
- O = np.zeros((0,2))
- n = X.shape[0]
- l = np.argmax(X[:,0])
- p = l + 0
- for i in range(n-1):
- O=np.vstack([O,X[p]])
- q=(p+1) % n
- for j in range(n):
- bool = (((X[q][1]-X[p][1]) * (X[j][0] - X[q][0]) - (X[q][0]-X[p][0]) * (X[j][1]-X[q][1])) < 0)
- q = np.where(bool, j, q)
- p=np.where(q==l,q-1,q)
- area = 0.5*np.abs(np.dot(O[:,0],np.roll(O[:,1],1))-np.dot(O[:,1],np.roll(O[:,0],1)))
- H = X[ConvexHull(X).vertices]
- harea = ConvexHull(X).volume
- print(harea)
- print(area)
Advertisement
Add Comment
Please, Sign In to add comment