2010-03-14 1 views
1

간격, 경도, 진원도, 각도 및 직경과 같은 타원형 (계산 된) 브러시 매개 변수를 받아 들일 수 있어야하며 그런 다음 이러한 특성을 기반으로 비트 맵 이미지를 계산해야합니다.타원형 브러시 이미지를 생성하는 알고리즘?

누군가 알고리즘을 알고 있습니까 (또는 내가 그것을 찾을 수있는 곳)? 나는 그래픽 프로그래밍에 대한 경험이 부족하며 지금까지 찾을 수 없었다.

+0

어떤 언어입니까? - –

+0

자바를 사용하고 있습니다. – juan2raid

답변

1

이것은 라이브러리를 사용하려는 종류의 것으로, 대부분 Java 2D API입니다. 채우기, 획, 변형 및 필터를위한 기능을 포함합니다. 이 모델은 moveTolineTo 또는 curveTo 연산자를 사용하여 경로를 추적한다는 점에서 많은 라이브러리와 유사합니다.이 라이브러리는 Ellipse2D과 같은 모양으로 추상화되어 있습니다. 그런 다음 칠한 연산자로 결과 경로를 채우거나 획을 그 으십시오. 자바 2D 튜토리얼을 읽고 서로 다른 부분이 어떻게 어울리는 지 이해하는 것이 좋습니다.

나는이 그림을 만드는 데 대략 다음과 같은 조치를 취할 것입니다 : 회전 타원의

  • 계산 최종 치수를 흐리게 후.
  • 해당 크기의 BuferredImage을 만들고 그 createGraphics 메서드를 호출하여 드로잉 컨텍스트를 얻습니다.
    • 는 그래픽
    • 는 가우시안 블러 필터를 구현
    • 블랙
  • 로 채우기 타원을 그리기 개체를 회전합니다. 이것은 API에 내장되어 있지는 않지만 ConvolveOp이라는 필터를 수행하는 프레임 워크와 Java에서 가우스 커널을 계산하는 알고리즘 인 you can find을 포함합니다.
  • 이미지에 필터를 적용한 다음 결과를 반환하십시오. 당신은 선언적으로 (변환 및 필터 포함) 당신이 원하는 그림을 표현하고 당신을 위해 래스터 가질 수 있기 때문에

또 다른 옵션은 아파치의 Batik SVG 라이브러리 수 있습니다. 타원에 대한 공식