Age | Commit message (Collapse) | Author |
|
|
|
- Correct variable names which were missed when refactoring.
- Use full sentences.
|
|
The previous fix to the width modes Percent and Absolute did
not take into account that with limit mode Weight, the amount
needs to be scaled by the bevel weight of the beveled edge in
question. (Sometimes there are two beveled edges in question,
in which case an average is used.)
|
|
|
|
|
|
When stepping over an ngon's edges, check the number of edges & faces,
to ensure the topology connected to the ngon would be walked along.
|
|
Without this the purpose of this feature isn't clear.
While 01b3e9cc9fdd0875b93ba749c8209e6c43570d13 linked to an image,
add inline ascii diagrams with detailed explanations.
|
|
|
|
|
|
|
|
Comment blocks not conforming to convention.
|
|
|
|
Regression in 9969c2dd165c7d8ffe607a5a050a80aa59ac50be.
Add note that custom normal calculation functions write into to tags.
|
|
Assert with comment to avoid confusion caused by
mixing two kinds of shape-key data.
This problem was exposed when investigating T84364.
|
|
This doesn't serve any purpose and can become out of sync
with the function it's self without reporting warnings.
|
|
Currently unused, needed for symmetrize to support shape keys.
|
|
|
|
Checks for merging vertices assumed all the geometry was being mirrored.
|
|
|
|
This makes the exact boolean have zero weights for any vertex groups
on any newly created vertices, which is what the fast solver does.
The exact boolean solver was interpolating vertex data when interpolating
loop data in newly created faces. Not sure why I chose that. The Fast
boolean solver doesn't do that, so I stopped doing it too.
|
|
|
|
BMesh auto-extracting API info does not support comments inside BMesh
operators parameters definition.
|
|
|
|
These comments are used to generate Py API docs.
Most of the comments are just copies of the mesh operator counterparts.
More improvements can be made here in the future.
Thanks to Jon Denning on twitter:
https://twitter.com/gfxcoder/status/1334178566993555459
|
|
The existing hash function didn't work well with Set's method of
masking to the lower bits, because many verts have zeros in the
lower bits.
Also, replaced VectorSet with Set for Vert deduping.
|
|
In cases where "Allow" is followed by an infinitive, a noun needs
to directly follow it. But it makes more sense to follow it with a
gerund instead.
|
|
|
|
|
|
|
|
Add an optional callback to check source/destination loops for
BM_mesh_calc_face_groups.
This is needed so it can be used to calculate UV islands.
|
|
|
|
|
|
Needed a better normal to for plane to offset into when there are
non in-plane edges between two beveled edges. It was using the vertex
normal, which is just wrong.
Differential Revision: https://developer.blender.org/D9508
|
|
|
|
readability-inconsistent-declaration-parameter-name
|
|
The skin modifier did not output consistent results, causing failure to find
corresponding vertices across frames.
Remove unnecessary use of GSet, all we need is an array.
|
|
|
|
The code was trying to ignore hidden geometry when doing boolean,
which is correct when used as a tool, but not when a modifier.
Added a "keep_hidden" argument to bmesh_boolean to distinguish the
two cases.
Also fixed a bug when the tool is used with hidden geometry that
is attached to unhidden geometry that is deleted by the operation.
|
|
The code was trying to ignore hidden geometry when doing boolean,
which is correct when used as a tool, but not when a modifier.
Added a "keep_hidden" argument to bmesh_boolean to distinguish the
two cases.
Also fixed a bug when the tool is used with hidden geometry that
is attached to unhidden geometry that is deleted by the operation.
|
|
|
|
Replace `NULL` with `nullptr` in C++ code.
No functional changes.
|
|
|
|
|
|
Use common prefix as this collided with existing API's (eg BLI_voronoi).
Also expand some non-obvious abbreviations:
- 'g' -> 'generic'
- 'vl' -> 'variable_lacunarity'
- 'V' -> 'v3'
|
|
Replace 'set' with 'string(APPEND/PREPEND ...)'.
This avoids duplicating the variable name.
|
|
Fixes 18 misspellings of 'predefined', 'Look Up', 'Lookup', and 'No One'.
Differential Revision: https://developer.blender.org/D9466
Reviewed by Hans Goudey
|
|
This makes debugging slightly easier, and makes the code slightly more
explicit about its intentions.
|
|
|
|
In some situations where two beveled edges were very close to in-line
but not quite straight, bevel would build a miter when it shouldn't.
The code that chose whether to use a miter at each vertex was slightly
incorrect.
For outer miters there is a check for 3 or more selected edges, but an
inner miter can still be useful with only two beveled edges at a vertex,
so we can't use that here. Instead I changed the check for in-line edges
to run before determining whether the angle is reflex or not. The logic
ends up a bit more straightforward as well. This doesn't completely
remove the rather strange looking triangle vertex meshes at each corner,
but it does make it stable when locations are slightly adjusted.
The only other place this `edges_angle_kind` function was used is for
profile=1.0 vertex meshes. I tested and made sure that still works well.
Differential Revision: https://developer.blender.org/D9420
|
|
Follow our code style for doxygen sections.
|