개발메모(형식에 매이지 않는 짤막한 개발 낙서)

Canvas에 라인 긋는 절차 메모

조회 수 2964 추천 수 0 2006.12.02 18:39:41
허창원 *.19.45.37
Canvas에 라인을 긋기 위해서 다음과 같은 절차로 진행

1. 펜의 속성 지정
    ATTR_PEN_FILL_COLOR
    ATTR_PEN_COLOR
    ATTR_PEN_WIDTH
    
2. 선을 그을 좌표를 생성한 후
    CanvasDrawLine()
    
3. 지우기
    CanvasClear()
        
    
canvas.c의 예 ---------------------------------------------------------------
1. 펜 속성지정        
    /* Set a new random pen. */
    color = MakeColor (255 * rand () / RAND_MAX, 255 * rand() / RAND_MAX,
                       255 * rand () / RAND_MAX);
    SetCtrlAttribute (panel, PANEL_CANVAS, ATTR_PEN_FILL_COLOR, color);
    color = MakeColor (255 * rand () / RAND_MAX, 255 * rand () / RAND_MAX,
                       255 * rand () / RAND_MAX);
    SetCtrlAttribute (panel, PANEL_CANVAS, ATTR_PEN_COLOR, color);
    SetCtrlAttribute (panel, PANEL_CANVAS, ATTR_PEN_WIDTH,
                      5 * rand () / RAND_MAX + 1);

2. 선을 그림
    /* Decide on points to draw from and to. */
    if (randTop % 2 == 0)
        {
        pointVal1 = MakePoint (randLeft, randTop);
        pointVal2 = MakePoint (randWidth, randHeight);
        }    
    else
        {
        pointVal1 = MakePoint (randLeft, randTop + randHeight);
        pointVal2 = MakePoint (randLeft + randWidth, randTop);
        }    
    CanvasDrawLine (panel, PANEL_CANVAS, pointVal1, pointVal2);

3. 캔버스 지우기
    CanvasClear (panel, PANEL_CANVAS, VAL_ENTIRE_OBJECT);
List of Articles
번호 제목 글쓴이 날짜 조회 수
113 [Doc] LabVIEW에서 공유라이브러리(DLL) 호출 허창원 2007-06-12 6038
112 ATTR_SIZE_TO_TEXT 허창원 2007-05-24 3976
111 errChk 매크로 허창원 2007-05-24 2802
110 [Source] Panel Size가 바뀔때 Table의 크기도 연동되도록 허창원 2007-05-24 2887
109 [Doc] Serial Communication Overview 허창원 2007-05-23 2927
108 [Doc] Networking Two PCs for Remote Data Acquisition 허창원 2007-05-23 2846
107 [Doc] 10 Things to Consider When Choosing Vision Software 허창원 2007-05-23 2884
106 이동 가능한 컨트롤로 지정하기 허창원 2007-04-20 2759
105 [링크] Introduction to the LabWindows/CVI TDM Streaming Library 허창원 2007-03-22 3060
104 [링크] Customizing Create Distribution Kit Installers in LabWindows/CVI 허창원 2007-03-13 3724
103 파일 찾아보기 버튼의 콜백함수 예 허창원 2007-02-24 2808
102 DAQmx 장치의 Device Serial Number 얻어오기 허창원 2006-12-18 3478
» Canvas에 라인 긋는 절차 메모 허창원 2006-12-02 2964
100 sample source인 canvsbmk.c의 Draw() 함수의 일부 허창원 2006-12-02 5875
99 Easy Tab 사용하기 메모 허창원 2006-08-18 3516
98 Panel 활성화와 상관없이 Virtual Key 상태 알아내기 허창원 2006-08-16 3722
97 파워포인트의 특정 페이지로 이동하는 예 허창원 2006-08-08 3049
96 테이블(Table) 내의 셀(Cell) 속성을 변경하는 예 허창원 2006-06-30 3537
95 리스트박스(listbox)의 콜백예 file 허창원 2006-06-19 3057
94 ListBox를 갱신하는 나만의 스타일 허창원 2006-06-19 3003