| |
|
|
| KompilierenMarkierenSeparierenSource wurde am 15.07.2007 aus der MMJ-Quellcodesammlung (Dietmar Horn) in die Babyklappe auf XProfan.Com abgelegt:
Profan²-Torte
(C) Uwe Pascal Niemeier
windowtitle Pascals PROFAN-Torten-Designer
Window 50,50-700,500
declare Umfang!,Faktor!,Lupe%,Radius!,RadiusX!
declare Zähler%,Xpos%,Ypos%,SollVol!,IstVol!,Höhe!,Text$,Stücke%
decimals 1
+++++++++++++++++++++++ Eingabe der Parameter ++++++++++++++++++++++++++++++
Radius!=11 *** Radius der Schale in cm ( Nicht Durchmesser !) ***
Lupe% =25 *** Vergrößerungsfaktor für Grafik ***
Stücke%=6 *** Anzahl Tortenstücke / Segmente ***
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
def !Pi 3.141593
def RadiusX(1) cos( %(1)/180*!Pi )*Radius!
def Pytagoras(1) Radius!-Sqrt( Radius!^2 - !(1)^2 )
def IstVol(2) ((3* !(1)^2 )+ !(2)^2 )*(1/6)*!Pi*!(2)
+++++++++++++++++++++++ Ausgabe der Zahlenwerte ++++++++++++++++++++++++++++
Umfang!=Radius!*2*!Pi
usefont Arial,(Lupe%/2),(Lupe%/4),0,0,0
drawtext 120,190,str$(round((Umfang!/4),1))
orientation 2700
usefont Arial,(Lupe%/2),(Lupe%/4),0,0,0
drawtext 65,170,str$(round((Umfang!/Stücke%),1))
+++++++++++++++++++++++ Umrechnung für Grafik ++++++++++++++++++++++++++++++
SollVol!=(4/3)*!Pi*(Radius!^3)*0.25 V=4/3 * Pi * r^3 * 0,25 => 1/4 KugelVolumen
Radius!=Radius!*Lupe%
Umfang!=Radius!*2*!Pi
Faktor!=Umfang!/ (900*4)
Stücke%=Stücke%*2
+++++++++++++++++++++++ Linien ziehen +++++++++++++++++++++++++++++++++++++
line 50,200-(50+round( (Umfang!/4) ,0)),200
line 50,(200-round( (Umfang!/Stücke%) ,0))-50,(200+round( (Umfang!/Stücke%) ,0))
+++++++++++++++++++++++ Form berechnen und zeichnen +++++++++++++++++++++++++
while Zähler%<900
RadiusX!=RadiusX(Zähler%/10)
Umfang!=2*!Pi*RadiusX!
Ypos%=round( (Umfang!/Stücke%) ,0)
Xpos%=round( (Faktor!*Zähler%) ,0)+50
SetPixel Xpos%,(200+Ypos%),rgb(255,0,0)
SetPixel Xpos%,(200-Ypos%),rgb(0,0,255)
+++++++++++++++++++++++ Volumen/Mittelboden errechnen +++++++++++++++++++++++
Höhe!=Pytagoras(RadiusX!)
IstVol!=IstVol( (RadiusX!/Lupe%) , (Höhe!/Lupe%) )
if SollVol!>IstVol!
Text$=Mittelboden Ø: +str$( ( (RadiusX!/Lupe%) -0.75) *2)
orientation 0
usefont Arial,(Lupe%/2),(Lupe%/4),0,0,0
drawtext 55,205,Text$
SollVol!=0
endif
inc Zähler%
endwhile
waitkey
end
|
|
|
| |
|
|