Commit Graph

45 Commits

Author SHA1 Message Date
Campbell Barton
033b4ffddd Fix for curve map-taper being greyed out incorrectly 2014-05-27 00:01:23 +10:00
Lukas Treyer
97cb76a45d Bevel Factor Mapping
Bevel Factor Mapping allows to control the relation between bevel factors
(number between 0 and 1) and the rendered start and end point of a beveled
spline.

There are three options: "Resolution", "Segments", "Spline". "Resolution"
option maps bevel factors as it was done < 2.71, "Spline" and "Segments"
are new.

* "Resolution“: Map the bevel factor to the number of subdivisions of a
  spline (U resolution).
* "Segments“: Map the bevel factor to the length of a segment and to the
  number of subdivisions of a segment.
* "Spline": Map the bevel factor to the length of a spline.

Reviewers: yakca, sergey, campbellbarton

CC: sanne

Differential Revision: https://developer.blender.org/D294
2014-03-28 16:44:33 +06:00
Sergey Sharybin
7fbb7e32fd Fix T38450: Remove unused Children Offset option
This option was only exposed to the interface and internally
was doing basically nothing.

Removing it to prevent artists from being confused.
2014-02-03 19:34:29 +06:00
Campbell Barton
7947b3d21d Fix for recent regression in curve geometry panel poll 2013-12-15 01:33:10 +11:00
Sergey Sharybin
eb9d94f48b Fix T37786: Curves: Geometry tab is missing
Was broken by rB2a55d68e1927 which inverted condition
in poll function for Geometry panel.
2013-12-12 18:08:41 +06:00
Campbell Barton
2a55d68e19 Fix for curve pinning raising an exception 2013-12-11 22:04:29 +11:00
Sergey Sharybin
3a370ec6ec Move curve's boundbox and texspace calculation out of modifier stack
There were several issues with how bounding box and texture space
are calculated:

- This was done at the same time as applying modifiers, meaning if
  several objects are sharing the same curve datablock, bounding
  box and texture space will be calculated multiple times.

  Further, allocating bounding box wasn't safe for threading.

