[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex
From: |
Janne V. Kujala |
Subject: |
[Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex |
Date: |
Sat, 30 Nov 2002 02:59:28 -0500 |
CVSROOT: /cvsroot/gzz
Module name: gzz
Changes by: Janne V. Kujala <address@hidden> 02/11/30 02:59:28
Modified files:
Documentation/Manuscripts/Irregu: irregu.tex
Log message:
reorg, comment out stuff
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/Documentation/Manuscripts/Irregu/irregu.tex.diff?tr1=1.97&tr2=1.98&r1=text&r2=text
Patches:
Index: gzz/Documentation/Manuscripts/Irregu/irregu.tex
diff -u gzz/Documentation/Manuscripts/Irregu/irregu.tex:1.97
gzz/Documentation/Manuscripts/Irregu/irregu.tex:1.98
--- gzz/Documentation/Manuscripts/Irregu/irregu.tex:1.97 Fri Nov 29
14:27:10 2002
+++ gzz/Documentation/Manuscripts/Irregu/irregu.tex Sat Nov 30 02:59:28 2002
@@ -478,6 +478,7 @@
And more importantly, texture shading is not implemented on low-end
hardware.
XXX: we want to be able to draw connected tear-out shapes.
+XXX: ebbing?
\if 0
We split the edge of the original shape to multiple pieces,
@@ -569,24 +570,17 @@
and the undistorted shape $A$ is the region inside the spine $E(x,1/2)$.
Although these algorithms seem different and produce different results,
-there is actually a general formulation in the one-dimensional case.
-Both algorithms can be seen as computing the intersection of a
-\emph{ripple volume}, the volume below the surface $(\p, f(\p))$,
- and a \emph{cutting surface} $(E(x,g(y)), y)$,
-and then mapping the intersection on the envelope $E(x,y)$
-using the parameters of the cutting surface.
-
-The function $g$ (actually its inverse) defines the profile of the
-cutting surface, with $g(y) = y$ for the scattered case and $g(y) = 1/2$,
-i.e., a vertical surface, for the connected case.
-Other choices for $g$ are possible, but not very useful, because they
-correspond to just different distortions of the same basic shape.
-
-Using the same parametrization for both surfaces, a point $E(x,y)$
+they can both be formulated as offsetting in the one-dimensional case:
+a point $E(x,y)$
is inside the tear-out, iff
\begin{equation} \label{eq:inside}
- f(E(x,g(y))) \ge y.
+ f(E(x,g(y))) \ge y,
\end{equation}
+where $g(y) = y$ for the scattered case and $g(y) = 1/2$.
+The function $g(y)$ specifies how the ``offset texture'' is mapped.
+Other choices for $g$ are possible, but not very useful, because they
+correspond to just different distortions of the same basic shape.
+
For more variation on edge shapes, the inequality can be
generalized to
\begin{equation} \label{eq:inside2}
@@ -752,6 +746,20 @@
\subsubsection{Pre-computed borders}
+XXX:
+
+Both algorithms can be seen as computing the intersection of a
+\emph{ripple volume}, the volume below the surface $(\p, f(\p))$,
+ and a \emph{cutting surface} $(E(x,g(y)), y)$,
+and then mapping the intersection on the envelope $E(x,y)$
+using the parameters of the cutting surface.
+
+The function $g$ (actually its inverse) defines the profile of the
+cutting surface, with $g(y) = y$ for the scattered case and $g(y) = 1/2$,
+i.e., a vertical surface, for the connected case.
+
+Using the same parametrization for both surfaces,
+
Recall that the torn shape can be defined as the intersection
of the ripple volume, i.e., the volume below $(x,y,f(x,y))$,
and a cutting surface $(x,g(y),y)$,
@@ -839,6 +847,9 @@
The edge texture can be one texel wide (if the image of the
edge is drawn horizontally), allowing for large height and
so non-photorealistic scaling to large scales.
+Note that it still has to be a 2D texture for the mipmapping trick
+to work.
+
Increasing the border width scaling exponent from 0 makes the
border width less consistent with sloped offset.
@@ -918,6 +929,7 @@
inverts the torn shape between them, breaking the principle of
tying ripple shape to canvas location.
+\if0
The problem can be fully solved with a vector valued ripple function
$F({\p})$, $\Vert F({\p})\Vert \le 1$,
using $f({\p}) = (1 + N \cdot F({\p}))/2$,
@@ -932,7 +944,7 @@
pre-computed borders method by pre-computing the dot product, too.
However, even the connected case then requires a full 360 degree span
of pre-computed outer surfaces.
-
+\fi
\if0
Content drawn using stencil.
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, (continued)
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Janne V. Kujala, 2002/11/28
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Janne V. Kujala, 2002/11/29
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Janne V. Kujala, 2002/11/29
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Janne V. Kujala, 2002/11/29
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Janne V. Kujala, 2002/11/29
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Janne V. Kujala, 2002/11/29
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Janne V. Kujala, 2002/11/29
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Tuomas J. Lukka, 2002/11/29
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Tuomas J. Lukka, 2002/11/29
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Tuomas J. Lukka, 2002/11/29
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex,
Janne V. Kujala <=
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Janne V. Kujala, 2002/11/30
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Tuomas J. Lukka, 2002/11/30
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Tuomas J. Lukka, 2002/11/30
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Tuomas J. Lukka, 2002/11/30
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Tuomas J. Lukka, 2002/11/30
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Tuomas J. Lukka, 2002/11/30
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Tuomas J. Lukka, 2002/11/30
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Tuomas J. Lukka, 2002/11/30
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Tuomas J. Lukka, 2002/11/30
- [Gzz-commits] gzz/Documentation/Manuscripts/Irregu irregu.tex, Tuomas J. Lukka, 2002/11/30