Commit Graph

563 Commits

Author SHA1 Message Date
ff7dbdbaee rename give_cursor to ED_view3d_cursor3d_get 2013-10-26 04:07:18 +00:00
b7f0a1fabe Updating tooltip for Fill Holes "Sides" option.
This makes the tooltip much more descriptive to tell the user what the setting does. Suggestion by Thomas Beck and bcon13.
2013-10-25 14:12:22 +00:00
Dalai Felinto
70efa7f1aa renaming "Beautify Fill" to "Beautify Faces"
changing the ot->name only, not the ot->idname
(to avoid breaking scripts)

The tool requires the selection to be fill previously,
the original name was confusing if we consider we have
"Fill" with the "Beauty" option.

Discussed with Bastien Montagne and Brecht van Lommel.
2013-10-15 15:34:14 +00:00
1f53674bb8 avoid divide by zero with grid fill (when there is no selection) 2013-10-05 11:59:15 +00:00
0b1cf4c2ea code cleanup: warnings and minor edits. 2013-10-04 17:47:58 +00:00
bab799bf25 fix regression - convex hull tool leaving new faces unselected. 2013-10-01 18:23:39 +00:00
b21b24573d lots of operator descriptions were incorrectly copy/pasted.
update some descriptions, others were removed and operators tagged as internal.

add a script to detect duplicate operator descriptions.
2013-09-30 05:50:41 +00:00
00bd7da674 correct error in recent changes for building with openmp.
rename DM_OMP_LIMIT to BKE_MESH_OMP_LIMIT and set to 0 when in debug mode, same for BM_OMP_LIMIT.
2013-09-09 05:42:26 +00:00
0423d2b252 changes to grid fill
- use 4 weights for vertex customdata blending (was previously only using 2)
- option for simple blending, which blends locations using weights too and doesn't attempt to maintain the shape,
  useful for flat surfaces or times when keeping the shape gives odd results.
2013-09-07 08:13:39 +00:00
e045e324a4 error in recent gridfill commit, calculating span last failed. 2013-09-06 02:59:25 +00:00
ac60079ef2 grid-fill now detects non-square grids (this is what users would expect)
http://www.graphicall.org/ftp/ideasman42/gridfill_detect_nonsquare.png
2013-09-05 22:58:35 +00:00
3b72f1824c rename positive_mod to mod_i, make it work with nagative numbers (matching pythons modulo), and use in a few more places.
allow mesh-checker-deselect to have a negative offset.
2013-09-05 20:54:32 +00:00
2e0422b17f add function for rotating linked list so at item is last. 2013-09-05 11:40:38 +00:00
8f49054b77 grid-fill can now fill a single, closed edge loop.
the active vertex is used when possible, else the corner vertex is detected.

