Add GetBoundingBox and use rotations in MathTextUtils.

This patch adds a GetBoundingBox function to vtkMathTextUtilities
and applies rotations from the supplied vtkTextProperty.

The matplotlib MathText interface doesn't have an entry point to
just get the bounding box, so the image is rendered by python as normal,
and then the dimensions are returned.

The MathText library doesn't support rendering rotated text directly,
so a vtkImageReslice filter is used to rotate the image.

Change-Id: I65be970af47c7f8de65f6279c922b6b001f62780
Clean up vtkTextActor and reuse more of it in vtkMathTextActor.

vtkTextActor changes:
* Replace this->vtkActor2D:: with this->Superclass::
* Abstract image renderering and bounding box calculation to protected
  virtuals
* Copy Input string during shallow copy.
* Implement GetBounds()
* Add Input to PrintSelf output

vtkMathTextActor changes:
* Add a FallbackText member that will be rendered by FreeTypeUtilities
  if MathText support is unavailable.
* Removed a large amount of code that was copied/reimplemented from
  vtkTextActor.
* Implement new virtuals from vtkTextActor that render MathText if
  possible, otherwise render fallback text.

Change-Id: Ibb7aa51ec46e7778b9535dd62a00d7ef9395cd8c
Reuse vtkTextActor3D implementation as base for vtkMathTextActor3D.

Also implement a fallback text mechanism for the math text actor.

Change-Id: I3c4aac19453883ac65933204e3b2e402134f1c37
Fixup GL2PS exporter to work with new mathtext classes.

The special-prop rendering logic needs to change to properly
handle the new actor hierarchy and the raster position of text
annotations is changed to prevent clipping.

Change-Id: If3ebe9b33783b7f484bc5d4bead5c845c83af725
Add function to copy pixel data from the framebuffer for GL2PS.

This is necessary to get texture overlays (e.g. ParaView scalar
bar actors) correct.

Change-Id: I9ef0166d9cd3c64bdd4e243ebe84d1343fe2305d
Move GL2PS special prop handling to a virtual function.

This way subclasses can handle special props that VTK doesn't know
about (this is needed for ParaView to export vtkPVScalarBarActor
properly).

Change-Id: I9e374d4b4f895bc03c42e698af9c8d958b089fdc
Reset vtkRenderWindow::CapturingGL2PSSpecialProps when finished.

This fixes crashes when exporting a scene more than once per process.

Change-Id: Id0926ded6a612a01c389875815bf6f8927275de1
Forward vtkScalarBarRepresentation visibility to actor.

It doesn't make sense for one to be visible while the other isn't,
and separating the visiblities breaks gl2ps export.

Change-Id: I2b655755481d5c3f0e511c215ef507f12aa240bd
Fix actor visibility preservation in GL2PS.

The visibility arrays were incorrectly allocated and indexed. This
wasn't noticible when only using one renderer, but caused bizarre
behavior when switching to multiple renderers.

Change-Id: Ie5dc75314e0186812068f04ff7773f7906415879
Style fixes.

Change-Id: Ic11fe649f106695a75a464f2f56e8eefb1836f0b
missing eof line

Change-Id: I7d193c620ebe574554b49e3db2a23f3696f3b72b
Silence assigned but unused var warning

Change-Id: I82ff0a863fe0351e2ff0e1e18993286f360d8849
Fix array subscript is above array bounds warning.

Wow, it's cool that the compiler can catch that.

Change-Id: Ifdaf30c3fc2ae47650f4e0bf8a402290110fc82b
silence more possibly uninitialized var warnings

Change-Id: I6a1e44a6f3d74c685367b87bdaaae7af0059c7d0
Fix spurious unused variable comp warning

Change-Id: I203f0b0d671df4ae0153a7a558b95e510e0fe8e2
Fixed compiler warnings in charts classes

Change-Id: I7e0c8a994fccb7eb51b542b7aebd770eb76a808f
Merge topic 'dashboard_cleanup' into master

e3cd13b5 Fix spurious unused variable comp warning
8e858268 silence more possibly uninitialized var warnings
2eccce24 Fix array subscript is above array bounds warning.
0b28c543 Silence assigned but unused var warning
3bc97738 missing eof line
Charts tests should use standard naming scheme

These were moved very early on, change them to follow the standard
scheme indicating module being tested and language the test is written
in.

Change-Id: Id6ebb859165935ff8408fd7a30f44751a9489cb0
Fix ffmpeg build issues with 0.6/0.7.

Using LIBAVFORMAT_VERSION_MAJOR to pick appropriate API. Tested with FFMPEG
0.6.5 (LIBAVFORMAT_VERSION 52.64.2), 0.7.1 (LIBAVFORMAT_VERSION 52.111.0), and
0.11.1 (LIBAVFORMAT_VERSION 54.6.100).

Change-Id: I9f0460f1adeace15eaf7a72a318caa2aa58ab5c4
COMP: Fix warnings generated by clang.

Change-Id: I7e6d41592b342de910c1bd3df21ecf19ca200c8c