3 <title>Polyline sweeps - Sketch
</title>
4 <meta http-equiv=
"Content-Type" content=
"text/html">
5 <meta name=
"description" content=
"Sketch">
6 <meta name=
"generator" content=
"makeinfo 4.7">
7 <link title=
"Top" rel=
"start" href=
"index.html#Top">
8 <link rel=
"up" href=
"Swept-objects.html#Swept-objects" title=
"Swept objects">
9 <link rel=
"prev" href=
"Point-sweeps.html#Point-sweeps" title=
"Point sweeps">
10 <link rel=
"next" href=
"Nested-sweeps.html#Nested-sweeps" title=
"Nested sweeps">
11 <link href=
"http://www.gnu.org/software/texinfo/" rel=
"generator-home" title=
"Texinfo Homepage">
13 Copyright (C) 2005, 2006, 2007, 2008 Eugene K. Ressler.
15 This manual is for `sketch', version 0.2 (build 161),
16 Tuesday, September 08, 2009, a program that converts descriptions of simple
17 three-dimensional scenes into static drawings. This version generates
18 `PSTricks' or `PGF/TikZ' code suitable for use with the
19 TeX document processing system.
21 `Sketch' is free software; you can redistribute it and/or modify
22 it under the terms of the GNU General Public License as published by
23 the Free Software Foundation; either version 3, or (at your option)
26 Sketch is distributed in the hope that it will be useful,
27 but WITHOUT ANY WARRANTY; without even the implied warranty of
28 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
29 GNU General Public License for more details.
31 You should have received a copy of the GNU General Public License
32 along with `sketch'; see the file COPYING.txt. If not, see
33 http://www.gnu.org/copyleft.-->
34 <meta http-equiv=
"Content-Style-Type" content=
"text/css">
35 <style type=
"text/css"><!--
36 pre
.display
{ font-family:inherit
}
37 pre
.format
{ font-family:inherit
}
38 pre
.smalldisplay
{ font-family:inherit
; font-size:smaller
}
39 pre
.smallformat
{ font-family:inherit
; font-size:smaller
}
40 pre
.smallexample
{ font-size:smaller
}
41 pre
.smalllisp
{ font-size:smaller
}
42 span
.sc
{ font-variant:small-caps
}
43 span
.roman
{ font-family: serif
; font-weight: normal
; }
49 <a name=
"Polyline-sweeps"></a>Next:
<a rel=
"next" accesskey=
"n" href=
"Nested-sweeps.html#Nested-sweeps">Nested sweeps
</a>,
50 Previous:
<a rel=
"previous" accesskey=
"p" href=
"Point-sweeps.html#Point-sweeps">Point sweeps
</a>,
51 Up:
<a rel=
"up" accesskey=
"u" href=
"Swept-objects.html#Swept-objects">Swept objects
</a>
55 <!-- node-name, next, previous, up -->
56 <h4 class=
"subsection">2.7.2 Polyline sweeps
</h4>
58 <p>Sweeping a polyline produces a
59 <a name=
"index-line-sweep-105"></a><a name=
"index-swept-line-106"></a><a name=
"index-surface-107"></a>surface composed of many faces.
60 <a name=
"index-faces-108"></a>The unbroken helix in the
61 example
<a href=
"Helix-with-cull-set-false-then-true.html#Helix-with-cull-set-false-then-true">Helix with cull set false then true
</a> is produced by this
62 code (plus a surrounding
<tt>put
</tt> rotation to make an interesting
63 view; this has been omitted).
64 <a name=
"index-def-109"></a><a name=
"index-sweep-110"></a><a name=
"index-rotate-111"></a><a name=
"index-translate-112"></a><a name=
"index-cull-113"></a><a name=
"index-linewidth-114"></a>
65 <pre class=
"verbatim">
69 rotate(
10, (
0,
0,
0), [K]) then translate(
1/
6 * [K])
70 } line[linewidth=
2pt](-
1,
0)(
1,
0)
72 Again,
60 segments of the helix
73 <a name=
"index-helix-115"></a>are produced by connecting
61
74 instances of the swept line. Options
75 <a name=
"index-options_002c-sweep-116"></a>applied to the sweep, here
76 <tt>cull=false
</tt>, are treated as options for the generated polygon
77 or polyline. Options of the swept line itself, here
78 <tt>linewidth=
2pt
</tt>, are ignored, though with a warning. This
79 <tt>def
</tt> is a
<dfn>vector
</dfn> definition,
80 <a name=
"index-definition_002c-vector-117"></a><a name=
"index-vector-definition-118"></a>which must be referenced
81 with square brackets, e.g.
<tt>[foo]
</tt>.
82 <a name=
"index-reference_002c-vector-119"></a><a name=
"index-_005bfoo_005d_0040r_007b_002c-vector-reference_007d-120"></a>