Commit Graph

2326 Commits

Author SHA1 Message Date
Campbell Barton
c6ab67bffc Fix T42611: Knife fails from an edge to a vertex 2014-11-15 22:17:37 +01:00
Campbell Barton
bfa75dc990 Knife: freehand drawing while LMB held 2014-11-15 20:50:15 +01:00
Campbell Barton
a4dbb3bb88 Correct last commit 2014-11-10 13:48:27 +01:00
Campbell Barton
225e3460d0 Fix: Shapekey Basis not updated on editmode exit 2014-11-10 13:32:39 +01:00
Campbell Barton
a081a4817c Editmesh: select more/less can now step over adjacent faces
This keeps a square shaped selection when using grid topology.
2014-11-06 15:35:46 +01:00
Campbell Barton
7d4c89e6da Correct recent refactor (use generic callback) 2014-11-06 11:47:08 +01:00
Campbell Barton
67ec0ef277 Editmesh: report a warning when fill fails
also prevent assert with zero normal
2014-11-05 14:21:18 +01:00
Campbell Barton
6566013c91 BMesh dissolve: enable use_verts for edge dissolve (by default) 2014-11-04 17:06:59 +01:00
Campbell Barton
d57ce42dfa BMesh: arg reorder 2014-11-03 08:30:54 +01:00
Campbell Barton
b7174c9320 Fix connect-vertices failing for concave ngons
Also add:
- generic callback for bmesh elements.
- ability to pass an existing array to a bmesh operator.
2014-11-02 00:09:14 +01:00
Antony Riakiotakis
a6a3989617 Texture Paint Add Simple UVs:
Add simple uvs now does a cube unwrap and pack operation. Result is not
optimal by far but it should not result in crashes and it will be quite
usable for simple cases.
2014-10-31 14:37:55 +01:00
Campbell Barton
e72d8b4711 Mesh Inset: select internal faces by default 2014-10-13 17:02:21 +02:00
Bastien Montagne
a62b806d70 Fix T42145: EditMesh Bevel tools had no clamping option.
Missing feature already present in Bevel modifier, useful and rather simple to add.
2014-10-08 16:42:41 +02:00
Jason Wilkins
8d084e8c8f Ghost Context Refactor
https://developer.blender.org/D643
Separates graphics context creation from window code in Ghost so that they can vary separately.
2014-10-07 15:47:32 -05:00
Antony Riakiotakis
c03951da14 Texture painting:
Do not generate materials/images/UVs if they are missing.

Now we spawn a panel ("Missing Data") with operators to generate the missing data and
pop a warning if user tries to paint without them.

The reason we have reverted this is that it is too easy to end up with more textures
than we wanted. It was impossible to enter texture paint without having textures added,
and code makes too many assumptions about what user may want.

Discussed during Sunday's meeting.

This might be a candidate for 2.72a but I'm not sure how other artists will take this
(and how refined and crash-free it is), better make a few iterations first.

And for interested parties...test please, don't wait until after a release to poke with such issues.

Also, add slot operator now adds a new unconnected image node in cycles. Only
used in the "Missing Data" panel. This should be a separate commit but I am squashing it into the same commit because
it relies too much on changes done here and can be reverted easily if complainstorm occurs again.
2014-10-06 20:10:12 +02:00
Campbell Barton
1f4915e290 Cleanup: avoid alloc for each knife-project vector 2014-10-06 18:23:44 +02:00
Campbell Barton
50af4d208d Cleanup: spelling, ws 2014-10-03 08:21:14 +02:00
Bastien Montagne
fb7f06288d Smooth vertex: User request: tweak hard min/max smoothness.
Keep soft min/max to usual values, but allow artists to play with strange values
if they really want it.
2014-10-01 10:46:50 +02:00
Campbell Barton
5b027bd6dd Cleanup: remove smooth_ from 'smooth_factor'
redundant, just call factor as smooth modifier does.
2014-09-29 15:48:51 +10:00
Bastien Montagne
da78dd78be Fix T25582: Add a 'smooth factor' to smooth_vertex BMesh op.
Based on code by wahooney (Keith Boshoff), patch itself was merely rewritten due to BMesh changes...
2014-09-28 20:00:54 +02:00
Campbell Barton
7803cb09f3 BMesh: replace BLI_array_grow_one -> BLI_array_append_ret 2014-09-28 15:08:55 +10:00
Campbell Barton
5488630047 Add Face Region to 'Select-Similar' menu 2014-09-27 18:31:50 +10:00
Campbell Barton
2f4e70702c BMesh: select similar regions
Select operator that takes multiple selected face regions and
selects any number of matching regions (when they have distinguishing features to isolate them).

UI access next.
2014-09-26 23:06:20 +10:00
Campbell Barton
6f2f80887b GHash: use bool for comparison (simplify compare) 2014-09-25 06:16:37 +10:00
Campbell Barton
7e0a3baedc Fix T41861: Loopcut wire incorrect mode-switch
also didn't preview or select correctly.
2014-09-18 13:24:48 +10:00
Campbell Barton
e6828a71d7 Fix T41850: Knife fails with mesh behind view
Was using first vertex for depth (which could be anywhere),
now use the view-pivot.

