Commit Graph

515 Commits

Author SHA1 Message Date
1b5d16f1bf I made multitude of fixes based on the comments provided online:
Removed the drawSelectedVerts and added drawSelectedVertices, which uses dm->foreachMappedVert.

In calc_weightpaint_vert_color():
Made the weight paint color black and return instead of input=-1

Made the pose bone selection normal when multi-paint is inactive.

Name fix for functions using mv instead of mvert.

Used vector functions provided by the math lib.

Changed some MEM_callocN references to be stacks.

Changed dm_deform_clear to use ob->derivedDeform primarily

Made the variable "float **changes" into "float (*changes)[2]"

Used CTX_data_active_object() in place of CTX_data_pointer_get_type()

Added the invert selection hotkey "Ctrl+I" to weight paint's vertex mask.
2011-09-18 01:09:18 +00:00
a31869f267 some picky rna/variable renaming:
Mesh.wp_vert_sel --> use_paint_mask_vertex
2011-09-14 08:45:12 +00:00
df433c7a1d - move vgroup lock buttons on the panel into the vgroup specials menu.
- merge object.vertex_group_lock_all / object.vertex_group_invert_locks / "object.vertex_group_unlock_all into one operator.
- change lock button from a checkbox to a lock icon.
2011-09-14 08:21:21 +00:00
86777f46e1 - use a flag define for bDeformGroup->flag rather than setting TRUE/FALSE
- rename RNA bDeformGroup.flag to "lock_weight"
2011-09-14 07:07:17 +00:00
4c99d83b56 another cleanup pass, quiet all warnings for GCC
- comment unused funcs/vars.
- replace some allocs with stack variables.
- use BLI_math functions to replace in-line vector math.
2011-09-14 05:25:43 +00:00
46eff26312 Small tweaks to vgroup_fix related functions.
Added further documentation.
2011-08-11 17:42:54 +00:00
e9393aa252 Added an error msg for Fix Deforms tool for active mirror modifiers
Stopped trying to draw verts with subdivision surface modifier active--
or any other time the dm->drawSelectedVerts function is 0.
2011-08-10 15:50:21 +00:00
a42426071b Weight Paint's vertex selection tools use zbuf like face select.
Removed the extra, unused object mode specific selection functions I had added
(they aren't being used anywhere as of now, and they didn't support zbuffering).
2011-08-09 16:32:15 +00:00
5e7ad7a66d Fixes a memory allocation problem
Uses functions that reduce duplicate code for clearing/recalculating deformations.
2011-08-07 17:19:18 +00:00
0e9e74ec8a Fixed a small problem with the Fix Deforms op involving the case where a weight was zero.
Adjusted the distance limitations on the UI to be more reasonable.
2011-08-04 16:07:24 +00:00
5b64ea472c Fix deform op tweaks:
The distance to/from the plane was added to the UI
The change that makes the vertex closest to the desired point is used instead of the most significant change.
2011-08-03 17:45:09 +00:00
566d936179 'Fix Deforms' op added to weight paint tools to smooth (remove/reduce) spiking caused by bones by altering vgroup weights
--it's still really simplistic (and slow!) so don't try fixing an entire mesh! xD
Also, don't use it on a mesh with a mirror modifier yet, just noticed that it does both vertices instead of one.

Minor UI text update for Vertex Masking
2011-07-29 17:36:49 +00:00
fb3783bd13 Added vertex masking support for the weight paint vgroup functions including:
Normalize, Normalize All, Invert, Clean, and Levels.

Face mask and vertex select/mask are now mutually exclusive options.

Went ahead and allowed vertex selection support and masking for vertex paint.
2011-07-20 15:56:35 +00:00
84ea89e25f Merged from trunk with revision range 36835-37865,
(No conflicts had to be manually resolved)
Gave weight paint a basic ability to draw edges and vertices with an option
 (with colors for selected/unselected),
