3382b07ad6
Cleanup: rename 'count' to 'len'
...
Reserve the term count for values that require calculation
(typically linked lists).
2021-07-06 12:09:52 +10:00
96d487b3ae
Cleanup: remove redundant calls to BMO_error_clear
2021-07-01 17:25:27 +10:00
2d1cce8331
Cleanup: make format after SortedIncludes change
2020-03-19 09:33:58 +01:00
e12c08e8d1
ClangFormat: apply to source, most of intern
...
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
2019-04-17 06:21:24 +02:00
Ish Bosamiya
da5b6ed75b
Modifiers: add minimum number of vertices to triangulate modifier.
...
This lets you only triangulate n-gons when setting the number to 5 or more.
Differential Revision: https://developer.blender.org/D4367
2019-03-22 18:11:14 +01:00
de13d0a80c
doxygen: add newline after \file
...
While \file doesn't need an argument, it can't have another doxy
command after it.
2019-02-18 08:22:12 +11:00
eef4077f18
Cleanup: remove redundant doxygen \file argument
...
Move \ingroup onto same line to be more compact and
make it clear the file is in the group.
2019-02-06 15:45:22 +11:00
65ec7ec524
Cleanup: remove redundant, invalid info from headers
...
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.
2019-02-02 01:36:28 +11:00
5c3953010d
Cleanup: spelling
2018-12-19 10:18:15 +11:00
854db8951b
Cleanup: strip trailing space in bmesh module
2018-06-04 08:49:47 +02:00
76ece90d4a
Fix T55093: Bisect + fill crash
2018-05-22 17:23:25 +02:00
ccdacf1c9b
Cleanup: use '_len' instead of '_size' w/ BLI API
...
- When returning the number of items in a collection use BLI_*_len()
- Keep _size() for size in bytes.
- Keep _count() for data structures that don't store length
(hint this isn't a simple getter).
See P611 to apply instead of manually resolving conflicts.
2018-02-15 23:39:08 +11:00
89120cd241
bmesh: use 'uint' instead of 'unsigned int'
...
no functional changes.
2017-05-06 14:19:08 +10:00
7fd2efa507
BMesh: Minor improvement to face-join
...
Pass in loops instead of edge & faces.
Nearly all callers have the loop-pairs to pass in.
2016-11-12 10:30:32 +11:00
0a026033ae
BMesh: make toolflags optional
...
Saves 8 bytes per vert/edge/face.
Gives overall ~20-25% memory saving for dyntopo sculpting
and modifiers that use BMesh.
2016-07-01 19:29:22 +10:00
bcde045b32
Fix T48667: Bisect-fill crash
...
BMO iterator would loop over removed faces.
Recent changes to mempool FREEWORD size exposed this bug.
2016-06-17 21:45:56 +10:00
daa90de3fd
Cleanup: shadowing (bmesh)
2015-11-23 17:40:10 +11:00
0f769afe07
Fix T46692: Triangulate creates duplicate faces
...
Caused a crash in dyntopo.
2015-11-06 01:13:23 +11:00
67ec0ef277
Editmesh: report a warning when fill fails
...
also prevent assert with zero normal
2014-11-05 14:21:18 +01:00
cb5ec7f743
Fix use-after free (own error)
2014-11-04 09:48:41 +01:00
afa6d4e21f
Fix T41523: Mesh triangle fill creates flipped faces
...
Calculate projection normal using edge-pairs
2014-08-21 15:07:07 +10:00
1706182be4
Fix for BMesh fill using arbitrary face-flipping
...
Use winding of existing boundary edges.
Filling Suzzane's eyes gave different face winding.
2014-08-21 13:08:13 +10:00
eaf7d6b7c0
BMesh: fill - replace SmallHash with GHash
2014-08-21 13:08:13 +10:00
90e1746d89
BMesh: correct flag use
...
Allowed fill to make duplicate faces
2014-08-21 13:08:13 +10:00
ae8327dbf3
Mask: add option to detect self intersections
2014-02-13 19:12:28 +11:00
8b1731e13d
Scanfill: skip checks for loose edges when they can't occur
...
Only editmesh needs this, text, curves, masks - can all skip this check
2014-02-04 02:57:27 +11:00
b4ae05e4db
BMesh: optimize lookups for triangle fill
2014-02-02 17:09:38 +11:00
c4345a808c
Smallhash: add reserve option to avoid resizing when size is known
2014-02-02 17:08:26 +11:00
Dalai Felinto
a7b44c82e5
Triangulate Modifier: using different ngon and quad methods
...
Quads: Beauty, Fixed, Fixed Alternate, Shortest Diagonal
Ngons: Beauty, Scanfill
* Shortest Diagonal is the default method in the modifier (popular
elsewhere), but beauty is the default in Ctrl+T).
* Remove the need for output slot and beauty operator to be called
after Clt+T
Patch with collaborations and reviewed by Campbell Barton
2013-10-29 02:42:51 +00:00
590f58d455
code cleanup: redundant includes and add minor comments.
2013-10-08 20:18:38 +00:00
81096bab0c
correct error in recent commit triangle-fill-dissolve, need to check if the edges face is removed (happens in rare cases).
2013-08-23 11:28:33 +00:00
98bb2197a2
add dissolve option to triangle fill operator, running dissolve after scanfill isn't so simple because of errors if one edge can't merge.
2013-08-23 11:10:46 +00:00
5b5cae86b7
optiona for bmesh triangle fill operator to take a normal argument
2013-08-23 10:12:09 +00:00
6cba2b8d73
move bmesh tools into their own include,
...
changes to tool args would rebuild far too many files and these are mainly by modifiers outside of bmesh.
2013-08-23 04:22:07 +00:00
b1f4e2b4db
code comments: bmesh operator doxy header descriptions.
2013-03-30 08:54:50 +00:00
6f9f1399a0
code cleanup: operator headers
2013-03-25 22:40:11 +00:00
be780cb4a6
code cleanup: move beautify into its own file (more changes coming)
2013-03-25 22:04:12 +00:00
1b4c9e1ad4
beautify fill: skip testing invalid cases (2 triangles that _don't_ have 4 unique verts between them).
2013-03-25 04:48:30 +00:00
b6a60fc6b8
revert own commit, caused regression - hanging on triangulation [ #34214 ].
...
Postponing further changes for now, too risky before release when unexpected cases can cause eternal loop.
2013-02-13 03:20:30 +00:00
555bcc3298
add beauty option for triangle fill since you might want to use the initial scanfill result.
2013-02-09 15:49:20 +00:00
5e05d67436
improve beauty-fill tool for non-flat triangles.
...
Project the triangle pair into 2d coords before measuring.
before/after - http://www.graphicall.org/ftp/ideasman42/beauty_fill_fix.png
2013-02-09 08:16:13 +00:00
c30fb009cc
problem with own changes to triabgulate: calling beauty fill directly would re-allocate the faces which mean't triangulates output slots pointers became invalid. (noticed when using from py api)
2013-02-06 15:57:12 +00:00
e7cead0994
own recent change to triangulate bmesh operator stopped filling in mapping slot 'face_map.out', not used by blender its self but useful for scripts, enable this again.
2013-02-05 11:30:50 +00:00
c649107499
when triangulating ngons, use beauty option to rotate edges. gives much nicer results and means you can preserve original edges without triangulating ngons one at a time
2013-02-03 08:07:14 +00:00
37489d71c7
Triangulate modifier no longer uses bmesh operator api call, instead add a BM_mesh_triangulate() function. Gives ~2x speedup in my tests on an optimized build.
2013-01-29 10:31:05 +00:00
b27854bd47
use booleans for bmesh api.
2013-01-14 16:42:43 +00:00
983e5fe5f1
fix for own mistake in recent changes to scanfill, bmo_triangle_fill_exec() (alt+f), was missing BLI_SCANFILL_CALC_HOLES argument.
...
reported as [#33819 ]
2013-01-10 14:28:06 +00:00
8ecce451ab
bmesh operator naming - use clearer names for args eg: (mat -> matrix, use_singleedge -> use_single_edge)
...
also remove duplicate docs for operator arg formatting.
2012-11-28 00:16:06 +00:00
f9e339ef00
fix/workaround [ #33281 ] script goes into not responding
...
scanfill remove-doubles pass assumes ordered edges (as with curves), otherwise it can hang.
workaround this problem by skipping removing-doubles for mesh ngons, since this isnt such a common case as it is with curves and we can just not support it.
2012-11-26 23:18:04 +00:00
3d64381e4d
use more rigid type checking for bmesh slot subtypes.
2012-11-26 03:16:29 +00:00