Blender V4.3
curves_draw.cc File Reference
#include "DNA_curve_types.h"
#include "BLI_math_matrix.h"
#include "BLI_math_rotation.h"
#include "BLI_math_vector.h"
#include "BLI_mempool.h"
#include "BKE_attribute.hh"
#include "BKE_context.hh"
#include "BKE_curves.hh"
#include "BKE_object_types.hh"
#include "BKE_report.hh"
#include "DEG_depsgraph.hh"
#include "WM_api.hh"
#include "ED_curves.hh"
#include "ED_screen.hh"
#include "ED_space_api.hh"
#include "ED_view3d.hh"
#include "GPU_batch.hh"
#include "GPU_batch_presets.hh"
#include "GPU_immediate.hh"
#include "GPU_immediate_util.hh"
#include "GPU_matrix.hh"
#include "UI_resources.hh"
#include "RNA_access.hh"
#include "RNA_define.hh"
#include "RNA_enum_types.hh"
#include "RNA_prototypes.hh"
#include "curve_fit_nd.h"

Go to the source code of this file.

Classes

struct  blender::ed::curves::StrokeElem
 
struct  blender::ed::curves::CurveDrawData
 

Namespaces

namespace  blender
 
namespace  blender::ed
 
namespace  blender::ed::curves
 

Macros

#define STROKE_SAMPLE_DIST_MIN_PX   1
 
#define STROKE_SAMPLE_DIST_MAX_PX   3
 
#define STROKE_CYCLIC_DIST_PX   8
 

Functions

static void blender::ed::curves::curve_draw_stroke_3d (const bContext *, ARegion *, void *arg)
 
static void blender::ed::curves::curve_draw_event_add (wmOperator *op, const wmEvent *event)
 
static void blender::ed::curves::curve_draw_event_add_first (wmOperator *op, const wmEvent *event)
 
static void blender::ed::curves::curve_draw_exit (wmOperator *op)
 
static bool blender::ed::curves::curve_draw_init (bContext *C, wmOperator *op, bool is_invoke)
 
static void blender::ed::curves::create_Bezier (bke::CurvesGeometry &curves, bke::MutableAttributeAccessor &attributes, const CurveDrawData *cdd, const int curve_index, const bool is_cyclic, const uint cubic_spline_len, const int dims, const int radius_index, const float radius_max, const float *cubic_spline, const uint *corners_index, const uint corners_index_len)
 
static void blender::ed::curves::create_NURBS (bke::CurvesGeometry &curves, bke::MutableAttributeAccessor &attributes, const CurveDrawData *cdd, const int curve_index, const bool is_cyclic, const uint cubic_spline_len, const int dims, const int radius_index, const float radius_max, const float *cubic_spline)
 
static int blender::ed::curves::curves_draw_exec (bContext *C, wmOperator *op)
 
static int blender::ed::curves::curves_draw_invoke (bContext *C, wmOperator *op, const wmEvent *event)
 
static void blender::ed::curves::curve_draw_cancel (bContext *, wmOperator *op)
 
static void blender::ed::curves::curve_draw_exec_precalc (wmOperator *op)
 
static int blender::ed::curves::curves_draw_modal (bContext *C, wmOperator *op, const wmEvent *event)
 
Operator/Stroke Conversion
static void blender::ed::curves::curve_draw_stroke_to_operator_elem (wmOperator *op, const StrokeElem *selem)
 
static void blender::ed::curves::curve_draw_stroke_from_operator_elem (wmOperator *op, PointerRNA *itemptr)
 
static void blender::ed::curves::curve_draw_stroke_to_operator (wmOperator *op)
 
static void blender::ed::curves::curve_draw_stroke_from_operator (wmOperator *op)
 
Operators
void blender::ed::curves::CURVES_OT_draw (wmOperatorType *ot)
 

StrokeElem / #RNA_OperatorStrokeElement Conversion Functions

enum  blender::ed::curves::CurveDrawState { blender::ed::curves::CURVE_DRAW_IDLE = 0 , blender::ed::curves::CURVE_DRAW_PAINTING = 1 }
 
static float blender::ed::curves::stroke_elem_radius_from_pressure (const CurveDrawData *cdd, const float pressure)
 
static float blender::ed::curves::stroke_elem_radius (const CurveDrawData *cdd, const StrokeElem *selem)
 
static void blender::ed::curves::stroke_elem_pressure_set (const CurveDrawData *cdd, StrokeElem *selem, float pressure)
 
static void blender::ed::curves::stroke_elem_interp (StrokeElem *selem_out, const StrokeElem *selem_a, const StrokeElem *selem_b, float t)
 
static bool blender::ed::curves::stroke_elem_project (const CurveDrawData *cdd, const int mval_i[2], const float mval_fl[2], float surface_offset, const float radius, float r_location_world[3], float r_normal_world[3])
 
static bool blender::ed::curves::stroke_elem_project_fallback (const CurveDrawData *cdd, const int mval_i[2], const float mval_fl[2], const float surface_offset, const float radius, const float location_fallback_depth[3], float r_location_world[3], float r_location_local[3], float r_normal_world[3], float r_normal_local[3])
 
static bool blender::ed::curves::stroke_elem_project_fallback_elem (const CurveDrawData *cdd, const float location_fallback_depth[3], StrokeElem *selem)
 

Macro Definition Documentation

◆ STROKE_CYCLIC_DIST_PX

#define STROKE_CYCLIC_DIST_PX   8

Definition at line 51 of file curves_draw.cc.

◆ STROKE_SAMPLE_DIST_MAX_PX

#define STROKE_SAMPLE_DIST_MAX_PX   3

Definition at line 48 of file curves_draw.cc.

◆ STROKE_SAMPLE_DIST_MIN_PX

#define STROKE_SAMPLE_DIST_MIN_PX   1

Definition at line 47 of file curves_draw.cc.