Blender V5.0
grease_pencil_utils.cc File Reference
#include "BKE_anonymous_attribute_id.hh"
#include "BKE_attribute.hh"
#include "BKE_brush.hh"
#include "BKE_colortools.hh"
#include "BKE_context.hh"
#include "BKE_curves_utils.hh"
#include "BKE_deform.hh"
#include "BKE_grease_pencil.hh"
#include "BKE_lib_id.hh"
#include "BKE_material.hh"
#include "BKE_paint.hh"
#include "BKE_report.hh"
#include "BKE_scene.hh"
#include "BLI_array_utils.hh"
#include "BLI_bounds.hh"
#include "BLI_listbase.h"
#include "BLI_math_geom.h"
#include "BLI_math_numbers.hh"
#include "BLI_math_vector.hh"
#include "BLI_vector_set.hh"
#include "DNA_brush_types.h"
#include "DNA_material_types.h"
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
#include "DNA_view3d_types.h"
#include "DEG_depsgraph_query.hh"
#include "GEO_merge_layers.hh"
#include "RNA_prototypes.hh"
#include "ED_curves.hh"
#include "ED_grease_pencil.hh"
#include "ED_view3d.hh"

Go to the source code of this file.

Namespaces

namespace  blender
namespace  blender::ed
namespace  blender::ed::greasepencil

Functions

