Q&A

  • 폼에서 일정한 위치에 점을 찍어주려면....
델파이를 가지고 그래픽 작업을 하려고 합니다...

그런데 가장 기초적인 부분부터 막히는군여.... 저장이나 모 기타 부분에 대해서는 다

생각하고 코딩을 했는데 가장 앞 부분이 안되고 있습니다....



폼의 어떤 하나의 위치에 일정한 색을 가진 약0.5cm 정도되는 사각형을 찍으려 하는데

도대체 어떻게 해야할지 전혀 모르겠습니다....

죄송하지만 혹시 아시는 분들은 꼭좀 답을 올려주시면 감사하겠습니다....



1  COMMENTS
  • Profile
    최용일 2000.03.05 08:53
    폼의 프라퍼티 중에서 Canvas를 이용하시면 됩니다...

    사각형을 그리실땐 Rectangle함수를 이용하시면됩니다..

    예) canvas.Rectangle(10, 10, 100, 100);

    그리고 단위를 픽셀이 아닌 인치나 밀리미터등으로 하실려면 DC(TCanvas.Handle)의 맵핑

    모드를 바꾸어 주어야 합니다. 맵핑모드 관련 함수에는 다음과 같은 것들이 있습니다.

    자세한 것은 Win32도움말을 참조하세요...

    SetMapMode() - 주어진 DC의 맵핑 모드를 설정한다.

    GetMapMode() - 주어진 DC의 맵핑 모드를 얻는다.

    SetWindowOrgEx() - 주어진 DC의 윈도 원점을 설정한다.

    SetViewPortOrgEx() - 주어진 DC의 뷰포트 원점을 설정한다.

    SetWindowExtEx() - 주어진 DC의 윈도우 X, Y축 단위 크기를 설정한다.

    SetViewPortExtEx() - 주어진 DC의 뷰포트 X, Y축 단위 크기를 설정한다.



    맵핑모드 논리좌표단위 좌표축의 방향(X/Y)

    MM_ANISOTROPIC 임의의 값 정의가능/정의가능

    MM_HIENGLISH 0.001인치 우/상

    MM_HIMETRIC 0.01mm 우/상

    MM_ISOTROPIC 임의의 값 정의가능/정의가능

    MM_LEONGLISH 0.01인치 우/상

    MM_LOMETRIC 0.01mm 우/상

    MM_TEXT 1픽셀 우/하

    MM_TWIPS 1/1440인치 우/상



    예) SetMapMode(Canvas.Handle, MM_LOMETRIC);

    Canvas.Rectangle(0, 0, 500, 500); // (0, 0) 0.5cm짜리 사각형을 그린다..

    그외 점, 선, 사각형, 원, 폐곡선 등을 그릴땐 Canvas를 이용하시면 됩니다...

    폼뿐만 아니라 그래픽콤포넌트들은 모두 Canvas속성을 가지고 있습니다..





    황석민 wrote:

    > 델파이를 가지고 그래픽 작업을 하려고 합니다...

    > 그런데 가장 기초적인 부분부터 막히는군여.... 저장이나 모 기타 부분에 대해서는 다

    > 생각하고 코딩을 했는데 가장 앞 부분이 안되고 있습니다....

    >

    > 폼의 어떤 하나의 위치에 일정한 색을 가진 약0.5cm 정도되는 사각형을 찍으려 하는데

    > 도대체 어떻게 해야할지 전혀 모르겠습니다....

    > 죄송하지만 혹시 아시는 분들은 꼭좀 답을 올려주시면 감사하겠습니다....

    >