|
TImage에는
Image1->Picture->Bitmap 이 있습니다.
Image의 Canvas를 변경하면 Bitmap에 바로 반영됩니다.
Pixels로 접근할때마다 변경이 반영되기 때문에 Pixels로 접근은 매우느립니다.
TBitmap에는 ScanLine이라는 프로퍼티가 있습니다.
이 프로퍼티는 bitmap메모리의 주소를 return해줍니다.
Pixels로 접근하는것보다 수백배 빠를것입니다.
여기 ScanLine으로 검색해보세요
많은 예제가 있을것입니다.
그럼..
압9정 님이 쓰신 글 :
: 안녕하세요. RGB값을 가지고 있는 상태에서 TImage에 그리는 소스를 작성하고 있습니다.
:
: for(i = 0; i < Height; i++)
: {
: for(j = 0; j < Width; j++)
: {
: imgImage->Canvas->Pixels[j][i] = RGB(
: R[(i)*Width+(j)],
: G[(i)*Width+(j)],
: B[(i)*Width+(j)]
: );
: }
: }
:
: 현재는 위와 같은 방법으로 Timage에 그렸습니다. 그런데 해상도가 640 x 480 정도 되니 for문을 반복하는 동작이 너무 많아서 여러 이
:
: 미지를 그릴때 시간이 너무 오래걸리더라고요,,,ㅠ
:
: RGB 값을 모두 알고 있을때 TImage에 위 방법보다 시간을 절약하면서 그리는 방법이 있을까요?
:
: 알고 계신다면 지식을 나누어 주시면 감사하겠습니다.^^
|