diff options
author | Matt Ebb <matt@mke3.net> | 2006-08-13 11:37:51 +0400 |
---|---|---|
committer | Matt Ebb <matt@mke3.net> | 2006-08-13 11:37:51 +0400 |
commit | d3028ec70d49bb7be62aa942cb7b111012ac95e2 (patch) | |
tree | 396f41a33b2d713ca8a8658affd4bb3064decb97 /source/blender/makesdna/DNA_curve_types.h | |
parent | 515fe83f97c37cdf920e1e2fb1ad3479cb8d781c (diff) |
* Shrink/Fatten for bevelled curves
This is a much faster and easier way to give a bevelled curve a taper, without
using taper curves. Each point on a curve now has a 'radius' value that you can
shrink and fatten using Alt S, which will influence the taper when the curve is
bevelled (either with a bevob, or with front/back turned off and a bevel dept
set). Alt S shrinks and fattens the selected points in an interactive transform,
and you can set an absolute radius for selected points with 'Set Radius' in the
curve specials menu.
See demo: http://mke3.net/blender/etc/curve_shrinkfatten-h264.mov
This can be a quick way to create revolved surfaces (eg.
http://mke3.net/blender/etc/wineglass-h264.mov ) and it would be very
interesting to use this radius value in other tools, such as a 'freehand curve'
tool that would let you draw a curve freehand, with the radius affected by pen
pressure, or even using the radius at each point to control curve guides for
particles more precisely, rather than the continous maxdist.
Diffstat (limited to 'source/blender/makesdna/DNA_curve_types.h')
-rw-r--r-- | source/blender/makesdna/DNA_curve_types.h | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/source/blender/makesdna/DNA_curve_types.h b/source/blender/makesdna/DNA_curve_types.h index 4d0cca68ad3..04b7b4804b7 100644 --- a/source/blender/makesdna/DNA_curve_types.h +++ b/source/blender/makesdna/DNA_curve_types.h @@ -89,7 +89,7 @@ typedef struct BevPoint { */ typedef struct BezTriple { float vec[3][3]; - float alfa, weight, pad; + float alfa, weight, radius; /* alfa: tilt in 3D View, weight: used for softbody goal weight, radius: for bevel tapering */ short h1, h2; char f1, f2, f3, hide; } BezTriple; @@ -97,17 +97,18 @@ typedef struct BezTriple { /* note; alfa location in struct is abused by Key system */ typedef struct BPoint { float vec[4]; - float alfa, weight; + float alfa, weight; /* alfa: tilt in 3D View, weight: used for softbody goal weight */ short f1, hide; + float radius, pad; /* user-set radius per point for bevelling etc */ } BPoint; typedef struct Nurb { - struct Nurb *next, *prev; + struct Nurb *next, *prev; /* multiple nurbs per curve object are allowed */ short type; - short mat_nr; /* index into material list */ + short mat_nr; /* index into material list */ short hide, flag; - short pntsu, pntsv; - short resolu, resolv; + short pntsu, pntsv; /* number of points in the U or V directions */ + short resolu, resolv; /* tesselation resolution in the U or V directions */ short orderu, orderv; short flagu, flagv; |