aboutsummaryrefslogtreecommitdiffstats
path: root/man/blind-spiral-gradient.1
blob: 7d2264299c5c278ba90f26c98d28898264eb888c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
.TH BLIND-SPIRAL-GRADIENT 1 blind
.SH NAME
blind-spiral-gradient - Generate a video with a spiral gradient
.SH SYNOPSIS
.B blind-spiral-gradient
[-al]
-w
.I width
-h
.I height
.SH DESCRIPTION
.B blind-spiral-gradient
prints a video with a spiral gradient to stdout,
parameters for each from is read from each frame
in stdin. The gradient is stored in all channels
of the video.
.P
The video in stdin must contain 2 to 5 pixels per
frame (inclusively). The first pixel shall point
to the beginning of the gradient (where the value
is 0) and the second pixel shall point to the end
of the gradient (where the value is 1). In these
pixels, the value of the first channel specifies
the X-position and the value of the second
channel specifies Y-position, the other channels
are ignored. The angle of the vector between these
two pixels determine the angle of the spiral.
.P
If there are four or five pixel in each frame in
stdin, the third and fourth pixels are used to
modify the shape of the spiral so that it is
based on a superellipse instead of a circle.
The first and second channel of third pixel creates
a vector that is normalised. This vector and its
normal creates the basis an imaginary coordinate
system with its origo at the beginning of the spiral.
The superellipse defined by the equation
.RI | x |^ a +| y / m |^ b =1,
where
.I x
is the distance from origo along the vector,
.I y
is the distance from origo along the vector's normal,
.IR a ,
.IR b ,
and
.I m
are the values of the first, second, and third
channels, respectively, in the fourth pixel. and has
the distance 1 from origo at all points on it. If
.IR a ,
.IR b ,
and
.I m
have the values 2, 2, and 1, respectively, these
pixels have no effect on the spiral's shape.
The third and fourth channels in the third pixel
and the fourth channel in the fourth pixel are
ignored.
.P
If there are three or five pixels, the channels,
in order, in the last pixel, specifies the value
.IR a ,
.IR e ,
.IR p ,
and
.IR k ,
whose default values are 0, 1, 1, and 1, respectively.
.I k
is ignored unless
.B -l
is used. If
.B -l
is not used, the spiral is defined by the equation
.IR r = a +( b /( 2\fBpi\fP )^ e ) v ^( ep ).
If
.B -l
is used, the spiral is defined by the equation
.RI log( r / k )= a +(log( b )/( 2\fBpi\fP )^ e ) v ^( ep ).
.I r
is defined as the distance from the center of the
spiral,
.I b
is defined as the distance between the points
specified in the first and second pixel from stdin,
and
.I v
is defined as the angle.
.SH NOTES
Pixels after the end of the gradient have values
larger than 1.
.BR blind-*-wave (1)
commands can be used to put all values between
0 and 1.
.SH OPTIONS
.TP
.B -a
Create a spiral that gones anticlockwise.
.TP
.B -l
Create a logarithmic spiral.
.TP
.BR -w " "\fIwidth\fP
The width of the video, in pixels.
.TP
.BR -h " "\fIheight\fP
The height of the video, in pixels.
.SH SEE ALSO
.BR blind (7),
.BR blind-from-text (7),
.BR blind-double-sine-wave (1),
.BR blind-round-wave (1),
.BR blind-sawtooth-wave (1),
.BR blind-sinc-wave (1),
.BR blind-sine-wave (1),
.BR blind-triangular-wave (1),
.BR blind-cone-gradient (1),
.BR blind-linear-gradient (1),
.BR blind-radial-gradient (1),
.BR blind-square-gradient (1)
.SH AUTHORS
Mattias Andrée
.RI < maandree@kth.se >