Blender V5.0
gpencil_geom_legacy.cc File Reference
#include <cmath>
#include <cstdlib>
#include <cstring>
#include "MEM_guardedalloc.h"
#include "BLI_listbase.h"
#include "BLI_math_vector.h"
#include "BLI_math_vector_types.hh"
#include "BLI_polyfill_2d.h"
#include "BLI_span.hh"
#include "DNA_gpencil_legacy_types.h"
#include "DNA_mesh_types.h"
#include "DNA_meshdata_types.h"
#include "BKE_gpencil_geom_legacy.h"
#include "BKE_gpencil_legacy.h"

Go to the source code of this file.

Classes

struct  tGPDeleteIsland

Typedefs

using float3

Functions

void BKE_gpencil_stroke_2d_flat (const bGPDspoint *points, int totpoints, float(*points2d)[2], int *r_direction)
static void gpencil_calc_stroke_fill_uv (const float(*points2d)[2], bGPDstroke *gps, const float minv[2], const float maxv[2], float(*r_uv)[2])
Stroke Fill Triangulate
void BKE_gpencil_stroke_fill_triangulate (bGPDstroke *gps)
void BKE_gpencil_stroke_uv_update (bGPDstroke *gps)
void BKE_gpencil_stroke_geometry_update (bGPdata *, bGPDstroke *gps)
static void gpencil_stroke_join_islands (bGPdata *gpd, bGPDframe *gpf, bGPDstroke *gps_first, bGPDstroke *gps_last)
bGPDstrokeBKE_gpencil_stroke_delete_tagged_points (bGPdata *gpd, bGPDframe *gpf, bGPDstroke *gps, bGPDstroke *next_stroke, int tag_flags, const bool select, const bool flat_cap, const int limit)

Typedef Documentation

◆ float3

Definition at line 619 of file BLI_math_vector_types.hh.

Function Documentation

◆ BKE_gpencil_stroke_2d_flat()

void BKE_gpencil_stroke_2d_flat ( const bGPDspoint * points,
int totpoints,
float(*) points2d[2],
int * r_direction )

◆ BKE_gpencil_stroke_delete_tagged_points()

bGPDstroke * BKE_gpencil_stroke_delete_tagged_points ( struct bGPdata * gpd,
struct bGPDframe * gpf,
struct bGPDstroke * gps,
struct bGPDstroke * next_stroke,
int tag_flags,
bool select,
bool flat_cap,
int limit )

◆ BKE_gpencil_stroke_fill_triangulate()

◆ BKE_gpencil_stroke_geometry_update()

void BKE_gpencil_stroke_geometry_update ( struct bGPdata * gpd,
struct bGPDstroke * gps )

Recalc all internal geometry data for the stroke

Parameters
gpdGrease pencil data-block
gpsGrease pencil stroke

Definition at line 224 of file gpencil_geom_legacy.cc.

References BKE_gpencil_stroke_fill_triangulate(), BKE_gpencil_stroke_uv_update(), MEM_SAFE_FREE, bGPDstroke::tot_triangles, bGPDstroke::totpoints, and bGPDstroke::triangles.

Referenced by BKE_gpencil_stroke_delete_tagged_points(), blo_do_versions_280(), and gpencil_stroke_join_islands().

◆ BKE_gpencil_stroke_uv_update()

void BKE_gpencil_stroke_uv_update ( struct bGPDstroke * gps)

Update Stroke UV data.

Parameters
gpsGrease pencil stroke

Definition at line 209 of file gpencil_geom_legacy.cc.

References i, len_v3v3(), bGPDstroke::points, bGPDstroke::totpoints, bGPDspoint::uv_fac, and x.

Referenced by BKE_gpencil_stroke_geometry_update().

◆ gpencil_calc_stroke_fill_uv()

void gpencil_calc_stroke_fill_uv ( const float(*) points2d[2],
bGPDstroke * gps,
const float minv[2],
const float maxv[2],
float(*) r_uv[2] )
static

◆ gpencil_stroke_join_islands()