2012-09-27 3 views
0

나는 이것을위한 최선의 해결책에 대해 며칠 동안 생각해 왔지만 이것을 수행하는 방법에 대한 올바른 아이디어를 얻을 수없는 것처럼 보입니다.개체/모양/피스 피팅

나는 조각 (물체)을 가지고 있으며 가능한 한 가장 작은 공간에 그것들을 넣고 싶습니다. 내가 궁극적으로 찾고 있어요는이

http://i.stack.imgur.com/Yg09E.gif

같은 그러나 두 라인 (줄무늬)의 최적의 착용감을 계산하는 간단한 버전이 이미 지금 라인 (줄무늬) 등을 위해 할 것입니다 오른쪽에 내가 무엇을 가지고

http://i.stack.imgur.com/HijMo.jpg

두 개의 라인 (줄무늬)를 나타내는 XY 축에 포인트 2 개 배열 (정점) 내가이되도록을 마련하고자 10 클로이 사이의 공간 20 mm 그 둘의 sest point.

배열의 전반부를보고 가장 높은 지점을 찾은 다음 두 번째 절반을보고 가장 높은 지점을 찾은 다음 두 가지를 비교해보십시오.하지만 실제로는 적절한 해결책으로 보이지 않습니다.

그리고 첫 번째 이미지 에서처럼 모양에 맞는 프로그램을 작성하는 것도 이러한 방법을 사용하여 가능하다고 상상할 수 없습니다.

나를 올바른 방향으로 인도 할 수있는 사람이 있습니까?

+1

일반적으로 이것은 하드 (NP) 문제입니다. 모든 경우에 적용되는 쉽고 빠른 솔루션이 없습니다. 그럼에도 불구하고 합리적인 단순화 및 경험적 발견을 찾을 수 있습니다. –

답변

0

글쎄, 이것은 실제로 가능합니다.

빌드 영역 및 거리 기능 만 있으면됩니다. 서로 다른 종류의 모양에 대해 서로 다른 알고리즘을 추가해야 할 수도 있습니다.

첫 번째 그림에서 제공 한 사람들은 면적을 계산하기가 어렵습니다. 그래서, 아마도 정점의 거리를 지정해야합니다. 또한 모양의 궤적이 어느 시점에서든 일치하지 않도록 조건을 추가해야합니다.

+0

별로 대답이 아닌 것 같습니다. –