Freestyle SVN revision 45492

From the last 45431 to this SVN revision we have accumulated a few changes mainly related to the parameter editor in Freestyle.

In the improved parameter editor we can find 4 new options for the thickness of the strokes, a rearrangement of the buttons in the panel and fixes for a few bugs.

You can get more information about the new features in freestyle in this article of the blog: http://freestyleintegration.wordpress.com/2012/04/03/development-updates-on-april-2/

And here is the full list of changes:

  • Added restrictions so as to apply thickness position options (revision 45463) only when chaining is disable or the Plain chaining is used with the Same Object option enabled. The default “center” positioning is used otherwise.
  • Fix for untested portions in the last commit concerning thickness position options.
  • New options in the Parameter Editor mode for controlling the position of stroke thickness. The new options enable a better control on the position of stroke thickness with respect to stroke backbone geometry.
    Three predefined positions are:

    • center:
      Thickness is evenly split to the left and right side of the stroke geometry.
    • inside:
      Strokes are drawn within object boundary.
    • outside:
      Strokes are drawn outside the object boundary.

    • relative:
      Another option called “relative” allows users to specify the relative position by a number between 0 (inside) and 1 (outside).
The thickness position options are applied only to strokes of the edge types SILHOUETTEand BORDER, since these are the only edge types defined in terms of object boundary.
Strokes of other edge types are always using the “center” option.
  • Fix for an unnormalized normal vector in ViewEdgeXBuilder::BuildSmoothFEdge().
  • Fix for broken face normals in FEdgeSharp and FEdgeSmooth, resulting from splitting of FEdges at 2D intersections (i.e., at TVertices).
  • Fix for a crash in the single layer mode with Freestyle enabled.