fuzion-lang.dev — The Fuzion Language Portal
Sign up
Fuzion
•
Idioms
•
Idiom # 179: Get center of a rectangle
Idiom # 179: Get center of a rectangle
See
programming-idioms.org
:
Code
point (x, y f64) is redef as_string => "($x, $y)" rectangle(a, b point) is center => point (a.x+b.x)/2 (a.y+b.y)/2 x1 := 0.0 x2 := 1.0 y1 := 0.0 y2 := 2.0 r := rectangle (point x1 y1) (point x2 y2) c := r.center
1
2
3
4
5
6
7
8
9
10
11
12
13
point (x, y f64)
is
redef
as_string
=>
"(
$x
,
$y
)"
rectangle(a, b point)
is
center
=>
point (a.x+b.x)/
2
(a.y+b.y)/
2
x1
:=
0.0
x2
:=
1.0
y1
:=
0.0
y2
:=
2.0
r
:=
rectangle (point x1 y1) (point x2 y2)
c
:=
r.center
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
What are effects?
Running Example
ex179 is point (x, y f64) is public redef as_string => "($x, $y)" rectangle(a, b point) is center => point (a.x+b.x)/2 (a.y+b.y)/2 x1 := 0.0 x2 := 1.0 y1 := 0.0 y2 := 2.0 r := rectangle (point x1 y1) (point x2 y2) c := r.center say c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
ex179
is
point (x, y f64)
is
public
redef
as_string
=>
"(
$x
,
$y
)"
rectangle(a, b point)
is
center
=>
point (a.x+b.x)/
2
(a.y+b.y)/
2
x1
:=
0.0
x2
:=
1.0
y1
:=
0.0
y2
:=
2.0
r
:=
rectangle (point x1 y1) (point x2 y2)
c
:=
r.center
say c
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
What are effects?
last changed: 2025-05-13
next: NYI: Idiom # 180: List files in directory