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
|
|
Some minor improvements to doc-strings too.
Ref T92709
|
|
In rare cases disolving faces would crash, caused by iterator
variable reuse in b29a8a5dfe3d6eb2fbbdecd0d5dffb3d709b9b91.
|
|
Using BMesh operators through the edit-mesh API created a full copy
of the mesh so it was possible to restore the mesh in case
one of the operators raised an error.
Remove support for automatic backup/restore from the EDBM_op_* API's
as it adds significant overhead and was rarely used.
Operators that need this can use the BMBackup API to backup & restore
the mesh in case of failure.
Add warning levels to BMO_error_raise so operators can report problems
without it being interpreted as a request to cancel the operation.
For high-poly meshes creating and freeing a full copy is an expensive
operation, removing this gives a speedup of ~1.77x for most operators
except for "connect_verts" / "connect_vert_pair"
which still uses this functionality.
|
|
Previously, any face groups that could not be merged into a face
caused the entire operation to report an error and do nothing.
Now these cases are skipped over, dissolving faces where possible.
|
|
- Only create arrays with groups of two or more faces.
- Remove raising exception for zero length arrays.
- Remove redundant exception check (assert there is no exception).
- Use a struct for face array & it's length instead of a NULL
terminated array (removes the need to count faces in a loop).
|
|
|
|
The error codes could be used to look up messages from a table
of messages however this wasn't especially useful.
Now all calls to BMO_error_raise must inclue a message.
|
|
|
|
|
|
Add argument to BM_vert_collapse_faces to remove any faces that become
duplicate as result of the collapse.
|
|
|
|
|
|
|
|
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
|
|
|
|
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.
|
|
|
|
Match naming convention used everywhere else.
Count should only be used when this isn't directly accessible.
|
|
Consistent with other BLI API's
|
|
no functional changes.
|
|
Pass in loops instead of edge & faces.
Nearly all callers have the loop-pairs to pass in.
|
|
Saves 8 bytes per vert/edge/face.
Gives overall ~20-25% memory saving for dyntopo sculpting
and modifiers that use BMesh.
|
|
In nearly all cases this isn't needed.
|
|
Was showing an error message,
now dissolve the faces that and delimit at non-manifold boundaries.
|
|
|
|
Collapse but not with other merge types.
Was missing parameter for collapse bmesh operator...
|
|
|
|
|
|
|
|
|
|
|
|
also avoid feedback loop when checking topology giving nondeterministic results.
|
|
(BM_vert_edge_count(v) == 2)
|
|
|
|
|
|
|
|
|
|
- add BM_vert_pair_share_face
- add BM_loop_is_adjacent
- remove BM_verts_connect
|
|
|
|
freed edges would be checked.
|
|
|
|
add BM_ITER_MESH_MUTABLE which steps before entering the for() loop body and prevents the assert from complaining about removing mesh data while iterating as well as the crash.
this was done in quite a few areas, more may turn up.
|
|
changes to tool args would rebuild far too many files and these are mainly by modifiers outside of bmesh.
|
|
|
|
also more strict use of BLI_array_declare(), only allow after array is declared.
|
|
(caused by BM_elem_attrs_copy no longer dealing with selection)
|
|
|