컨테이너 내부에 임의의 사각형 (폭과 높이로 정의 됨)을 무작위로 배포하는 알고리즘을 찾고 있습니다. 구형. 나중에는 크기에 의해 정의되는 것이 아니라 가로 세로 비율에 의해 정의됩니다. 결과의 밀도를 결정하는 또 다른 변수가 있어야합니다. 즉, 두 개의 직사각형의 평균 거리. 컨테이너의 크기가 제한되어 있지 않기 때문에 가능한 모든 사각형을 배치해야합니다. 그리고 어떤 직사각형도 겹치지 않아야합니다.가변 크기의 평면에 다양한 크기의 사각형을 무작위로 배포합니다 (밀도를 고려하여)
최종 결과는 각 사각형의 결정된 위치와 사용 된 평면 자체의 크기 여야합니다.
불행히도, 지금까지이 알고리즘이나 그 일부를 수행하는 알고리즘을 찾을 수 없었습니다. 나는 어떤 제안, 코멘트 또는 참고 사항을 주시면 감사하겠습니다! 주된 문제는 "여유 공간"의 목록을 추적하는 것이고 각 공간 배치 후에 그에 따라 업데이트된다는 것이 밝혀졌습니다.
내가 필요한 경우, 주어진 사각형은 완전히 랜덤하게 형성되지 않습니다. 그것들은 거의 같은 높이를 가지고 있으며, 높이보다 훨씬 더 넓어지는 경향이 있습니다. 이것은 비행기를 통해 "구름"으로 배포되어야하는 텍스트에서 나온 단어입니다.
저는 가운데 맞춤 단일 간격 텍스트부터 시작합니다. 그런 다음 단어를 밖으로 나눕니다. 원형, 타원형, 직사각형, 무지개 등 다양한 효과를 내기 위해 다양한 스프레드 공식을 사용할 수 있습니다. 그러나 일반적인 생각은 항상 동일합니다. 단어가 중심점에서 멀수록 멀어 질수록 이동해야합니다. – user3386109