[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex
From: |
Tuomas J. Lukka |
Subject: |
[Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex |
Date: |
Wed, 13 Nov 2002 10:14:30 -0500 |
CVSROOT: /cvsroot/gzz
Module name: gzz
Changes by: Tuomas J. Lukka <address@hidden> 02/11/13 10:14:30
Modified files:
Documentation/Manuscripts/Irregu: irregu.tex
Log message:
Shaping, remove geometric interpretation for a while.
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/Documentation/Manuscripts/Irregu/irregu.tex.diff?tr1=1.40&tr2=1.41&r1=text&r2=text
Patches:
Index: gzz/Documentation/Manuscripts/Irregu/irregu.tex
diff -u gzz/Documentation/Manuscripts/Irregu/irregu.tex:1.40
gzz/Documentation/Manuscripts/Irregu/irregu.tex:1.41
--- gzz/Documentation/Manuscripts/Irregu/irregu.tex:1.40 Wed Nov 13
08:26:11 2002
+++ gzz/Documentation/Manuscripts/Irregu/irregu.tex Wed Nov 13 10:14:30 2002
@@ -282,9 +282,7 @@
In this subsection, we formulate the design criteria of the preceding section
mathematically
and discuss
-a simple algorithm for a shape with the desired properties
-and an interesting graphical explanation
-for the algorithm.
+a simple algorithm for a shape with the desired properties.
To start off, assume that we are drawing the torn edge around a given
smooth parametric curve $C = (x(t), y(t))$. The thickness of the roughness of
the
@@ -304,29 +302,36 @@
Although these algorithms seem different and produce different results, there
is
actually a reasonable generalization which yields to a visual explanation.
-Both algorithms can be represented as
+Both algorithms can be represented as a point being inside the final curve if
$$
f(g(p)) < |p-n_C(p)|
$$
where $g(p) = p$ for the sprinkled case and $g(p) = n_C(p)$
-for the attached case.
-
-- the function should change slowly enough so that the dot product of movement
direction and edge normal
- is visible as the ``rippling speed''
+for the attached case. We can immediately define a family of intermediate forms
+with
+$$
+ g_\alpha(p) = \alpha p + (1-\alpha) n_C(p),
+$$
+parametrized by $\alpha$
+with usually $0 \le \alpha \le 1$.
-The jagged shape is defined by a surface $(x, y, f(x,y))$,
-where $0 \le f(x,y) \le 1$ and $(x, y, 1/2)$ is paper location.
-The shape of an edge torn along a line is obtained by intersecting
-the surface with a plane cutting through the tearing line.
-The intersection is then rotated around the tearing line until
-it is horizontal and stretched so that $z = 0$ and $z = 1$ lines
-of the cutting plane correspond to the desired maximum positive
-and negative displacements of the edge.
-
-If the cutting plane is vertical, the shape of the torn edge is attached.
-If the angle between $z = 1/2$ plane and the cutting plane is
-small enough, the plane will cut off maxima of the surface,
-producing a sprinkeld shape.
+A suitable choice for $f$ would be
+a function with noise at different frequencies, but with lower frequencies
+emphasized more, such as turbulence\cite{perlin-noise-intro}.
+
+% The jagged shape is defined by a surface $(x, y, f(x,y))$,
+% where $0 \le f(x,y) \le 1$ and $(x, y, 1/2)$ is paper location.
+% The shape of an edge torn along a line is obtained by intersecting
+% the surface with a plane cutting through the tearing line.
+% The intersection is then rotated around the tearing line until
+% it is horizontal and stretched so that $z = 0$ and $z = 1$ lines
+% of the cutting plane correspond to the desired maximum positive
+% and negative displacements of the edge.
+%
+% If the cutting plane is vertical, the shape of the torn edge is attached.
+% If the angle between $z = 1/2$ plane and the cutting plane is
+% small enough, the plane will cut off maxima of the surface,
+% producing a sprinkeld shape.
\section{Hardware-accelerated implementation}
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, (continued)
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Janne V. Kujala, 2002/11/12
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Janne V. Kujala, 2002/11/12
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Janne V. Kujala, 2002/11/13
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Janne V. Kujala, 2002/11/13
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Tuomas J. Lukka, 2002/11/13
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Janne V. Kujala, 2002/11/13
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Janne V. Kujala, 2002/11/13
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Tuomas J. Lukka, 2002/11/13
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Tuomas J. Lukka, 2002/11/13
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Tuomas J. Lukka, 2002/11/13
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex,
Tuomas J. Lukka <=
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Janne V. Kujala, 2002/11/14
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Tuomas J. Lukka, 2002/11/15
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Janne V. Kujala, 2002/11/17
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Janne V. Kujala, 2002/11/17
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Janne V. Kujala, 2002/11/17
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Janne V. Kujala, 2002/11/18
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Janne V. Kujala, 2002/11/18
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Janne V. Kujala, 2002/11/19
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Janne V. Kujala, 2002/11/19
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Janne V. Kujala, 2002/11/19