was also copying uninitialized vector into knife_find_closest_* return values (confused debugging).
2014-09-17 00:34:48 +10:00
Campbell Barton
ba314683fb Fix T41849: Knife fails with small lens
knife cursor depth could be projected behind the view with a wide angle lens.
2014-09-17 00:34:48 +10:00
Campbell Barton
3ac640b19e Fix T41842: Knife edge-snap, incorrect offset 2014-09-16 15:43:57 +10:00
Campbell Barton
6480fdcae4 Cancel edge-rip macro if no changes are made. 2014-09-10 16:20:08 +10:00
Campbell Barton
652eaf7723 Fix for mesh-inset modifying hidden faces 2014-09-10 16:02:24 +10:00
Campbell Barton
1083da4bde Fix T41730: Knife Cut fails on concave faces 2014-09-06 18:39:59 +10:00
Campbell Barton
f7945c659b Knife: remove redundant allocations 2014-09-06 18:39:59 +10:00
Campbell Barton
7971e441c1 Knife: no need to find the face-loops
Just check if verts are used in the face.
2014-09-06 11:28:06 +10:00
Campbell Barton
c6b96c241b Vert-rip left an invalid selection with (>1 verts)
Now report the error and fail early.
2014-09-04 12:15:52 +10:00
Campbell Barton
6b3ec0c515 Fix editmesh-connect with hidden geometry
- ignore hidden faces & verts
- when cutting a pair, select edges co-linear to the cut.

Also support creating a buffer from hidden elem's even if BMO_FLAG_RESPECT_HIDE is enabled.
(if the hflag used includes BM_ELEM_HIDDEN).
2014-09-02 14:35:56 +10:00
Campbell Barton
e8f3fa99de Support more object types scene-scale (on creation)
- lamp
- camera
- font
- empty & effector

Also fix inconsistency with apply transform
(modified shape-keys for meshes but not curve/lattice)
2014-09-01 21:01:11 +10:00
Bastien Montagne
0e3fa0b761 Fix T41590: When scene scale is not 1.0, and units are "None," Blender assumes translations are in meters.
Turned out there were several issues in handling of scale parameter by numinput.
Fixed that by factorizing more some code in common with 'usual' numbuttons eval code
(new `bUnit_getScaleUnit()` helper will return valid scaled value, depending on
given system and type).

Now, numinput behaves as expected - using default unit amended by scale in case no unit is given
(i.e. entering '20' with a scale of 0.01 will give you 20cm, and '20cm' as well!).
2014-08-26 12:31:08 +02:00
Bastien Montagne
66b84ad159 Followup to previous commit: fix same wrong numinput handling in other modal ops.
Also stumbled uppon 'move marker' code, was needing a bunch of fixes, cleanup and simplification,
and added a candy feature - now you will enter numinput values in seconds when editor is
in 'time' mode, instead of frames!
2014-08-25 20:26:45 +02:00
Bastien Montagne
b638696ca6 Fix T41534: Bevel practically unusable interactively if set to percent amount type.
Turned out to be a clean/fix up of modal bevel tool, percentage mode handling was broken,
numinput handling was broken, etc.

Also added a way to switch between bevel types (modes) with M key, and tweaked a bit
numinput code to return early in case of 'char' event with ctrl modifier.
2014-08-25 20:26:29 +02:00
Campbell Barton
ca1bca442a Fix T40993: Store selection history for extrude 2014-08-25 16:57:38 +10:00
Campbell Barton
90e1746d89 BMesh: correct flag use
Allowed fill to make duplicate faces
2014-08-21 13:08:13 +10:00
Bastien Montagne
c3e59379c0 UI message fix (yeah, I know... :/ ). 2014-08-20 21:52:00 +02:00
Campbell Barton
b9ebf44139 BMesh: intersect tool
Modeling tool to cut intersections into geometry (like boolean, without calculating inside/outside).
Faces are split along intersections, leaving new edges selected.

Access from Face menu.
2014-08-18 17:09:30 +10:00
Campbell Barton
4795b61c1b Cleanup: assert / warn 2014-08-18 16:05:06 +10:00
Campbell Barton
1dd17bed4a Knife tool: simplify hit-depth calculation 2014-08-17 12:50:48 +10:00
Campbell Barton
f2821e392b hint checks to re-alloc as unlikely
also edit comments for knife tool
2014-08-14 11:07:33 +10:00
Campbell Barton
818a036c1a Fix T39387: Knife makes duplicate verts with subsurf 2014-08-13 15:06:38 +10:00
Campbell Barton
3529913629 Math Lib: name signed versions of dist_to_plane_v3 explicitly
also add unsigned versions
2014-08-13 14:34:58 +10:00
Campbell Barton
3e90d7971a Knife tool: avoid copying vectors 2014-08-13 13:56:53 +10:00
Campbell Barton
d17643ce1e Knife tool: cleanup threshold use, avoid sqrt 2014-08-13 08:08:18 +10:00