- Bounding box and texture space were evaluated after pre-tessellation
  modifiers are applied. This means Curve-level data is actually
  depends on object data, and it's really bad because different
  objects could have different modifiers and this leads to
  conflicts (curve's data depends on object evaluation order)
  and doesn't behave in a predictable way.

  This commit moves bounding box and texture space evaluation from
  modifier stack to own utility functions, just like it's was done
  for meshes.

  This makes curve objects update thread-safe, but gives some
  limitations as well. Namely, with such approach it's not so
  clear how to preserve the same behavior of texture space:
  before this change texture space and bounding box would match
  beveled curve as accurate as possible.

  Old behavior was nice for quick texturing -- in most cases you
  didn't need to modify texture space at all. But texture space
  was depending on render/preview settings which could easily lead
  to situations, when final result would be far different from
  preview one.

  Now we're using CV points coordinates and their radius to approximate
  the bounding box. This doesn't give the same exact texture space,
  but it helps a lot keeping texture space in a nice predictable way.

  We could make approximation smarter in the future, but fir now
  added operator to match texture space to fully tessellated curve
  called "Match Texture Space".

Review link:

  https://codereview.appspot.com/15410043/

Brief description:

  http://wiki.blender.org/index.php/User:Nazg-gul/GSoC-2013/Results#Curve_Texture_Space
2013-12-11 16:32:41 +06:00
Campbell Barton
dce05f6a67 3D Text: remove 'body' editing from the UI.
This wont preserve newlines, looses materials and is broken in edit-mode.
2013-12-02 21:53:58 +11:00
Campbell Barton
1ea47c9af9 Code Cleanup: style, spelling and pep8 edits 2013-11-20 03:40:10 +11:00
Thomas Dinges
d9f1ca1c3f Interface / Text:
* Add "Open" operator to the Text Editor header, it's a common operation next to New.
* Add Body Text property to the Font panel for Text objects, so text can easily be pasted into Blender and editing it becomes easier too. This was only accessible via the RNA Data blocks before.
2013-10-14 17:14:43 +00:00
Sv. Lockal
8ff67f12c7 Fix descriptions for mask selection operators and use less ambiguous "letter-spacing" term 2013-07-20 12:24:53 +00:00
Sergey Sharybin
529209ff83 Added Map Taper option which if enabled maps affect of taper object on
actually beveled part of curve (previously affect of taper would have
been clamped by start/end bevel factor)

Here's an illustration:
http://wiki.blender.org/uploads/5/5d/Blender2.65_CurveMapTaper.png
2012-11-08 08:16:44 +00:00
Campbell Barton
b0371f053c style cleanup 2012-08-17 18:36:20 +00:00
Bastien Montagne
63810ffcef Style edit (mostly), use """ for docstrings (not ''').
Should also fix the broken py ops tips...
2012-07-03 09:02:41 +00:00
Campbell Barton
98e6912480 style cleanup 2012-06-19 22:17:19 +00:00
Sergey Sharybin
72fa158724 Added start and end bevel factor for curves, so now it's possible to make
a bevelled curve which isn't fully covered with a bevel.
2012-05-04 17:04:20 +00:00
Campbell Barton
01e55b6fc3 code cleanup: remove unused imports/defines + other redundant code. 2012-04-08 13:11:25 +00:00
Thomas Dinges
fe99e731c8 UI files:
* Naming convention fixes and one if / elif fix.
2012-04-05 09:52:03 +00:00
Campbell Barton
ee84084f99 style cleanup: pep8 + picky edits 2012-03-08 05:36:05 +00:00
Campbell Barton
95c14aa685 Fix UI error - some curve settings were in the path panel and were greyed out when 'Path Animation' was disabled, but were infact used for the curve deform modifier.
noticed while looking into bug [#30349].

Move these settings under the main curves panel under text "Path / Curve-Deform:"
2012-02-28 11:18:05 +00:00
Campbell Barton
1f74789d12 Correct mathutils documentation, also correct some python spelling errors and add makefile target check_spelling 2012-02-08 04:37:37 +00:00
Campbell Barton
e3958015db Code Cleanup: check is / is not when comparing singletons. 2012-02-02 21:07:56 +00:00
Sergey Sharybin
3b3d811bf0 Disallow fill caps for curves without bevel object.
It's getting complicated to detect which part of curve is actually a
cap in cases like extruded 2d curve with non-zero depth.
2012-02-02 19:20:51 +00:00
Sergey Sharybin
aef11b52d0 Added option to fill caps of bevelled curves.
It can be found in Shape panel below Fill label. If this option is enabled,
caps of curve will be filled.
2012-02-02 15:15:52 +00:00
Sergey Sharybin
2899e5584c Whitespace cleanup in curve properties script 2012-01-06 21:24:10 +00:00
Thomas Dinges
e95a05b29d 2.6 UI Files:
* Some code cleanup.
2012-01-05 16:04:25 +00:00
Campbell Barton
7360f64a51 radius interpolation was incorrectly greyed out for 2D curves. 2011-10-13 06:07:11 +00:00
Campbell Barton
f4c56a879d remove use of gettext: _("...") style translation now its handled by rna. 2011-09-21 15:18:38 +00:00
Campbell Barton
8f5112f191 pep8 update & some minor cmake edits. 2011-09-20 18:29:19 +00:00
Sergey Sharybin
1c0bdad835 svn merge -r40222:40344 ^/trunk/blender 2011-09-19 10:48:15 +00:00
Sergey Sharybin
226ff0d4da Curve back/front fill changes:
- Use enum instead of back/front flags combinations.
- This flags behaves differently for 2d/3d curves so use different enums for them.
- This commit shouldn't change existing files.
2011-09-19 09:47:58 +00:00
Sergey Sharybin
0eda51f2ea Fixing issues with i18n stuff:
- Make gettext stuff draw-time. so switching between languages
  can happens without restart now.
- Added option to translate visible interface (menus, buttons, labels)
  and tooltips. Now it's possible to have english UI and localized tooltips.
- Clean-up sources, do not use gettext stuff for things which can be
  collected with RNA.
- Fix issues with windows 64bit and ru_RU locale on my desktop
  (it was codepage issue).
- Added operator "Get Messages" which generates new text block with
  with all strings collected from RNA.
- Changed script for updating blender.pot so now it appends
  messages collected from rna to automatically gathered messages.
  To update .pot you have to re-generate messages.txt using "Get Messages"
  operator and then run update_pot script.
- Clean up old translation stuff which wasn't used and most probably
  wouldn't be used.
- Return back "International Fonts" option, so if it's disabled, no
  gettext lookups happens on draw.
- Merged read_homefile function back. No need in splitting it.

TODO:
- Custom fonts and font size.
  Current font isn't nice at least for russian locale, it's
  difficult to read it.
- Put references to messages.txt so gettext can merge translation when
  name/description of some property changes.
2011-09-15 13:20:18 +00:00
Xiao Xiangquan
981f7fcd0d merge with trunk r39834 2011-09-01 15:08:32 +00:00
Daniel Salazar
f0259542e1 Front/Back togles should not disable when curve is 2D and bevel object is used
http://www.pasteall.org/pic/show.php?id=16449
2011-08-16 12:37:23 +00:00
Campbell Barton
b374ab919a import common classes from bpy.types, saves ~1000 python getattrs on startup. 2011-08-12 06:57:00 +00:00
Xiao Xiangquan
465c3b82fa merge with trunk r39216 2011-08-10 14:32:03 +00:00
Campbell Barton
22694c993a fix [#28186] textboxes properties not animatable 2011-08-09 14:50:40 +00:00
Xiao Xiangquan
79656a65e0 finish handle for properties_XXX scripts 2011-08-02 16:51:50 +00:00
Campbell Barton
301e5b4ea0 fix for various python bugs and remove unused var. 2011-07-10 17:26:15 +00:00
Campbell Barton
eaae38551f pep8 compliance 2011-06-21 17:17:51 +00:00
Brecht Van Lommel
5dcb853ed9 Fix #27660: texture space panel was missing for curve & metaballs, now they
have same panel as mesh. Patch by Ronan Ducluzeau, thanks!
2011-06-17 13:53:47 +00:00
Daniel Salazar
86f2f425bf UI for texture space in mesh/curve/mball data properties
http://pasteall.org/pic/show.php?id=13244
2011-06-04 08:09:34 +00:00
Campbell Barton
265cdf29fb fix [#26754] Live Edit and Editing UI scripts don't work 2011-04-04 10:13:04 +00:00
Sergey Sharybin
bc88e61efa "Fill Deformed" option for curves isn't dependent from bevel object,
so it shouldn't be grayed out even if bevel object is set.
2011-03-25 22:02:50 +00:00
Campbell Barton
2e6a02438e move script directories for internal blender scripts.
ui/ --> startup/bl_ui
op/ --> startup/bl_operators

scripts/startup/ is now the only auto-loading script dir which gives some speedup for blender loading too.

~/.blender/2.56/scripts/startup works for auto-loading scripts too.
2011-03-21 12:35:49 +00:00