| |
|
|
HofK | Es wird un Punkt avec x entre 0 et Pi/2 et y entre 0 et 1 - ici (0.5, 0.75) - angegeben. Daraus volonté deux Geradenabschnitte bestimmt. eh bien wird par entsprechende Zuordnung aus diesem le morceau qui periodische Funktion gebastelt.
XProfan 11
// Periodische Funktion erzeugen
Var px! = 0.5
Var py! = 0.75
//-------------
Fenêtre 0,0 - 1800,1000
Var x! = 0
Var y! = 0
Var m! = 0
Var pi2! = Pi() / 2
USEP 0, 2, RGB(200,0,0)
x! = -1.57
MoveTo 400 + x! * 200 , 500 + 200
WhileLoop 0, 784
x! = x! + 0.01
y! = sinlike(x!)
LineTo 400 + x! * 200 , 500 - y! * 200
Endwhile
USEP 0, 2, RGB(0,200,0)
x! = -1.57
MoveTo 400 + x! * 200 , 500
WhileLoop 0, 784
x! = x! + 0.01
y! = coslike(x!)
LineTo 400 + x! * 200 , 500 - y! * 200
Endwhile
USEP 0, 1, RGB(0,0,0)
x! = -1.57
MoveTo 400 + x! * 200 , 500 + 200
WhileLoop 0, 784
x! = x! + 0.01
y! = sin(x!)
LineTo 400 + x! * 200 , 500 - y! * 200
Endwhile
USEP 0, 1, RGB(0,200,200)
x! = -1.57
MoveTo 400 + x! * 200 , 500
WhileLoop 0, 784
x! = x! + 0.01
y! = cos(x!)
LineTo 400 + x! * 200 , 500 - y! * 200
Endwhile
USEP 0, 1, RGB(0,0,200)
Line 100, 500, 1700, 500
Line 400, 50, 400, 900
waitinput
Proc k1
Paramètres x!
m! = ( 1 - py! ) / ( pi2! - px! )
si x! <= px!
return py! / px! * x!;
endif
si x! > px!
return m! * x! + 1 - pi2! * m!
endif
ENDPROC
Proc sinlike
Paramètres x!
si ( x! < 0 )
return -k1( -x! )
endif
si ( x! >= 0 ) AND ( x! <= pi2!)
return k1( x! );
endif
si ( x! > pi2! ) AND ( x! <= Pi() )
return k1( Pi() - x! );
endif
si ( x! > Pi() ) AND ( x! <= 3 * pi2! )
return -k1( x! - Pi() );
endif
si ( x! > 3 * pi2! ) AND ( x! <= 2 * Pi() )
return -k1( 2 * Pi() - x! );
endif
si ( x! > 2 * Pi() ) AND ( x! <= 5 * pi2!)
return k1( x! - 2 * Pi() );
endif
ENDPROC
Proc coslike
Paramètres x!
return sinlike( x! + pi2! );
ENDPROC
Anwendung siehe [...] |
|
|
| |
|
|