Blender V4.3
Profile Struct Reference

Public Attributes

float super_r
 
float height
 
float start [3]
 
float middle [3]
 
float end [3]
 
float plane_no [3]
 
float plane_co [3]
 
float proj_dir [3]
 
floatprof_co
 
floatprof_co_2
 
bool special_params
 

Detailed Description

Profile specification: The profile is a path defined with start, middle, and end control points projected onto a plane (plane_no is normal, plane_co is a point on it) via lines in a given direction (proj_dir).

Many interesting profiles are in family of superellipses: (abs(x/a))^r + abs(y/b))^r = 1 r==2 => ellipse; r==1 => line; r < 1 => concave; r > 1 => bulging out. Special cases: let r==0 mean straight-inward, and r==4 mean straight outward.

After the parameters are all set, the actual profile points are calculated and pointed to by prof_co. We also may need profile points for a higher resolution number of segments for the subdivision while making the ADJ vertex mesh pattern, and that goes in prof_co_2.

Definition at line 127 of file bmesh_bevel.cc.

Member Data Documentation

◆ end

◆ height

float Profile::height

Height for profile cutoff face sides.

Definition at line 131 of file bmesh_bevel.cc.

Referenced by bevel_build_cutoff(), and calculate_profile().

◆ middle

◆ plane_co

float Profile::plane_co[3]

Coordinate on plane to project to.

Definition at line 141 of file bmesh_bevel.cc.

Referenced by bevel_vert_two_edges(), build_boundary_terminal_edge(), make_cube_corner_adj_vmesh(), and set_profile_params().

◆ plane_no

◆ prof_co

float* Profile::prof_co

seg+1 profile coordinates (triples of floats).

Definition at line 145 of file bmesh_bevel.cc.

Referenced by calculate_profile(), and get_profile_point().

◆ prof_co_2

float* Profile::prof_co_2

Like prof_co, but for seg power of 2 >= seg.

Definition at line 147 of file bmesh_bevel.cc.

Referenced by calculate_profile(), and get_profile_point().

◆ proj_dir

float Profile::proj_dir[3]

Direction of projection line.

Definition at line 143 of file bmesh_bevel.cc.

Referenced by bevel_vert_two_edges(), make_cube_corner_adj_vmesh(), move_profile_plane(), move_weld_profile_planes(), and set_profile_params().

◆ special_params

bool Profile::special_params

Mark a special case so the these parameters aren't reset with others.

Definition at line 149 of file bmesh_bevel.cc.

Referenced by calculate_vm_profiles(), move_profile_plane(), and move_weld_profile_planes().

◆ start

float Profile::start[3]

◆ super_r


The documentation for this struct was generated from the following file: