질문은 기본적으로 trashgod에 의해 답변되었습니다. LinearGradientPaint를 사용하면 많은 샘플 포인트가있는 선형 그레이딩을 사용하여 실제 사인파 격자를 만들 수 있습니다. 사인파 격자를 만드는 예제 함수는 아래와 같습니다.
다시 도움 주셔서 감사합니다.
public LinearGradientPaint getSineWaveGrating(int numberCycles, int samplePoints, Point2D startP, Point2D endP, Color color) {
float[] fractions = new float[samplePoints+1];
Color[] colors = new Color[samplePoints+1];
for(int i=0;i<=samplePoints;i++) {
fractions[i] = i*(1/(float)samplePoints);
double cosArg = Math.PI+((i*numberCycles*2*Math.PI)/samplePoints);
double rectifiedCos = (Math.cos(cosArg)+1)/2;
colors[i] = new Color(color.getRed(),color.getGreen(),color.getBlue(),(int)(255*rectifiedCos));
}
return new LinearGradientPaint(startP, endP, fractions, colors);
}
"java.awt.LinearGradientPaint"또는이 [예제] (http://stackoverflow.com/q/7544559/230513)로 실험 해 볼 수 있습니다. – trashgod
Java2D를 계속 사용하려면 trashgod의 제안으로 충분합니다. JOGL/OpenGL을 사용하는 방법을 배우는 것을 두려워하는 경우 2D 물건의 경우에도 Jzy3D를 볼 수 있고 후드에서는 JOGL을 사용하지만 사용하기가 더 쉽습니다. "일반 GUI"는 무엇을 의미합니까? – gouessej
답장을 보내 주셔서 감사합니다. java.awt.LinearGradientPaint는 사실 내가 찾던 사실이었습니다! – BjoernBeyer