but I didn't make any vertex selection functions available in weight paint mode yet
(tested with edit mode for now).
2011-06-27 17:21:08 +00:00
f122a74b1e svn merge -r37078:37335 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-06-09 15:20:29 +00:00
7fd1fe9fc8 draw sequences with invalid effect frame ranges pink to highlight they are invalid and wont render. 2011-06-07 18:34:33 +00:00
299602b360 fix for vertex group copy to selected
- was using un-initialized stack memory if the source / target object had no vertex group.
- if the target object had no vertex groups it would fails silently (not a bug but not very good functionality)
- added an error message if any copying fails.
2011-06-07 18:04:03 +00:00
e55833a094 fix [#27572] Mirror Shapekey and Mirror vertex Group not working for Lattice. 2011-06-06 06:40:09 +00:00
23737357ff Added a hard coded check box to the vertex group list items in interface/interface_templates.c list_item_row()
Made my 3 new buttons only appear in weight paint mode when there are vertex groups present
in properties_data_mesh.py

I took the now redundant check box out of properties_data_mesh.py

I took out unnecessary code (resulting from copy/paste) from my lock all, unlock all, and invert all functions of object/object_vgroup.c

(and I got rid of a new line in paint_vertex.c :) )
2011-06-03 16:08:03 +00:00
8684d99e61 Made misc vgroups unable to change bone groups' weights when auto normalize is active
Added buttons for locking all vgroups, unlocking all vgroups, and inverting the locks of all vgroups
2011-06-02 17:28:04 +00:00
08d6932c86 svn merge -r36900:37028 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-05-31 05:11:04 +00:00
155d589333 add the property as an argument to enum item functions, not used yet but needed for dynamic python enums. 2011-05-26 13:38:16 +00:00
068c627013 remove unused vars 2011-05-13 13:17:30 +00:00
1d8fa52883 rename BMINDEX_GET/SET to BM_GetIndex/BM_SetIndex 2011-05-13 10:49:26 +00:00
14a2330d7b copied across changes which were missed by merging. 2011-05-09 02:45:52 +00:00
6ef77cf95a =bmesh= merge from trunk at r36529 2011-05-08 23:43:18 +00:00
7faa531a62 fix for possible crash using an un-initialized pointer when getting a vertex weight from a non-mesh/lattice object. 2011-04-23 07:28:30 +00:00
210ee1ade4 whitespace only, no functional change mixed tabs/spaces --> tabs. 2011-04-21 13:11:51 +00:00
c98148a963 =bmesh= merge from trunk at r36153 2011-04-15 01:19:13 +00:00
70162a4abd fix [#26682] Accessing weight sometimes crashes blender
also replace object type check from vgroup_edit_lattice() with an assert since all callers check for lattice type.
2011-03-30 02:59:32 +00:00
617e6a83bc object/paint/misc-files: floats were being implicitly promoted to doubles, adjust to use floats.
- also UV angle stretching was using radians->deg which wasn't needed.
2011-03-27 14:59:55 +00:00
82d13ad999 add missing mem-free on vertex group sorting & dont crash when calling fullscreen in bg mode. 2011-03-22 11:19:02 +00:00
d485a54b59 crash fix for Normalize All VGroups on a lattice without vgroups (probably other tools too - bug was in ED_vgroup_give_parray).
Also fix for crashes running operators in bg mode by using setting poll functions: WM_OT_search_menu, MESH_OT_extrude_repeat, SCREEN_OT_new
2011-03-22 10:13:42 +00:00
7ccc17b98c =bmesh= fixed bunches of modifier stack bugs 2011-03-19 21:33:33 +00:00
Nathan Letwory
95100afc12 doxygen: blender/editors tagged. 2011-02-27 20:29:51 +00:00
f01261d040 merge with/from trunk at r35190 2011-02-27 06:19:40 +00:00
Nathan Letwory
5b607701a7 doxygen: prevent GPL license block from being parsed as doxygen comment. 2011-02-23 10:52:22 +00:00
8b7482892b made most variables which are only used in a single file and not defined in header static for blenlib, blenkernel and editors. 2011-02-14 17:55:27 +00:00
0d8416acc7 minor edits, no functional changes.
- BGE was getting MCol array and not using it.
- use list lookup functions for getting constraint from pose bone.
- use const char * in more places.
2011-02-07 22:48:23 +00:00
d9f7a05f2e bugfix [#25712] Deletion of vertex groups under script control causes incorrect reassignment of vertices in other groups
vgroup functions were mixing up active group and one passed as an argument.

also made other changes.
- removed superfluous call to defvert_find_index() in vgroup_delete_object_mode(), was also doing unnecessary NULL check on each loop.
- remove paranoid NULL check from ED_vgroup_vert_remove, callers all check for valid 'ob'
2011-01-21 05:09:32 +00:00
8cf1184c04 bad spelling; 'indicies' --> 'indices' 2011-01-18 01:58:19 +00:00
3b74074aec remove unused code & variables. 2011-01-08 12:43:44 +00:00
8f21a43535 split BKE_utildefines.h, now it only has blender specific defines like GS() MAKE_ID, FILE_MAXDIR, moved the generic defines to BLI_utildefines.h.
no functional changes.
2011-01-07 18:36:47 +00:00
57a3cff3b8 patch [#25440] Object.vertex_group fixin'
from Dan Eicher (dna) 

 From the tracker (with minor edits)
========================

cube = bpy.data.objects['Cube']
foo = cube.vertex_groups.new('foo')
foo.add([1,3,5,7], 1.0, 'ADD')

for i in range(len(cube.data.vertices)):
    try:
        weight = foo.weight(i)
        print('vert: %i weight: %f' % (i, weight))
    except:
        pass

foo.remove([1,3])

cube.vertex_groups.remove(foo)
2011-01-07 09:50:23 +00:00
5d74d65106 bugfix [#25519] particlesystem, type hair, hair dynamics enabled: crash with amount 0 2011-01-07 04:38:31 +00:00
de159a67aa - internal py/rna ifdef's USE_MATHUTILS was mixed up,
- updated tooltip for vertex group mirror.
2010-12-09 06:08:19 +00:00
b110c7c8f2 Dependency graph: changed DAG_id_flush_update to DAG_id_tag_update. Now it
only tags the ID and does the actual flush/update delayed, before the next
redraw. For objects the update was already delayed, just flushing wasn't
yet.

This should help performance in python and animation editors, by making 
calls to RNA property update quicker. Still need to add calls in a few
places where this was previously avoided due to bad performance.
2010-12-05 18:59:23 +00:00
51dcbdde03 use 'const char *' by default with RNA functions except when the value is flagged as PROP_THICK_WRAP.
Also use const char in many other parts of blenders code.

Currently this gives warnings for setting operator id, label and description since these are an exception and allocated beforehand.
2010-11-17 09:45:45 +00:00
daa4feaaea bugfix [#24477] Can easily create bones with duplicate names
- fixed this error 7 different functions (deform groups, uv layers & similar).
- support for numbers over 999.
- renamed splitIDname() to BLI_split_name_num(), moved to BLI_path_utils
2010-11-01 07:19:41 +00:00
25bbf99a79 replace SIDE_OF_LINE macro with line_point_side_v2() inline function.
made a number of files build without unused warnings.
2010-10-15 05:18:45 +00:00