2012-03-14 3 views
0

draw2d 폴리 라인이 포함 된 draw2d 레이어의 swt.graphics.Image 객체와 원형 타원과 같은 몇 가지 다른 인물을 만들었습니다.이 이미지 객체에서 jpeg 파일을 만들었습니다. 타원, 동그라미 등은 아니지만 draw2d 폴리 라인 (연결 화살표, 다각형 등)을 사용하여 그린 그림은 최종 jpeg 파일에 있습니다. 폴리 라인도 최종 jpeg 파일에 플롯되고 표시되도록하고 싶습니다. 내가 어떻게 이럴 수 있니? 레이어를 셸에 넣어 보았습니다. 하지만 shell.open()을 사용하여 사용자에게 쉘을 표시해야합니다. 그러면 폴리 라인 모양이 최종 jpeg 파일에 표시됩니다. shell.open()이 셸과 그 자식 (레이어, 폴리 라인 등)의 드로잉을 강제 실행한다고 생각합니다. 셸을 표시하지 않고 폴리 라인을 위해 도면층을 강제로 그리는 방법이 있습니까?폴리 라인이 포함 된 레이어에서 이미지 생성

감사합니다 감사합니다 바라 스

+0

이미지를 정확히 작성하는 방법은 무엇입니까? 귀하의 연결은 아마도 나머지 숫자와 다른 레이어에 있습니다. 두 레이어 (또는 공통 부모)를 그리는 것이 확실합니까? – p12t

+0

원과 타원은 그림 안에 있으며 레이어 안에 유지됩니다. 폴리 라인은 동일한 도면층에 보관되는 다른 그림에 보관됩니다. 당신이 말했듯이 맨 위에있는 그림 만 그려지고 나머지는 그렇지 않을 수도 있습니다. 레이어가 하나 뿐이므로이 레이어를 FigureCanvas에 배치합니다. 나는 그 종류의 명백한 끌기 또는 무엇이든을 부르고 있지 않다. – barry

답변

0

나는 이것에 대한 해결책을 얻었다. 레이어에서 validate()를 호출했습니다. 이전에 레이어가 있고 변경이없는 FigureCanvas에서 redraw(), Layout() 등을 호출했습니다. 이제 레이어에 validate()를 호출 한 후 작동하는 것 같습니다.

관련 문제