Age | Commit message (Collapse) | Author |
|
Use a shorter/simpler license convention, stops the header taking so
much space.
Follow the SPDX license specification: https://spdx.org/licenses
- C/C++/objc/objc++
- Python
- Shell Scripts
- CMake, GNUmakefile
While most of the source tree has been included
- `./extern/` was left out.
- `./intern/cycles` & `./intern/atomic` are also excluded because they
use different header conventions.
doc/license/SPDX-license-identifiers.txt has been added to list SPDX all
used identifiers.
See P2788 for the script that automated these edits.
Reviewed By: brecht, mont29, sergey
Ref D14069
|
|
|
|
|
|
|
|
|
|
Move logic into EDBM_automerge since this is meant to run after
transform and isn't a generic editing operation.
|
|
Some statements were split across multiple lines because of their
trailing comments.
In most cases it's clearer to put the comments above.
|
|
Prepare for enabling ReflowComments.
|
|
|
|
Apply clang format as proposed in T53211.
For details on usage and instructions for migrating branches
without conflicts, see:
https://wiki.blender.org/wiki/Tools/ClangFormat
|
|
|
|
Use prefix now there isn't only the 3d version.
|
|
While \file doesn't need an argument, it can't have another doxy
command after it.
|
|
Move \ingroup onto same line to be more compact and
make it clear the file is in the group.
|
|
BF-admins agree to remove header information that isn't useful,
to reduce noise.
- BEGIN/END license blocks
Developers should add non license comments as separate comment blocks.
No need for separator text.
- Contributors
This is often invalid, outdated or misleading
especially when splitting files.
It's more useful to git-blame to find out who has developed the code.
See P901 for script to perform these edits.
|
|
Auto-merge would loose the active vertex.
|
|
|
|
|
|
Related to error exposed by T59640
Would have fixed crash too, but we want to ignore hidden verts.
|
|
|
|
This allows to have different macro headers without them sharing
similar names to regular C modules.
|
|
A single diagonal axis was used for sorting coordinates,
the algorithm relied on users not having vertices axis aligned.
Use BLI_kdtree to remove doubles instead.
Overall speed varies, it's more predictable than the previous method.
Some typical tests gave speedup of ~1.4x - 1.7x.
|
|
Each qsort implementation may give different results when values match.
Now fallback to sorting by index.
|
|
Edge collapse was using bounding box center as the point to collapse to.
When collapsing multiple adjacent edges together, this caused
inconsistencies in placement of the collapsed point, depending on the
orientation of the edges in relation to the space axis.
This makes edge collapse use the mean point instead.
|
|
no functional changes.
|
|
Just return the face or NULL, like BM_edge_exists(),
Also for BM_face_exists_overlap & bm_face_exists_tri_from_loop_vert.
No functional changes.
Old code did some partial overlap checks where this made some sense,
but it's since been removed.
|
|
Saves 8 bytes per vert/edge/face.
Gives overall ~20-25% memory saving for dyntopo sculpting
and modifiers that use BMesh.
|
|
Auto-merge caused all edges between selected vertices to be selected.
This only makes sense in vertex-select-mode.
Correct edge-flag merging code, which now merges flags from multiple edges.
|
|
|
|
Changes to remove doubles face creation,
Recent change to remove doubles broke when the new faces already existed (rare occurrence),
however theres no point to return an existing double face.
Now check if the face exists before creating it.
Other changes:
- avoid 2x hash lookups on all mapped verts.
- fill in the vert array instead of calculating from edges.
- remove inefficient search of entire edge-array before adding to it.
(flag verts to ensure they're not used multiple times).
- move logic for transfusing edge-flags to edge creation.
|
|
Weld verts now keeps original faces so callers don't need to keep track of newly created face data.
|
|
|
|
Also use more direct custom-data access.
|
|
|
|
Collapse but not with other merge types.
Was missing parameter for collapse bmesh operator...
|
|
|
|
|
|
Matches array modifier remove-doubles
|
|
|
|
Bounds check the stack while debugging, also add STACK_PEEK
|
|
|
|
|
|
handling.
Most notably, BM_LOOP and BM_FACE index recompute should now be fully decoupled.
|
|
|
|
- replace heap allocation with stack for small arrays.
- remove edge-lookup when its already known.
|
|
|
|
|
|
- add BM_vert_pair_share_face
- add BM_loop_is_adjacent
- remove BM_verts_connect
|
|
|
|
this is supported by weldop but would prefer not to allow multiple keys in the map.
|