So this would be the workaround for 2.14.x as asked in the question.
An advantages over "Rotate Point Symbols":
With the (end)-node of the rotating line you can directly point to another object and snap it. IMO with the "Rotate Point Symbols" it is not possible to
use the right rotating angle when you point an object with the cursor.
You can achieve this easily with the use of an additional vector line layer. The idea is to assign an angle value from a line you create to the point layer symbol via joining both layers.
Edited - I've post another workflow at the bottom of this answer which uses the awesome QGIS plugin
AutoFields from German Carrillo.
This plugin allows you to configure vector fields to be automatically calculated for you when digitizing new features or modifying existing ones. Think about them as triggers in a database or as an automatic Field Calculator.
On which QGIS versions does AutoFields plugin work?
You can use AutoFields on QGIS v2.12.x or greater. Although you need v2.14.x if you want to get geometric properties (e.g., area, length, and perimeter) converted from layer CRS (Coordinate Reference System) units to units defined in the QGIS project.
I. Having a point layer
symbol_point with 5 features and the corresponding attributes
id (for joining),
angle (stands for the old given angle),
II. Having a line layer
rotation_line holding the attributes
id (for joining),
Workflow 1 - without using external plugins, only works on insert a line not on changing the geometry.
Enable snapping on the point layer:
Settings > Snapping Options > Layer selection: Advanced. Choose your layer and set Mode
to vertex and the tolerance.
Properties > Fields > Text Edit of the field
line_angle of the line layer. There you set the
Default Value to
to_int(degrees(azimuth(start_point($geometry ),end_point($geometry)))) like shown in this picture. This updates the field
line_angle after you've create the line with the azimuth of the line. You have to start at the point, otherwise you get the "opposite" azimuth!
- Set the join in the
Properties of the point layer: Join layer
rotation_line with join field
id and target field
id (from the point_layer). The field
line_angle from the line layer should be joined.
Choose the new field
rotation_line_line_angle as a
data defined override for the symbol rotation in the
Enable editing on the line layer and create a line starting from the point (should be snapped) and with the azimuth you want using the courser. You don't have to care about the length of the line. Important is the azimuth of the line. You have to enter the same
id the point has. See the picture here. The
line_angle is set automatically. After clicking OK the point symbol should be changed to the angle of the line.
Workflow 2 - with plugin
- You don't have to use Step 2 in Workflow 1
- Use Plugin
AutoFields as follows:
rotation_line in the Layers window b) enable
Existing Field in the field window and choose field
line_angle c) enable
Custom Expression in the value/expression window and paste
to_int(degrees(azimuth(start_point($geometry ),end_point($geometry)))) in the expression field.
Having the join set from workflow 1 the point symbol changes immediately when you change the rotation of the line with the node tool.