Changeset View
Changeset View
Standalone View
Standalone View
source/blender/editors/sculpt_paint/sculpt_intern.h
| Show First 20 Lines • Show All 335 Lines • ▼ Show 20 Lines | |||||
| } SculptThreadedTaskData; | } SculptThreadedTaskData; | ||||
| /*************** Brush testing declarations ****************/ | /*************** Brush testing declarations ****************/ | ||||
| typedef struct SculptBrushTest { | typedef struct SculptBrushTest { | ||||
| float radius_squared; | float radius_squared; | ||||
| float radius; | float radius; | ||||
| float location[3]; | float location[3]; | ||||
| float dist; | float dist; | ||||
| int mirror_symmetry_pass; | ePaintSymmetryFlags mirror_symmetry_pass; | ||||
| int radial_symmetry_pass; | int radial_symmetry_pass; | ||||
| float symm_rot_mat_inv[4][4]; | float symm_rot_mat_inv[4][4]; | ||||
| /* For circle (not sphere) projection. */ | /* For circle (not sphere) projection. */ | ||||
| float plane_view[4]; | float plane_view[4]; | ||||
| /* Some tool code uses a plane for its calculations. */ | /* Some tool code uses a plane for its calculations. */ | ||||
| ▲ Show 20 Lines • Show All 198 Lines • ▼ Show 20 Lines | typedef struct StrokeCache { | ||||
| struct SculptRakeData rake_data; | struct SculptRakeData rake_data; | ||||
| /* Face Sets */ | /* Face Sets */ | ||||
| int paint_face_set; | int paint_face_set; | ||||
| /* Symmetry index between 0 and 7 bit combo 0 is Brush only; | /* Symmetry index between 0 and 7 bit combo 0 is Brush only; | ||||
| * 1 is X mirror; 2 is Y mirror; 3 is XY; 4 is Z; 5 is XZ; 6 is YZ; 7 is XYZ */ | * 1 is X mirror; 2 is Y mirror; 3 is XY; 4 is Z; 5 is XZ; 6 is YZ; 7 is XYZ */ | ||||
| int symmetry; | int symmetry; | ||||
| int mirror_symmetry_pass; /* The symmetry pass we are currently on between 0 and 7. */ | ePaintSymmetryFlags | ||||
| mirror_symmetry_pass; /* The symmetry pass we are currently on between 0 and 7. */ | |||||
| float true_view_normal[3]; | float true_view_normal[3]; | ||||
| float view_normal[3]; | float view_normal[3]; | ||||
| /* sculpt_normal gets calculated by calc_sculpt_normal(), then the | /* sculpt_normal gets calculated by calc_sculpt_normal(), then the | ||||
| * sculpt_normal_symm gets updated quickly with the usual symmetry | * sculpt_normal_symm gets updated quickly with the usual symmetry | ||||
| * transforms */ | * transforms */ | ||||
| float sculpt_normal[3]; | float sculpt_normal[3]; | ||||
| float sculpt_normal_symm[3]; | float sculpt_normal_symm[3]; | ||||
| ▲ Show 20 Lines • Show All 953 Lines • ▼ Show 20 Lines | bool SCULPT_pbvh_calc_area_normal(const struct Brush *brush, | ||||
| int totnode, | int totnode, | ||||
| bool use_threading, | bool use_threading, | ||||
| float r_area_no[3]); | float r_area_no[3]); | ||||
| /** | /** | ||||
| * Flip all the edit-data across the axis/axes specified by \a symm. | * Flip all the edit-data across the axis/axes specified by \a symm. | ||||
| * Used to calculate multiple modifications to the mesh when symmetry is enabled. | * Used to calculate multiple modifications to the mesh when symmetry is enabled. | ||||
| */ | */ | ||||
| void SCULPT_cache_calc_brushdata_symm(StrokeCache *cache, char symm, char axis, float angle); | void SCULPT_cache_calc_brushdata_symm(StrokeCache *cache, | ||||
| ePaintSymmetryFlags symm, | |||||
| char axis, | |||||
| float angle); | |||||
| void SCULPT_cache_free(StrokeCache *cache); | void SCULPT_cache_free(StrokeCache *cache); | ||||
| /* -------------------------------------------------------------------- */ | /* -------------------------------------------------------------------- */ | ||||
| /** \name Sculpt Undo | /** \name Sculpt Undo | ||||
| * \{ */ | * \{ */ | ||||
| SculptUndoNode *SCULPT_undo_push_node(Object *ob, PBVHNode *node, SculptUndoType type); | SculptUndoNode *SCULPT_undo_push_node(Object *ob, PBVHNode *node, SculptUndoType type); | ||||
| SculptUndoNode *SCULPT_undo_get_node(PBVHNode *node, SculptUndoType type); | SculptUndoNode *SCULPT_undo_get_node(PBVHNode *node, SculptUndoType type); | ||||
| ▲ Show 20 Lines • Show All 367 Lines • Show Last 20 Lines | |||||