\\ set italic for font
italic 1
font$="Arial"
\\ set 80 characters by 50 rows
Form 80,50
\\ extra_space 5 pixels (to twips)
extra_space=twipsX*5
aling_value=3
document g$={M2000 Interpreter
Second line
Third line
Last line
}
lines=doc.par(g$)-1
if lines=0 then lines=1
\\ start rotation angle
number_of_blocks=9
current_angle=pi/3
font_size=17
distance_from_center=300
For i=1 to number_of_blocks {
aling_value=random(1, 3)
current_angle+=pi/number_of_blocks*2
ep=(extra_space, 0)#val(random(0,1))
ww=Size.X(g$,font$,font_size,0 ,ep)
hh=Size.Y(g$,font$,font_size, 0,ep)
w1=Size.X(g$,font$,font_size, current_angle, ep)
h1=Size.Y(g$,font$,font_size, current_angle, ep)
move x.twips/2, y.twips/2
step angle current_angle,ww+distance_from_center
select case aling_value
case 2
step angle current_angle+pi/2, hh/2-hh/lines/2
case 3
{
step angle current_angle+pi/2, hh/2
step angle current_angle, -ww/2
}
else case
{
step angle current_angle+pi/2, hh/2-hh/lines
step angle current_angle,ww/2
}
end select
pen random(11, 15) {
legend g$,font$,font_size,current_angle, aling_value,0,ep
move x.twips/2, y.twips/2
step angle current_angle,ww/2+distance_from_center
step angle current_angle+pi/2, hh/2
draw angle current_angle, ww
draw angle current_angle-pi/2, hh
draw angle current_angle, -ww
draw angle current_angle-pi/2, -hh
move x.twips/2, y.twips/2
step angle current_angle,ww+distance_from_center
step -w1/2, -h1/2
color {polygon 1, w1, 0, 0,h1, -w1, 0, 0,- h1 }
}
}
italic 0
kkk$=key$
italic 1
font$="Arial"
\\ set 80 characters by 50 rows
Form 80,50
\\ extra_space 5 pixels (to twips)
extra_space=twipsX*5
aling_value=3
document g$={M2000 Interpreter
Second line
Third line
Last line
}
lines=doc.par(g$)-1
if lines=0 then lines=1
\\ start rotation angle
number_of_blocks=9
current_angle=pi/3
font_size=17
distance_from_center=300
For i=1 to number_of_blocks {
aling_value=random(1, 3)
current_angle+=pi/number_of_blocks*2
ep=(extra_space, 0)#val(random(0,1))
ww=Size.X(g$,font$,font_size,0 ,ep)
hh=Size.Y(g$,font$,font_size, 0,ep)
w1=Size.X(g$,font$,font_size, current_angle, ep)
h1=Size.Y(g$,font$,font_size, current_angle, ep)
move x.twips/2, y.twips/2
step angle current_angle,ww+distance_from_center
select case aling_value
case 2
step angle current_angle+pi/2, hh/2-hh/lines/2
case 3
{
step angle current_angle+pi/2, hh/2
step angle current_angle, -ww/2
}
else case
{
step angle current_angle+pi/2, hh/2-hh/lines
step angle current_angle,ww/2
}
end select
pen random(11, 15) {
legend g$,font$,font_size,current_angle, aling_value,0,ep
move x.twips/2, y.twips/2
step angle current_angle,ww/2+distance_from_center
step angle current_angle+pi/2, hh/2
draw angle current_angle, ww
draw angle current_angle-pi/2, hh
draw angle current_angle, -ww
draw angle current_angle-pi/2, -hh
move x.twips/2, y.twips/2
step angle current_angle,ww+distance_from_center
step -w1/2, -h1/2
color {polygon 1, w1, 0, 0,h1, -w1, 0, 0,- h1 }
}
}
italic 0
kkk$=key$
\\ θέτουμε Πλάγια την γραμματοσειρά
Πλάγια 1
γραμ$="Arial"
\\ θέτει 80 χαρακτήρες επί 50 γραμμές την κονσόλα
Φόρμα 80,50
\\ εξτρα_κενό 5 σημεία (pixels)
εξτρα_κενό=πλάτος.σημείου*5
τιμή_στοίχισης=3
έγγραφο επ$={Μ2000 Διερμηνευτής
Δεύτερη γραμμή
Τρίτη γραμμή
Τελευταία γραμμή
}
γραμμές=εγγράφου.παρ(επ$)-1
Αν γραμμές=0 Τότε γραμμές=1
αριθμός_μπλοκ=9
τωρινή_γωνία=πι/3
μέγεθος_γραμ=17
απόσταση_από_κέντρο=300
για ι=1 έως αριθμός_μπλοκ {
τιμή_στοίχισης=τυχαίος(1, 3)
τωρινή_γωνία+=πι/αριθμός_μπλοκ*2
εκ=(εξτρα_κενό, 0)#τιμή(τυχαίος(0,1))
ππ=Μέγεθος.Χ(επ$,γραμ$,μέγεθος_γραμ,0 ,εκ)
υυ=Μέγεθος.Υ(επ$,γραμ$,μέγεθος_γραμ, 0,εκ)
π1=Μέγεθος.Χ(επ$,γραμ$,μέγεθος_γραμ, τωρινή_γωνία, εκ)
υ1=Μέγεθος.Υ(επ$,γραμ$,μέγεθος_γραμ, τωρινή_γωνία, εκ)
θέση χ.σημεία/2, υ.σημεία/2
βήμα γωνία τωρινή_γωνία,ππ+απόσταση_από_κέντρο
επίλεξε με τιμή_στοίχισης
με 2
βήμα γωνία τωρινή_γωνία+πι/2, υυ/2-υυ/γραμμές/2
με 3
{
βήμα γωνία τωρινή_γωνία+πι/2, υυ/2
βήμα γωνία τωρινή_γωνία, -ππ/2
}
αλλιώς με
{
βήμα γωνία τωρινή_γωνία+πι/2, υυ/2-υυ/γραμμές
βήμα γωνία τωρινή_γωνία,ππ/2
}
Τέλος επιλογής
πένα τυχαίος(11, 15) {
Επιγραφη επ$,γραμ$,μέγεθος_γραμ,τωρινή_γωνία, τιμή_στοίχισης,0,εκ
θέση χ.σημεία/2, υ.σημεία/2
βήμα γωνία τωρινή_γωνία,ππ/2+απόσταση_από_κέντρο
βήμα γωνία τωρινή_γωνία+πι/2, υυ/2
χαραξε γωνία τωρινή_γωνία, ππ
χαραξε γωνία τωρινή_γωνία-πι/2, υυ
χαραξε γωνία τωρινή_γωνία, -ππ
χαραξε γωνία τωρινή_γωνία-πι/2, -υυ
θέση χ.σημεία/2, υ.σημεία/2
βήμα γωνία τωρινή_γωνία,ππ+απόσταση_από_κέντρο
βήμα -π1/2, -υ1/2
χρώμα {πολύγωνο 1, π1, 0, 0,υ1, -π1, 0, 0,- υ1 }
}
}
Πλάγια 0
περίμενε$=κομ$
Πλάγια 1
γραμ$="Arial"
\\ θέτει 80 χαρακτήρες επί 50 γραμμές την κονσόλα
Φόρμα 80,50
\\ εξτρα_κενό 5 σημεία (pixels)
εξτρα_κενό=πλάτος.σημείου*5
τιμή_στοίχισης=3
έγγραφο επ$={Μ2000 Διερμηνευτής
Δεύτερη γραμμή
Τρίτη γραμμή
Τελευταία γραμμή
}
γραμμές=εγγράφου.παρ(επ$)-1
Αν γραμμές=0 Τότε γραμμές=1
αριθμός_μπλοκ=9
τωρινή_γωνία=πι/3
μέγεθος_γραμ=17
απόσταση_από_κέντρο=300
για ι=1 έως αριθμός_μπλοκ {
τιμή_στοίχισης=τυχαίος(1, 3)
τωρινή_γωνία+=πι/αριθμός_μπλοκ*2
εκ=(εξτρα_κενό, 0)#τιμή(τυχαίος(0,1))
ππ=Μέγεθος.Χ(επ$,γραμ$,μέγεθος_γραμ,0 ,εκ)
υυ=Μέγεθος.Υ(επ$,γραμ$,μέγεθος_γραμ, 0,εκ)
π1=Μέγεθος.Χ(επ$,γραμ$,μέγεθος_γραμ, τωρινή_γωνία, εκ)
υ1=Μέγεθος.Υ(επ$,γραμ$,μέγεθος_γραμ, τωρινή_γωνία, εκ)
θέση χ.σημεία/2, υ.σημεία/2
βήμα γωνία τωρινή_γωνία,ππ+απόσταση_από_κέντρο
επίλεξε με τιμή_στοίχισης
με 2
βήμα γωνία τωρινή_γωνία+πι/2, υυ/2-υυ/γραμμές/2
με 3
{
βήμα γωνία τωρινή_γωνία+πι/2, υυ/2
βήμα γωνία τωρινή_γωνία, -ππ/2
}
αλλιώς με
{
βήμα γωνία τωρινή_γωνία+πι/2, υυ/2-υυ/γραμμές
βήμα γωνία τωρινή_γωνία,ππ/2
}
Τέλος επιλογής
πένα τυχαίος(11, 15) {
Επιγραφη επ$,γραμ$,μέγεθος_γραμ,τωρινή_γωνία, τιμή_στοίχισης,0,εκ
θέση χ.σημεία/2, υ.σημεία/2
βήμα γωνία τωρινή_γωνία,ππ/2+απόσταση_από_κέντρο
βήμα γωνία τωρινή_γωνία+πι/2, υυ/2
χαραξε γωνία τωρινή_γωνία, ππ
χαραξε γωνία τωρινή_γωνία-πι/2, υυ
χαραξε γωνία τωρινή_γωνία, -ππ
χαραξε γωνία τωρινή_γωνία-πι/2, -υυ
θέση χ.σημεία/2, υ.σημεία/2
βήμα γωνία τωρινή_γωνία,ππ+απόσταση_από_κέντρο
βήμα -π1/2, -υ1/2
χρώμα {πολύγωνο 1, π1, 0, 0,υ1, -π1, 0, 0,- υ1 }
}
}
Πλάγια 0
περίμενε$=κομ$
Δεν υπάρχουν σχόλια:
Δημοσίευση σχολίου
You can feel free to write any suggestion, or idea on the subject.