|
다시한번 감사드립니다.
Nibble 님이 쓰신 글 :
: TChart를 쓰지 마시고 그냥 직접 그리시는게 나을 것 같은데...
: 더 나은 방법이 있는진 모르겠지만,
:
: Chart->BottomAxis->Minimum = 0;
: Chart->BottomAxis->Maximum = 150;
: Chart->LeftAxis->Minimum = 0;
: Chart->LeftAxis->Maximum = 150;
:
: Series1->AddNullXY(Chart->BottomAxis->Minimum, Chart->LeftAxis->Maximum, "");
: Series1->AddNullXY(Chart->BottomAxis->Maximum, Chart->LeftAxis->Minimum, "");
:
: 이런식으로 대충 범위를 잡아주시고,
:
: Series에 AfterDrawValues 이벤트 핸들러를 만드신 다음
: 그 안에,
:
: HRGN Rgn;
: Rgn = CreateRectRgn(Chart->BottomAxis->CalcXPosValue(Chart->BottomAxis->Minimum),
: Chart->LeftAxis->CalcYPosValue(Chart->LeftAxis->Minimum),
: Chart->BottomAxis->CalcXPosValue(Chart->BottomAxis->Maximum),
: Chart->LeftAxis->CalcYPosValue(Chart->LeftAxis->Maximum));
: ExtSelectClipRgn(Chart->Canvas->Handle, Rgn, RGN_AND);
: DeleteObject(Rgn);
:
: 스크롤이 필요할 경우를 위해 이렇게 영역을 잡으시고
:
: Chart->Canvas->Pen->Color = clBlack;
: Chart->Canvas->Brush->Color = clBlue;
: TPoint p[4]; // CalcX~~, CalcY~~ 함수를 이용해서 꼭지점 좌표를 차트 좌표로 변환해 넣어줍니다.
: Chart->Canvas->Polygon(p, 3);
: 이런식으로 그리면 될 것 같네요
: Canvas의 Polygon 함수는 소수점을 그려주진 않는데, 굳이 좀 더 정확한 표현을 원한다면,
: Graphics32 를 이용해 폴리곤을 그리고 Canvas에 Draw하는 법도 있겠죠.
:
: ExtSelectClipRgn(Chart->Canvas->Handle, 0, RGN_COPY);
:
: 클리핑 영역 해제시는 이렇게 하시면 되죠.
:
: 머슴.한석복 님이 쓰신 글 :
: : 오랜만에 볼포에 질문을 남기게 되네요.
: :
: : 프로젝트 중에 그래프를 그려야 하는 상황이 되어서, Tchar를 사용해 보려고 하는데,
: :
: : 생각보다 훨씬 복잡 하네요.
: :
: : 질문 드릴 내용은,
: :
: : 차트에서 4개의 포인트(데이터)를 주어서, Rectangle을 그리고 싶은데요..
: : 방법을 잘 모르겠네요.
: :
: : 4개의 포인트는 랜덤하게 들어 올 수도 있고, 아닐 수도 있고 그렇습니다.
: : 예를 들어서,
: : X, Y
: : =================
: : Point1 10 , 10.5
: : Point2 20 .5 , 10.8
: : Point3 19.5 , 1.8
: : Point4 10.5, 1.7
: : 이런식으로 정사각형이나, 직사각형이 아닌 사각형인 경우이구요.
: : 그리고, Rectangle은 색깔을 갖고 있게 되고요.
: :
: : form에다가 TChart 올려 놓고 더블클릭 해서, 이것 저것 바꿔 보는데, 원하는대로 나오지가 않네요.
: : 좌표가 2벌만 에디팅 되게 나온다던가,
: :
: : 좌표 종류를 Shape로 해서 rectangle로 하니까, 정사각형 내지는 직사각형만 되고..
: : 공부할게 많네요.
: : 혹시, 고수분들 중에, 이런식으로 구성하는 방법을 아시는 분 조언좀 주세요.
: : 부탁 드리겠습니다.
: :
: : 좋은 주말들 되세요.
|