Skip to content

Releases: alexjlockwood/ShapeShifter

v1.1.0

29 Jul 22:07
Compare
Choose a tag to compare

There have been a ton of improvements since the last version... sorry I haven't been keeping this up to date.

Main thing I do want to mention is there is now a beta version of Shape Shifter available at https://beta.shapeshifter.design. Check it out!

v1.0.4

08 Aug 16:33
Compare
Choose a tag to compare

Changelog (released on 2017-08-08)

Features

  • Add ability to convert between path and clip-paths via the layer list.
  • Add ability to flatten groups into their children layers. This gives you the ability to bake transforms into a path layer's path data string, for example.

Bug fixes

  • A few rare-ish transform matrix related bugs. :)

v1.0.3

08 Aug 16:30
Compare
Choose a tag to compare

Changelog (released on 2017-07-24)

Features

  • Better results when auto fixing paths with multiple subpaths.

v1.0.2

06 Jul 16:47
Compare
Choose a tag to compare

Changelog (released on 2017-07-10)

Features

  • Add a dark theme.
  • Add ability to change the canvas' background color.
  • Add ability to cut/copy/paste animation blocks in the timeline.
  • Add ability to import SVGs and VectorDrawables by copying/pasting plain text into the window.

Bug fixes

  • Better support for importing clip paths from SVG.
  • Reduce size of exported .shapeshifter files.
  • Show highlights in the canvas when selecting hidden layers.
  • Fix bug where the last frame of a SVG spritesheet wouldn't display. (#164)

v1.0.1

26 Jun 02:08
Compare
Choose a tag to compare

Changelog (released on 2017-06-26)

