C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[23402] TChart 질문.... Y좌표를 구하는 방법 좀 가르쳐주세요
최종혁 [bigdream] 1043 읽음    2002-12-26 17:03
어제 올렸는데 머리가 멍청하니까 또 올리게 됩니다.
지송....
차트에서 그래프를 그리고 난후 막대선을 그릴려고 합니다.
막대선은 그릴줄 알겠는데
버튼을 누르면 막대가 움직이는 걸 만들고 싶습니다.
해당 씨리지에 날짜와 값이 들어가는데.....
특정 날짜에 해당하는 Y좌표를 구할수 있나요?
그 Y좌표를 구하면 막대선은 그냥 그릴수 있는데...
Y좌표를 구할수가 없네요..
일단 임의로....막대선은 그렸습니다.
해당 날짜에 해당하는 Y좌표를 구하는 방법 좀 가르쳐주세요
그리고 chart -> Series [ Index ] -> AddY ( 값, "", clTeeColor ) ;
       chart -> Series [ Index ] -> XLabel [ count++ ] = dateHour ;
이렇게 값을 넣었는데....
이 값에다가 NULL값을 넣을수 있나요? 궁금합니다.

어제 답변주신 이종빈님 감사드립니다. ^^ 꾸벅

void __fastcall
TformStatRelativeConcGraph::chartBeforeDrawSeries
    ( TObject * Sender )
    {

    int partial, XPosition;
    double tmpXCenterValue;

    tmpXCenterValue = chart -> Series [ 0 ] -> YValues -> MinValue +
                      50 *( chart -> Series [ 0 ] -> YValues -> MaxValue -
                      chart -> Series [ 0 ] -> YValues -> MinValue ) / 100.0 ;

    XPosition = chart -> LeftAxis -> CalcYPosValue ( tmpXCenterValue ) ;

    chart -> Canvas -> Pen -> Width = 3 ;
    chart -> Canvas -> Pen -> Style = psSolid ;
    chart -> Canvas -> Pen -> Color = clRed ;
    chart -> Canvas -> MoveTo ( XPosition, chart -> ChartRect.Bottom ) ;
    chart -> Canvas -> LineTo ( XPosition + chart -> Height3D, chart -> ChartRect.Bottom - chart -> Width3D ) ;
    chart -> Canvas -> LineTo ( XPosition + chart -> Height3D, chart -> ChartRect.Top - chart -> Width3D ) ;

    }
//---------------------------------------------------------------------------

void __fastcall
TformStatRelativeConcGraph::chartAfterDraw
    ( TObject * Sender )
    {

    int    XPosition;
    double tmpXCenterValue;
    // first calculate the middle vertical value (based on LineSeries points)
    tmpXCenterValue = chart -> Series [ 0 ] -> YValues -> MinValue +
                      50 *( chart -> Series [ 0 ] -> YValues -> MaxValue -
                      chart -> Series [ 0 ] -> YValues -> MinValue ) / 100.0 ;

    // change pen and draw the line
    chart -> Canvas -> Pen -> Width = 3 ;
    chart -> Canvas -> Pen -> Style = psSolid ;
    chart -> Canvas -> Pen -> Color = clRed ;
    chart -> Canvas -> MoveTo ( XPosition, chart -> ChartRect.Bottom ) ;
    chart -> Canvas -> LineTo ( XPosition, chart -> ChartRect.Top ) ;
    chart -> Canvas -> LineTo ( XPosition + chart -> Width3D, chart -> ChartRect.Top - chart -> Height3D ) ;
    }




+ -

관련 글 리스트
23402 TChart 질문.... Y좌표를 구하는 방법 좀 가르쳐주세요 최종혁 1043 2002/12/26
23411     Re:TChart 질문.... Y좌표를 구하는 방법 좀 가르쳐주세요 이종빈 2537 2002/12/27
23415         Re:Re:TChart 질문.... Y좌표를 구하는 방법 좀 가르쳐주세요 최종혁 847 2002/12/27
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.