Rotation:
- Add a private attribute Vector to store the direction of the rotation, and manage not to erase this direction when the angle id 0.
- Add a private attribute to store the angle as defined (no modulo etc)
- Keep the quaternion for calculations
PropertyGeo
- Saves the rotation with angle and direction instead of saving the quaternion.
- Attribute name chosen: Ox, Oy and Oz for the coordinates of the axis and A for the angle in radians. This has to be validated.
- Backward compatibility with the saved files with quaternion (test presence of A to determine which of the Quaternion (old way) or the direction and angle is stored (new way). New files can be opened by old FreeCAD and vice-versa.
The only side effect I can imagine is that it was possible to set a vector to 0, 0, 0 if the angle was not 0, what is somehow non sense. Now when setting to 0, 0 0 the last not null vector is kept. The vector can not be null any longer.
Capitalized all remaining uncapitalized tooltips.
+ Fixed typo in instantiate() function. Shouldn't have any repercussions on the code, AFAICT.
+ other typos
+ some are doxy others are just comment code.
+ some minor whitespace and grammatical tweaks.
+ app/SCL/* typos have also been submitted upstream (https://github.com/stepcode/stepcode/pull/366). So it's ok to merge them in to master.
The new constructor accepts wanted directions of x,y,z axes of rotated
frame, and a priority string that affects how the vectors are made
perpendicular to each other.
Example - construct placement for sketch on XZ plane:
v = App.Vector
App.Rotation(v(1,0,0),v(0,0,1),v())
- Change default unit for Length, if out of range of scaling, to m
- Add density scaling as in Internal schema (avoids density always displaying in kg/mm^3)
- Change velocity to m/s rather than mm/s
remove QT_TRANSLATE_NOOP because of compiler warnings
mark _isReported as mutable to avoid removing const keyword from ReportException()
improve whitespaces