좋은 하루 All,델파이 - 다음 요소를 그리는 프로그래밍 알고리즘
"그래픽"방식으로웨어 하우스와 유사한 프로그램을 개발 중입니다. 표현은 아주 기본적인 내가 사용하고 있습니다 : 1. TGroupBox (같은 부모 컨테이너) 2. TPanel과 (부모 컨테이너 일명 "창고"의 선반으로
내가 도움이 필요 도전 합니다.. 그리기 시작을위한 다음 포인트를 결정하는 방법은 무엇입니까? 지금까지 코드는 2 개의 그룹 박스만으로도 잘 작동하지만 인텔리전트 알고리즘이나 다음 포인트 계산 방법이 필요합니다. 캔버스를 사용하여 창고 그리기
픽셀을 스캔하여 픽셀을 스캔하고 다른 구성 요소를 확인하면됩니다. 도움이 될 수있는 좀 더 똑똑한 알고리즘이어야합니다.
또한 Groupbox는 직사각형, 정사각형 일 수 있습니다. IOW : 높이 & 너비가 다를 수 있습니다.
어떻게하면됩니까?
EDIT1 : 미안하지만 설명이 부족할 수 있습니다. 나는 그들 자신을 그리지 않고있다. 코드에서 코드를 생성하고 동적으로 배치합니다. 불행히도 평판 포인트가 너무 낮아 사진을 게시 할 수 없습니다. 나는 더 잘 설명하려고 노력할 것이다. 3 개의 창고가 있다고 가정 해 보겠습니다. 창고 1에는 2 개의 행과 3 개의 열 (선반)이 있습니다. 창고 2에는 20 개의 행과 5 개의 열이 있습니다. 코드에서 Warehouse 1 (Groupbox Component)을 생성하고, 상위 컨트롤의 0, 0 위치에 배치했습니다. 창고 2는 이제 창고 1의 오른쪽 또는 아래쪽으로 만들 수 있습니다. 부모님이 사용할 수있는 열린 공간의 관점에서 가장 잘 이해되는 부분 (화면 부동산)에 따라. 또한 Warehouse 3의 경우, 코드에서 부모 컨테이너에 배치 할 위치를 어떻게 결정할 수 있습니까? 위치? 그리고 분명히 나는 항상 다음 창고를 이전 창고의 바닥에 그릴 것이라고 생각하지 않습니다. 예전의 창고는 예를 들어 - 단지 1 행과 1 선반 만 포함 할 수 있으므로 크기가 매우 작아서 다음 창고를 올바르게 그리는 것이 타당합니다. 그러나 이전 창고의 너비가 큰 경우 다음 창고를 바닥에 그려야합니다. 당신이 좋은 답을 찾을 수 없습니다 경우
http://www.programmer.co.za/downloads/SOW.png http://www.programmer.co.za/downloads/SOW.png
잠깐,'TGroupBox'를 사용하고 있다면 왜 혼자서 그림을 그리는거야? 또한, 나는 당신이 실제로 그리는 방법과 상상할 수없는 것을 상상할 수 없습니다 (이미지는 위대 할 것입니다). – TLama
죄송합니다. 설명이 부족할 수 있습니다. – Marius
안녕하세요, 아마도 도움이 될 수 있습니다 : http://stackoverflow.com/questions/5119734/algorithm-to-organise-rectangles-in-the-fixed-rectangular-container – Wodzu