User:Filedescriptor/Work/grease pencil curves
Grease Pencil Curves
Curves were first introduced to the grease pencil workflow with the Google Summer of Code 2020 project: Editing grease pencil strokes using curves. The goal of this project was to create a tool that would allow the user to select strokes, edit them with beziér curve handles, and then confirm the action. During development, the tool evolved into its own mode: Curve Edit Mode. The feature made it into Blender 2.92 (see the release notes for more information).
Here are some of the most important files and functions related to curves in grease pencil.
- Operators that are specific to grease pencil curves like "Set Handle Type" are located in
- Blender kernel functions related to grease pencil curves can be found in
blender/source/blender/blenkernel/intern/gpencil_curve.c. This is for example where the functions for curve <-> stroke conversion are located.
- The DNA structs for the curve data are declared in
blender/source/blender/makesdna/DNA_gpencil_types.hand are called
bGPDcurvefor the curve and
bGPDcurve_pointfor the individual points. The handles are stored as a
BezTriple. Instead of defining the curve segments the "traditional" way with 4 control points, Blender stores the handle itself (1 control point and 2 handles from the previous and the next curve segment).