2012-04-23 2 views
1

나는 이것을 찾아서 어디서나 찾을 수 없었다. 게임에서 내 헬스 바를 나타내는 RoundedRectangle2D 구성 요소가 있습니다. 그리고 subtractHealth 메서드를 호출하면 녹색 위에 빨간색 사각형 부분을 페인트하여 헬스 바가 손실 된 것처럼 보이게하고 싶습니다. 나는 이전에 두 개의 직사각형, 즉 녹색과 빨간색을 하나씩 가지고 있었지만, 이것을 바꾸어야한다고 말했고, 사용 된 메모리가 적을 것이라는 점에 동의했습니다. 그렇게하는 방법을 아는 사람이 있습니까?Java에서 Rectangle을 두 가지 색상으로 페인트하려면 어떻게해야합니까?

+1

두 개의 직사각형을 갖는 것이 이동하는 것처럼 보입니다. – Thilo

+3

사각형이 거의 기본이라고 생각합니다. 두 가지 색을 칠할 수있는 사각형이 2 개의 사각형과 다르거 나 더 적은 메모리를 사용한다는 것을 확신하지 못했습니다. –

+1

무엇을 변경해야한다고 들었습니까? 다른 사람들이 말했듯이, 당신은 이전 계획에 충실해야합니다. – jellyfication

답변

4

GradientPaint 클래스를 사용할 수 있습니다. http://www.roseindia.net/java/example/java/swing/graphics2D/gradient-paint.shtml

+3

+1, 아마도 적은 메모리를 사용하지 않을 것이지만 확실히 좋을 것입니다. (메모리의 사각형이 많이 넘어지지 않는다고 생각합니다) –

+0

@ dann.dev [Rasputina의 "Rats"클립] (http : //www.youtube.com/watch?v=TIHwTMKj9PU&feature=plcp&context=C4e1091eVDvjVQa1PpcFNcyNNUmyAUN0WoThOVaCR7bPczt1XQMnc%3D)는 더 단단한 테두리가있는 반투명 'GradientPaint'를 사용하여 왼쪽/오른쪽 볼륨을 보여줍니다. 꽤 좋은 (내가 그렇게 말하면). ;) –

+0

좋은데, 나는 그때마다 조금씩 눈물을 흘렸다는 것을 알았지 만, 그것이 회화 방법인지 또는 그 구성 요소인지 궁금하십니까? –

관련 문제