저는 파이썬에서 볼록 레이어를 생성하려고 시도하고있는 포인트 목록을 가지고 있습니다.점 집합으로부터 볼록 레이어를 생성하기위한 효율적인 알고리즘
현재 단순히 다음 사용하고 있습니다 : 볼록은 한 번에 하나의 선체 만들 그냥
def convex_layers(points):
points = sorted(set(points))
layers = []
while points:
#Create the next convex hull
hull = convex_hull(points)
#Create the new list of points
for point in hull:
points.remove(point)
#Update the list of layers
layers.append(hull)
return layers
합니다. 작동하는 동안 반복되는 추가로 간단히 번식하려고하는 것처럼 보입니다. 그래서 내가 바라는 점은 점 집합에서 볼록 레이어를 생성하기위한보다 효율적인 알고리즘이있는 경우입니다.
약 10 분 전에 생각한만큼 흥미로운 점이 많습니다. 그래서 당신이 말하는 것은 현재 행해지고있는 일입니다. 아마 이미 가능한 한 잘 돌아 다니고있을 것입니다. 게시물은 이것을 반영하여 업데이트되었습니다. – Nuclearman
그렇다면 내 대답을 수락하는 것이 적절할 수 있습니다. 감사. – Gene
사실입니다. 여전히 생각하고 있지만 각 레이어의 나머지 모든 점을 계속 따라 가야하므로 효율성을 높일 수있는 방법이 있어야합니다. 그래도 큰 개선은 아닐 것입니다. – Nuclearman