Bug fixes

  • Export trimmed paths in exported SVGs and SVG spritesheets (#157)
  • Export clip paths in exported SVGs and SVG spritesheets
  • Fixed bug where AVD target names were being exported incorrectly (#154)
  • Fix element-resize-detector bug (#155)
  • Fix bug where stroke width wouldn't scale properly on SVG import
  • Fix bug where transforms were being applied in the wrong order during SVG export
  • Export a single SVG file when no animation blocks are defined in the workspace
  • Fix bug where mouse clicks were being calculated incorrectly in the canvas

v1.0.0

20 Jun 13:30
Compare
Choose a tag to compare

Changelog (released on 2017-06-19)

Features

  • Android Icon Animator and Shape Shifter have merged into one!

v0.3.0

01 May 13:12
Compare
Choose a tag to compare

Changelog (released on 2017-05-01)

Features

  • Made significant improvements to Shape Shifter's UI, making it overall much easier to use.
    Changes are now primarily made through the canvas via a new "action mode"-centric
    user interface, which is activated whenever the user selects a subpath, segment, and/or point.
  • Added a new pair subpaths mode, which allows the user to specify how subpaths in the start
    canvas should morph into subpaths in the end canvas.
  • Added three new export formats for the web:
    • Export to SVG spritesheet (30fps and 60fps).
    • Export to standalone SVG frames (30fps and 60fps).
    • Export to CSS keyframes (note that Chrome is the only browser that supports them
      as of April, 2017).
  • Added the ability to import VectorDrawable files into the workspace.
  • Added the ability to delete subpaths and split segments directly from the canvas.

v0.2.0

01 May 13:12
Compare
Choose a tag to compare

Changelog (released on 2017-04-10)

Features

  • Shape Shifter has a new landing page: https://shapeshifter.design
  • It is now possible to morph paths with different numbers of subpaths! Here's
    a rundown of the new features that make it possible:
    • Unmatched subpaths are automatically animated down to a point. For example,
      consider a play and pause icon. The play icon consists of a single
      triangular subpath and the pause icon consists of two rectangular subpaths.
      By default ShapeShifter will morph the play icon subpath into the pause icon's
      first subpath. The remaining pause icon subpath will animate out of view by
      collapsing itself down to a point until it is no longer visible.
    • The ability to reorder subpaths. For example, if you wanted to morph the
      play icon subpath into the second pause icon subpath instead of the first,
      it is now possible to adjust the Z-order of the pause bar's subpaths in order
      to achieve that.
    • The ability to split stroked subpaths. For example, if you want to morph
      a stroked path with one subpath into a stroked path with two subpaths, you can
      achieve this by splitting the first subpath into two. Splitting a stroked subpath
      is effectively the same as inserting a 'moveTo' command into the SVG's path data.
    • The ability to split filled subpaths. For example, if you want to morph
      a play icon into a pause icon, you can now achieve this by cutting the play
      icon into two (i.e. so that the top part of the triangle morphs into the
      first pause bar and the bottom part of the triangle morphs into the second).
  • The ability to add new split points by clicking on the canvas directly.
  • The ability to morph paths with different SVG viewport dimensions. For example,
    if you want to morph path A with viewBox="0 0 18 24" into path B with
    viewBox="0 0 40 48", ShapeShifter will respond by:
    1. Scaling path A by a factor of 48 / 24 = 2 (so that its new viewBox
      becomes "0 0 36 48"), and
    2. Translating path A horizontally by (40 - 36) / 2 = 2 (so that its
      new viewBox can become "0 0 40 48", just like path B).
  • A simpler UI for adjusting an animation's rotation. Thanks to
    Jake Archibald and
    Roman Nurik for the idea!
  • The ability to add and delete new SVG paths even after the initial import.
    Clicking on an empty canvas will now open the file picker to import a new
    SVG as well.
  • Snap-to-point detection in the canvas while dragging and adding new points.

v0.1.3

13 Mar 05:49
Compare
Choose a tag to compare

Changelog (released on 2017-03-13)

Features

  • Exported AnimatedVectorDrawables will now automatically animate differences
    in the <vector> tag's alpha property. (#68) (82281e0)

Bug fixes

  • SVG import is now much better at understanding <defs> and <use> tags. (#13) (0a94a0b)
  • SVG import now strips away invisible paths with no fill or stroke colors. (5d4fc31)
  • SVG import now correctly parses <rect> shapes containing rx and/or
    ry attributes. (#3) (96d0f1d)
  • Added a README.txt file to exported zip files with details on
    the archive's contents. (#73) (7a27f90)
  • Switched over to Angular 2's OnPush change detection strategy, which should
    increase overall application performance. (#74) (281e6e4)
  • Fixed a couple of miscellaneous bugs that occurred when switching between
    different SVG paths. (#75) (#76) (6560b60) (7a4e49f)

v0.1.2

06 Mar 02:51
Compare
Choose a tag to compare

Changelog (released on 2017-03-06)

Features

  • Shape Shifter now works offline! A cached version of the app will be saved in
    your browser's cache so that it can be used without an internet connection.
    Note that currently only Chrome, Firefox, and Opera are
    supported. (#61) (50e694e) (d770fce)
  • SVGs matching the final start and end state canvases are now exported for use on the web. (#43)
  • VectorDrawables matching the final start and end state canvases are now exported for
    use in Android apps. (#52)
  • Exported AnimatedVectorDrawables will now automatically animate differences
    in each path's fillColor, strokeColor, fillAlpha, strokeAlpha, and strokeWidth. (#51) (500a4f8) (0dabb5f)
  • SVG import now makes a best effort attempt to merge multiple <path>
    elements into a single <path> containing multiple subpaths. Shape Shifter currently
    only supports morphing one <path> element at a time, but this enhancement should make
    that less likely to be an issue in the meantime.

Bug fixes

  • Fixed SVG import crash in Firefox. (#69) (d0d95b6)
  • Fixed SVG import bug that caused <circle> and <ellipse> tags to be parsed incorrectly. (#71) (a487576)
  • SVG stroke-width and stroke-miterlimit are now imported with default values
    of 1 and 4 respectively. (#66) (1d47cef) (50e694e)
  • Fixed bug that would sometimes cause morphable paths to be displayed as unmorphable. (#50) (0e3d45d)
  • SVG fill color is now imported as black by default.
    (0debebe)
  • Fixed scaling bug in Safari when importing the 'morphing animals' demo. (5a7a5bd)