2009-11-02 5 views
0

ZedGraph을 사용하여 삼각형 파 (대칭)를 그리는 방법은 무엇입니까? 바람직하게는,주기 및 진폭을 조정하는 옵션ZedGraph를 사용하여 삼각형 파를 그리는 방법은 무엇입니까?

alt text http://img101.imageshack.us/img101/8482/okr20troj.jpg

.

// 편집 : 함수가 [관련/기반]이어야합니다? x (x 축).

이런 식으로 뭔가 :

for (x = 0; x <= 10; x += .005) 
{ 
    if (Math.Sin(x * (2 * Math.PI/period)) >= 0) 
     y = amplitude; 
    else 
     y = -amplitude; 
    originalList.Add(x, y); 
} 

답변

0
double amplitude = 1.7; 
       double period = 2; 
       PointPairList ppl = new PointPairList(); 
       double y=0; 
       for (double x = 0; x <= 10; x += .005) 
       { 
        double p = (x % (period))/period ; 
        if (p >= 0 && p <= 0.25) 
         y = 4 * p * amplitude; 
        if (p > 0.25 && p < 0.5) 
         y = amplitude - (p - 0.25) * 4 * amplitude; 
        if(p>0.5 && p<=0.75) 
         y = - 4 * (p-0.5) * amplitude; 
        if(p>0.75 && p<=1) 
         y = - (amplitude - (p - 0.75) * 4 * amplitude); 
        ppl.Add(x,y); 
       } 

       var line = zg1.MasterPane[0].AddCurve("", ppl, Color.Blue); 
       line.Symbol.IsVisible = false; 
       zg1.AxisChange(); 
       zg1.Refresh(); 
+0

텍사스, 그러나 나는 (지금 추가) 한 요구 사항 –

+0

아니라, 기술적, 내가 쓴하는 것은 "X 축을 기준으로"한다을 추가하는 것을 잊었다. 그 차이점은 무엇입니까? "i"를 "x"로 바꾸면됩니다. 두 번째로 - 작성한 절차는 삼각형 웨이브가 아닌 구형파 값을 생성하는 것입니다. 하지만 확인을 누르면 코드가 변경됩니다 ... – Gacek

+0

확인, 변경되었습니다. 이제 네가 예상했던대로해야 해. – Gacek

관련 문제