Remove C++ escaping from *Py.xml templates
Now all escaping required for the C++ code generation is done when the .cpp/.h files are generated. Previously, only newlines were escaped automatically. This was a) inconsistent and b) leaked c++ details into the xml data. In addition, the escaping is now done in one central place, harmonizing the three previous implementations. Pre-existing c++ escape sequences in the XML files have been replaced by their literal equivalent so that the resulting python doc sting remains unchanged.
This commit is contained in:
@@ -15,27 +15,35 @@
|
||||
FatherNamespace="Base">
|
||||
<Documentation>
|
||||
<Author Licence="LGPL" Name="Juergen Riegel" EMail="FreeCAD@juergen-riegel.net" />
|
||||
<UserDocu>Base.Placement class.\n
|
||||
<UserDocu>Base.Placement class.
|
||||
|
||||
A Placement defines an orientation (rotation) and a position (base) in 3D space.
|
||||
It is used when no scaling or other distortion is needed.\n
|
||||
The following constructors are supported:\n
|
||||
It is used when no scaling or other distortion is needed.
|
||||
|
||||
The following constructors are supported:
|
||||
|
||||
Placement()
|
||||
Empty constructor.\n
|
||||
Empty constructor.
|
||||
|
||||
Placement(placement)
|
||||
Copy constructor.
|
||||
placement : Base.Placement\n
|
||||
placement : Base.Placement
|
||||
|
||||
Placement(matrix)
|
||||
Define from a 4D matrix consisting of rotation and translation.
|
||||
matrix : Base.Matrix\n
|
||||
matrix : Base.Matrix
|
||||
|
||||
Placement(base, rotation)
|
||||
Define from position and rotation.
|
||||
base : Base.Vector
|
||||
rotation : Base.Rotation\n
|
||||
rotation : Base.Rotation
|
||||
|
||||
Placement(base, rotation, center)
|
||||
Define from position and rotation with center.
|
||||
base : Base.Vector
|
||||
rotation : Base.Rotation
|
||||
center : Base.Vector\n
|
||||
center : Base.Vector
|
||||
|
||||
Placement(base, axis, angle)
|
||||
define position and rotation.
|
||||
base : Base.Vector
|
||||
@@ -45,115 +53,149 @@ angle : float</UserDocu>
|
||||
</Documentation>
|
||||
<Methode Name="copy" Const="true">
|
||||
<Documentation>
|
||||
<UserDocu>copy() -> Base.Placement\n
|
||||
<UserDocu>copy() -> Base.Placement
|
||||
|
||||
Returns a copy of this placement.</UserDocu>
|
||||
</Documentation>
|
||||
</Methode>
|
||||
<Methode Name="move">
|
||||
<Documentation>
|
||||
<UserDocu>move(vector) -> None\n
|
||||
Move the placement along a vector.\n
|
||||
vector : Base.Vector\n Vector by which to move the placement.</UserDocu>
|
||||
<UserDocu>move(vector) -> None
|
||||
|
||||
Move the placement along a vector.
|
||||
|
||||
vector : Base.Vector
|
||||
Vector by which to move the placement.</UserDocu>
|
||||
</Documentation>
|
||||
</Methode>
|
||||
<Methode Name="translate">
|
||||
<Documentation>
|
||||
<UserDocu>translate(vector) -> None\n
|
||||
Alias to move(), to be compatible with TopoShape.translate().\n
|
||||
vector : Base.Vector\n Vector by which to move the placement.</UserDocu>
|
||||
<UserDocu>translate(vector) -> None
|
||||
|
||||
Alias to move(), to be compatible with TopoShape.translate().
|
||||
|
||||
vector : Base.Vector
|
||||
Vector by which to move the placement.</UserDocu>
|
||||
</Documentation>
|
||||
</Methode>
|
||||
<Methode Name="rotate" Keyword="true">
|
||||
<Documentation>
|
||||
<UserDocu>rotate(center, axis, angle, comp) -> None\n
|
||||
<UserDocu>rotate(center, axis, angle, comp) -> None
|
||||
|
||||
Rotate the current placement around center and axis with the given angle.
|
||||
This method is compatible with TopoShape.rotate() if the (optional) keyword
|
||||
argument comp is True (default=False).
|
||||
|
||||
center : Base.Vector, sequence of float\n Rotation center.
|
||||
axis : Base.Vector, sequence of float\n Rotation axis.
|
||||
angle : float\n Rotation angle in degrees.
|
||||
comp : bool\n optional keyword only argument, if True (default=False),
|
||||
center : Base.Vector, sequence of float
|
||||
Rotation center.
|
||||
axis : Base.Vector, sequence of float
|
||||
Rotation axis.
|
||||
angle : float
|
||||
Rotation angle in degrees.
|
||||
comp : bool
|
||||
optional keyword only argument, if True (default=False),
|
||||
behave like TopoShape.rotate() (i.e. the resulting placements are interchangeable).
|
||||
</UserDocu>
|
||||
</Documentation>
|
||||
</Methode>
|
||||
<Methode Name="multiply" Const="true">
|
||||
<Documentation>
|
||||
<UserDocu>multiply(placement) -> Base.Placement\n
|
||||
<UserDocu>multiply(placement) -> Base.Placement
|
||||
|
||||
Right multiply this placement with another placement.
|
||||
Also available as `*` operator.\n
|
||||
placement : Base.Placement\n Placement by which to multiply this placement.</UserDocu>
|
||||
Also available as `*` operator.
|
||||
|
||||
placement : Base.Placement
|
||||
Placement by which to multiply this placement.</UserDocu>
|
||||
</Documentation>
|
||||
</Methode>
|
||||
<Methode Name="multVec" Const="true">
|
||||
<Documentation>
|
||||
<UserDocu>multVec(vector) -> Base.Vector\n
|
||||
Compute the transformed vector using the placement.\n
|
||||
vector : Base.Vector\n Vector to be transformed.</UserDocu>
|
||||
<UserDocu>multVec(vector) -> Base.Vector
|
||||
|
||||
Compute the transformed vector using the placement.
|
||||
|
||||
vector : Base.Vector
|
||||
Vector to be transformed.</UserDocu>
|
||||
</Documentation>
|
||||
</Methode>
|
||||
<Methode Name="toMatrix" Const="true">
|
||||
<Documentation>
|
||||
<UserDocu>toMatrix() -> Base.Matrix\n
|
||||
<UserDocu>toMatrix() -> Base.Matrix
|
||||
|
||||
Compute the matrix representation of the placement.</UserDocu>
|
||||
</Documentation>
|
||||
</Methode>
|
||||
<Methode Name="inverse" Const="true">
|
||||
<Documentation>
|
||||
<UserDocu>inverse() -> Base.Placement\n
|
||||
<UserDocu>inverse() -> Base.Placement
|
||||
|
||||
Compute the inverse placement.</UserDocu>
|
||||
</Documentation>
|
||||
</Methode>
|
||||
<Methode Name="pow" Const="true">
|
||||
<Documentation>
|
||||
<UserDocu>pow(t, shorten=True) -> Base.Placement\n
|
||||
<UserDocu>pow(t, shorten=True) -> Base.Placement
|
||||
|
||||
Raise this placement to real power using ScLERP interpolation.
|
||||
Also available as `**` operator.\n
|
||||
t : float\n Real power.
|
||||
shorten : bool\n If True, ensures rotation quaternion is net positive to make
|
||||
Also available as `**` operator.
|
||||
|
||||
t : float
|
||||
Real power.
|
||||
shorten : bool
|
||||
If True, ensures rotation quaternion is net positive to make
|
||||
the path shorter.</UserDocu>
|
||||
</Documentation>
|
||||
</Methode>
|
||||
<Methode Name="sclerp" Const="true">
|
||||
<Documentation>
|
||||
<UserDocu>sclerp(placement2, t, shorten=True) -> Base.Placement\n
|
||||
<UserDocu>sclerp(placement2, t, shorten=True) -> Base.Placement
|
||||
|
||||
Screw Linear Interpolation (ScLERP) between this placement and `placement2`.
|
||||
Interpolation is a continuous motion along a helical path parametrized by `t`
|
||||
made of equal transforms if discretized.
|
||||
If quaternions of rotations of the two placements differ in sign, the interpolation
|
||||
will take a long path.\n
|
||||
will take a long path.
|
||||
|
||||
placement2 : Base.Placement
|
||||
t : float\n Parameter of helical path. t=0 returns this placement, t=1 returns
|
||||
t : float
|
||||
Parameter of helical path. t=0 returns this placement, t=1 returns
|
||||
`placement2`. t can also be outside of [0, 1] range for extrapolation.
|
||||
shorten : bool\n If True, the signs are harmonized before interpolation and the interpolation
|
||||
shorten : bool
|
||||
If True, the signs are harmonized before interpolation and the interpolation
|
||||
takes the shorter path.</UserDocu>
|
||||
</Documentation>
|
||||
</Methode>
|
||||
<Methode Name="slerp" Const="true">
|
||||
<Documentation>
|
||||
<UserDocu>slerp(placement2, t) -> Base.Placement\n
|
||||
<UserDocu>slerp(placement2, t) -> Base.Placement
|
||||
|
||||
Spherical Linear Interpolation (SLERP) between this placement and `placement2`.
|
||||
This function performs independent interpolation of rotation and movement.
|
||||
Result of such interpolation might be not what application expects, thus this tool
|
||||
might be considered for simple cases or for interpolating between small intervals.
|
||||
For more complex cases you better use the advanced sclerp() function.\n
|
||||
For more complex cases you better use the advanced sclerp() function.
|
||||
|
||||
placement2 : Base.Placement
|
||||
t : float\n Parameter of the path. t=0 returns this placement, t=1 returns `placement2`.</UserDocu>
|
||||
t : float
|
||||
Parameter of the path. t=0 returns this placement, t=1 returns `placement2`.</UserDocu>
|
||||
</Documentation>
|
||||
</Methode>
|
||||
<Methode Name="isIdentity" Const="true">
|
||||
<Documentation>
|
||||
<UserDocu>isIdentity([tol=0.0]) -> bool\n
|
||||
<UserDocu>isIdentity([tol=0.0]) -> bool
|
||||
|
||||
Returns True if the placement has no displacement and no rotation.
|
||||
Matrix representation is the 4D identity matrix.
|
||||
tol : float\n Tolerance used to check for identity.
|
||||
tol : float
|
||||
Tolerance used to check for identity.
|
||||
If tol is negative or zero, no tolerance is used.</UserDocu>
|
||||
</Documentation>
|
||||
</Methode>
|
||||
<Methode Name="isSame" Const="true">
|
||||
<Documentation>
|
||||
<UserDocu>isSame(Base.Placement, [tol=0.0]) -> bool\n
|
||||
<UserDocu>isSame(Base.Placement, [tol=0.0]) -> bool
|
||||
|
||||
Checks whether this and the given placement are the same.
|
||||
The default tolerance is set to 0.0</UserDocu>
|
||||
</Documentation>
|
||||
|
||||
Reference in New Issue
Block a user