static float blender::ed::greasepencil::get_frame_falloff (const bool use_multi_frame_falloff, const int frame_number, const int active_frame, const std::optional< Bounds< int > > frame_bounds, const CurveMapping *falloff_curve)
static std::optional< Bounds< int > > blender::ed::greasepencil::get_selected_frame_number_bounds (const bke::greasepencil::Layer &layer)
static int blender::ed::greasepencil::get_active_frame_for_falloff (const bke::greasepencil::Layer &layer, const std::optional< Bounds< int > > frame_bounds, const int current_frame)
static std::optional< int > blender::ed::greasepencil::get_frame_id (const bke::greasepencil::Layer &layer, const GreasePencilFrame &frame, const int frame_number, const int frame_index, const int current_frame, const int current_frame_index, const int last_frame, const int last_frame_index, const bool use_multi_frame_editing, const bool do_onion_skinning, const bool is_before_first, const GreasePencilOnionSkinningSettings onion_settings)
static Array< std::pair< int, int > > blender::ed::greasepencil::get_visible_frames_for_layer (const GreasePencil &grease_pencil, const bke::greasepencil::Layer &layer, const int current_frame, const bool use_multi_frame_editing, const bool do_onion_skinning)
static Array< int > blender::ed::greasepencil::get_editable_frames_for_layer (const GreasePencil &grease_pencil, const bke::greasepencil::Layer &layer, const int current_frame, const bool use_multi_frame_editing)
Vector< MutableDrawingInfoblender::ed::greasepencil::retrieve_editable_drawings (const Scene &scene, GreasePencil &grease_pencil)
Vector< MutableDrawingInfoblender::ed::greasepencil::retrieve_editable_drawings_with_falloff (const Scene &scene, GreasePencil &grease_pencil)
Array< Vector< MutableDrawingInfo > > blender::ed::greasepencil::retrieve_editable_drawings_grouped_per_frame (const Scene &scene, GreasePencil &grease_pencil)
Vector< MutableDrawingInfoblender::ed::greasepencil::retrieve_editable_drawings_from_layer (const Scene &scene, GreasePencil &grease_pencil, const blender::bke::greasepencil::Layer &layer)
Vector< MutableDrawingInfoblender::ed::greasepencil::retrieve_editable_drawings_from_layer_with_falloff (const Scene &scene, GreasePencil &grease_pencil, const blender::bke::greasepencil::Layer &layer)
Vector< DrawingInfoblender::ed::greasepencil::retrieve_visible_drawings (const Scene &scene, const GreasePencil &grease_pencil, const bool do_onion_skinning)
static VectorSet< int > blender::ed::greasepencil::get_locked_material_indices (Object &object)
static VectorSet< int > blender::ed::greasepencil::get_hidden_material_indices (Object &object)
static VectorSet< int > blender::ed::greasepencil::get_fill_material_indices (Object &object)
IndexMask blender::ed::greasepencil::retrieve_editable_strokes (Object &object, const bke::greasepencil::Drawing &drawing, int layer_index, IndexMaskMemory &memory)
IndexMask blender::ed::greasepencil::retrieve_editable_fill_strokes (Object &object, const bke::greasepencil::Drawing &drawing, int layer_index, IndexMaskMemory &memory)
IndexMask blender::ed::greasepencil::retrieve_editable_strokes_by_material (Object &object, const bke::greasepencil::Drawing &drawing, const int mat_i, IndexMaskMemory &memory)
IndexMask blender::ed::greasepencil::retrieve_editable_points (Object &object, const bke::greasepencil::Drawing &drawing, int layer_index, IndexMaskMemory &memory)
IndexMask blender::ed::greasepencil::retrieve_editable_elements (Object &object, const MutableDrawingInfo &info, const bke::AttrDomain selection_domain, IndexMaskMemory &memory)
IndexMask blender::ed::greasepencil::retrieve_visible_strokes (Object &object, const bke::greasepencil::Drawing &drawing, IndexMaskMemory &memory)
IndexMask blender::ed::greasepencil::retrieve_visible_points (Object &object, const bke::greasepencil::Drawing &drawing, IndexMaskMemory &memory)
IndexMask blender::ed::greasepencil::retrieve_visible_bezier_strokes (Object &object, const bke::greasepencil::Drawing &drawing, IndexMaskMemory &memory)
IndexMask blender::ed::greasepencil::retrieve_visible_bezier_points (Object &object, const bke::greasepencil::Drawing &drawing, IndexMaskMemory &memory)
IndexMask blender::ed::greasepencil::retrieve_visible_bezier_handle_strokes (Object &object, const bke::greasepencil::Drawing &drawing, const int handle_display, IndexMaskMemory &memory)
IndexMask blender::ed::greasepencil::retrieve_visible_bezier_handle_points (Object &object, const bke::greasepencil::Drawing &drawing, const int layer_index, const int handle_display, IndexMaskMemory &memory)
IndexMask blender::ed::greasepencil::retrieve_visible_bezier_handle_elements (Object &object, const bke::greasepencil::Drawing &drawing, const int layer_index, const bke::AttrDomain selection_domain, const int handle_display, IndexMaskMemory &memory)
IndexMask blender::ed::greasepencil::retrieve_editable_and_selected_strokes (Object &object, const bke::greasepencil::Drawing &drawing, int layer_index, IndexMaskMemory &memory)
IndexMask blender::ed::greasepencil::retrieve_editable_and_selected_fill_strokes (Object &object, const bke::greasepencil::Drawing &drawing, int layer_index, IndexMaskMemory &memory)
IndexMask blender::ed::greasepencil::retrieve_editable_and_selected_points (Object &object, const bke::greasepencil::Drawing &drawing, int layer_index, IndexMaskMemory &memory)
IndexMask blender::ed::greasepencil::retrieve_editable_and_selected_elements (Object &object, const bke::greasepencil::Drawing &drawing, int layer_index, const bke::AttrDomain selection_domain, IndexMaskMemory &memory)
IndexMask blender::ed::greasepencil::retrieve_editable_and_all_selected_points (Object &object, const bke::greasepencil::Drawing &drawing, int layer_index, int handle_display, IndexMaskMemory &memory)
bool blender::ed::greasepencil::has_editable_layer (const GreasePencil &grease_pencil)
Array< PointTransferDatablender::ed::greasepencil::compute_topology_change (const bke::CurvesGeometry &src, bke::CurvesGeometry &dst, const Span< Vector< PointTransferData > > src_to_dst_points, const bool keep_caps)
static float blender::ed::greasepencil::pixel_radius_to_world_space_radius (const RegionView3D *rv3d, const ARegion *region, const float3 center, const float4x4 to_world, const float pixel_radius)
static float blender::ed::greasepencil::brush_radius_at_location (const RegionView3D *rv3d, const ARegion *region, const Brush *brush, const float3 location, const float4x4 to_world)
float blender::ed::greasepencil::radius_from_input_sample (const RegionView3D *rv3d, const ARegion *region, const Brush *brush, const float pressure, const float3 &location, const float4x4 &to_world, const BrushGpencilSettings *settings)
float blender::ed::greasepencil::opacity_from_input_sample (const float pressure, const Brush *brush, const BrushGpencilSettings *settings)
wmOperatorStatus blender::ed::greasepencil::grease_pencil_draw_operator_invoke (bContext *C, wmOperator *op, const bool use_duplicate_previous_key)
float4x2 blender::ed::greasepencil::calculate_texture_space (const Scene *scene, const ARegion *region, const float2 &mouse, const DrawingPlacement &placement)
GreasePencilblender::ed::greasepencil::from_context (bContext &C)
void blender::ed::greasepencil::add_single_curve (bke::CurvesGeometry &curves, const bool at_end)
void blender::ed::greasepencil::resize_single_curve (bke::CurvesGeometry &curves, const bool at_end, const int new_points_num)
void blender::ed::greasepencil::apply_eval_grease_pencil_data (const GreasePencil &eval_grease_pencil, const int eval_frame, const IndexMask &orig_layers, GreasePencil &orig_grease_pencil)
bool blender::ed::greasepencil::remove_fill_guides (bke::CurvesGeometry &curves)