this should replace the grid-fill-manager addon by Alexander Nedovizin.
2013-09-05 11:07:49 +00:00
01a2634d61 fix [#36412] Pivot of active element switches to last selected face after duplicating vertices. 2013-09-02 04:39:48 +00:00
07994d6f50 mesh bisect can now be defined with mouse input
(using cursor + numeric values was too clumsy for defining orientation).

once the cut is done numeric input still works as before
2013-08-29 18:45:04 +00:00
3cf14f0b3a style cleanup: space around for loop wrappers 2013-08-24 10:05:29 +00:00
09ff49755f math api edits - replace point-normal form for a plane with dist_to_plane_v3()
also correct python mathutils api, was missing vector checks.
2013-08-23 14:37:22 +00:00
a55857c653 new mesh bisect had a problem not selecting faces with fill option in face mode. 2013-08-23 14:07:22 +00:00
c752346cfa new mesh bisect tool, available in the mesh menu.
cuts the mesh in half based on the cursor location and the viewport,
optionally supports filling the cut area (with uvs. vcols, etc),
and removing geometry on either side of the cut.
2013-08-23 11:46:08 +00:00
6f4b79d5af edits to new symmetrize tool
- snap axis-aligned verts to the center.
- expose the threshold for detecting if a vertex is on the axis.
2013-08-23 05:32:43 +00:00
c4e1d40022 replace symmetrize code with calls to bmesh operators.
calls: bisect, duplicate, scale, flip, weld.

resolves report [#36475] Symmetrise does not keep uv/weight

also fixes issues with faces that cross the axis more then once.
2013-08-22 18:02:36 +00:00
7a6f3d9e43 fix [#36349] Separate mesh by material creates meshes with all the materials from the original 2013-08-14 14:36:43 +00:00
76cb6829e5 edge-split now leaves split edges selected 2013-08-10 23:22:35 +00:00
1dc993ecd2 fix own regression in edgeloop delete [#36389] loop detete crashes 2013-08-06 17:45:58 +00:00
90b22486c7 select faces after dissolving 2013-08-06 05:05:31 +00:00
4d9d21600d Add key shortcut for context sensitive dissolve, Ctrl+X / Ctrl+Delete (as with node editor) 2013-08-06 05:01:11 +00:00
4770848871 code cleanup: bmesh use 'const' for query functions. 2013-08-03 16:37:23 +00:00
4f02555004 new mesh tool for cleaning up meshes, splits up non-planar faces while they exceed a given angle threshold
(access from the 'Mesh -> Clean' menu).
2013-07-28 19:53:46 +00:00
fc4a777511 use '_exec' suffix for operator execute callbacks, also picky change to sizeof() use in BLI_array.h 2013-07-28 17:06:31 +00:00
6b3abde8d4 fix for joining face selection after recent api change, also bmo_join_triangles_exec() wasn't filling in its 'face' output slot. 2013-07-27 06:11:54 +00:00
a0969adb4e fix for bridge tool selection flushing (after recent api change), also exposed bug in bmesh edgering-subdiv operator. 2013-07-27 05:57:20 +00:00
09a9aa5720 add twist option to bridge tool (for circular loops) 2013-07-25 19:27:18 +00:00
4bc32d5ded mesh tool to fill in holes, added in mesh clean menu,
unlike other face creation tools it copies data from surrounding faces.
2013-07-25 18:43:05 +00:00
a15e9ca495 triangulate and beauty fill also needed changes to selection handling after recent changes. 2013-07-25 07:00:07 +00:00
3270031660 correct problem with limited-dissolve not leaving the selection correctly (caused by BM_elem_attrs_copy no longer dealing with selection) 2013-07-25 06:05:44 +00:00
cdac157f4c code cleanup: use iterator macros, and replace BM_LOOPS_OF_FACE with direct loop access when converting a bmesh to a mesh. 2013-07-24 18:38:55 +00:00
7db1d6556d code cleanup: add break statements in switch ()'s, (even at the last case). 2013-07-21 08:16:37 +00:00
34b301f0a4 fix error where if you tried to bridge an odd number of loops after bridging pairs, there was no way to change the options.
eventually I think the operator api should support this but for now return finished.
2013-07-09 06:34:54 +00:00
61bbefe40d remove unused normal-recalc flags. 2013-07-08 08:56:46 +00:00
e9208e99b7 bridge tool: calculate face normals before triangulating, own error when removing normal recalc from the bmesh operator.
also rename `Fill Grid` -> `Grid Fill` to match `Beauty Fill`
2013-07-01 07:15:12 +00:00
77e0709e48 Fix #35551: the topology mirror setting affected shape key and vertex group but
this was confusing as there was no setting visible for it. Now these menus
contain an entry to mirror without and with topology mirror.
2013-06-28 17:13:09 +00:00
bb42703ea3 - remove edge collapse loop operator (now replaced by dissolve).
- fix missing null pointer check from own recent changes.
- add asserts if BLI path functions are given wrong id's
2013-06-27 01:10:19 +00:00
45d7ebbdf2 Include DNA_scene_types before ED_object instead of forward enum declaration
Forward enum declaration is a bad idea, especially for C++ which requires
enum specification to dteermine which data type to use to store it.

Alternative would be to not use enum as an arument and pass it as int,
but actually would rather be strict on typing -- using explicit enum
as parameter type helps understanding the code and prevents possible
mistakes when using the function.
2013-06-25 09:27:31 +00:00
e4bb913510 Extend existing editmesh connect tool so it can connect across multiple faces.
only use this when 2 vertices are selected, otherwise use the same behavior as before.

This works a little like a fast knife tool, but it only cuts straight lines and doesnt depend on the view-port.

Examples:
- http://www.graphicall.org/ftp/ideasman42/mesh_connect_pair.png
- http://www.graphicall.org/ftp/ideasman42/mesh_connect_pair_curve.png
2013-06-22 17:25:02 +00:00
c00b408052 Snap to Symmetry (editmesh tool)
Update from a script I had in 2.4x, useful if you have mesh data which is _almost_ symmetrical,
there was no good way to automatically make the minor adjustments to make the mesh fully symmetrical.

Options for...
- symmetry-axis.
- blending between the +/- side.
- center mid verts.

Access from Mesh menu.
2013-06-19 21:35:06 +00:00
1ed8343d6d add axis option to EDBM_verts_mirror_cache_begin 2013-06-19 21:23:00 +00:00
64d6810cd9 Change edgeloop delete to use dissolve, fixes bug [#35738].
Was using edge-slide & remove-doubles but this was error prone since remove doubles could fail in some cases or find doubles where it shouldn't (with very small scale objects).

This gives more predictable behavior when the edges of a loop wouldnt slide (in that case they would just drag over to one of the sides with no user control)
and multiple edge loops work better too. eg:
- http://www.graphicall.org/ftp/ideasman42/edge_loop_del_update.png
2013-06-14 03:04:36 +00:00
b913385e32 bmesh edge dissolve: add option use_face_split (matching vertex dissolve option),
useful to avoid odd shaped ngons surrounding dissolved edges.
2013-06-14 02:30:40 +00:00
501f655503 fix [#35648] Loop cut, smoothness showing wrong symmetrical
this is more of a feature request then a bug, but nicer to use even smoothing offset for loopcut smoothing.
2013-06-10 04:33:05 +00:00