Changeset View
Changeset View
Standalone View
Standalone View
source/blender/editors/sculpt_paint/sculpt.c
- This file is larger than 256 KB, so syntax highlighting is disabled by default.
| Show First 20 Lines • Show All 4,080 Lines • ▼ Show 20 Lines | |||||
| SculptPoseIKChain *sculpt_pose_ik_chain_init(Sculpt *sd, | SculptPoseIKChain *sculpt_pose_ik_chain_init(Sculpt *sd, | ||||
| Object *ob, | Object *ob, | ||||
| SculptSession *ss, | SculptSession *ss, | ||||
| Brush *br, | Brush *br, | ||||
| const float initial_location[3], | const float initial_location[3], | ||||
| const float radius) | const float radius) | ||||
| { | { | ||||
| float chain_end[3]; | const float chain_segment_len = radius * (1.0f + br->pose_offset); | ||||
| float chain_segment_len = len_v3v3(initial_location, chain_end) / br->pose_ik_segments; | |||||
| chain_segment_len = radius * (1.0f + br->pose_offset); | |||||
| float next_chain_segment_target[3]; | float next_chain_segment_target[3]; | ||||
| int totvert = sculpt_vertex_count_get(ss); | int totvert = sculpt_vertex_count_get(ss); | ||||
| int nearest_vertex_index = sculpt_nearest_vertex_get(sd, ob, initial_location, FLT_MAX, true); | int nearest_vertex_index = sculpt_nearest_vertex_get(sd, ob, initial_location, FLT_MAX, true); | ||||
| /* Init the buffers used to keep track of the changes in the pose factors as more segments are | /* Init the buffers used to keep track of the changes in the pose factors as more segments are | ||||
| * added to the IK chain. */ | * added to the IK chain. */ | ||||
| ▲ Show 20 Lines • Show All 6,504 Lines • Show Last 20 Lines | |||||