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
[43449] Re:Tchart 에서 sin곡선 ㅜㅜ(쌩초보)
너브 [nervegum] 1270 읽음    2006-01-26 10:22
이원 님이 쓰신 글 :
: void __fastcall TForm1::Button1Click(TObject *Sender)
: {
:         TLineSeries* compSeries =  new TLineSeries(this);
:         compSeries->ParentChart = Chart1;   // ParentChart 이부분 정확히 무슨의미???????

그냥 그대로 해석하면 되겟죠
Form에 컴포넌트(TEdit) 한 올려놓으면 그 컴포넌트의 상위는 Form이 되겠죠?
그러니까 위에서 라인시리즈를 생성했으면 그것의 부모가 Chart1이라는 것을 알려주는 것입니다.

:
:         double i, j;
:         float pi;
:         for(i=0;i<361;i++)
:                 pi = 3.14159265;
:                 j=i*pi/180;
:
:         compSeries->Add(sin(j), "", clRed);
:
: 이렇게 했는데 실행해보니 sin곡선이 안되네요 ㅠㅠ
:
: 한가지 더 그래프를 오른쪽으로 움직일려면 어떻게 하는지 조언점 부탁드립니다.

sin() 곳선을 만들려면 우선 sin에 대해서 알야야 겠죠?
sin()은 math.h 에 정의되 있고요 당연히

#include <math.h>                  // <-- 해야 되겠죠?

//그리고 Y = A * sin(BX + C)     // A,B,C 는 상수 ,,,, 변수 : X

double X,Y;
double A = 1, B = 2, C= 3;
for (int i = 0 ; i < 360 ; i++){

        X = (float)i;                                                   // 형을 맞추기 위해서...
        Y = A * sin(    B * ( X * M_PI  / 180) + C);      // A(진폭), B(주기관련), C(위치변환)
        // 위에서 했듯이 <도> 단위를 <라디안>으로 바꾸기 위해서....
        // M_PI -> math.h 에 정의 3.14159265.....아마 atan(1) 이던가.. 잘 기억이 안나네요;;;;

       Series1->AddXY(X,Y,"",(TColor)clTeeColor); // TColor은 경고를 피하기 위함...
}

위와 같이 해보시고요
sin함수 한번 찾아보세요. 쉽게 설명 나온곳 많을 겁니다...^^

그래프를 오른쪽으로 움직이려고 한다면... 당연히 위 함수에서 C에 관련이 있겠죠....
C 값을 변형시켜 보세요...^^

+ -

관련 글 리스트
43447 Tchart 에서 sin곡선 ㅜㅜ(쌩초보) 이원 1932 2005/12/29
43449     Re:Tchart 에서 sin곡선 ㅜㅜ(쌩초보) 너브 1270 2006/01/26
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.