===================================
An additional index for internal geometry elements is introduced, to be stored only Internal Aligment constraint and backwards compatible.
=============================================================
Internal alignment of BSplines requires an extra index for unbounded same-type internal geometry (poles, probably also in the future knots).
Value shall not be used, as it interferes with the update mechanism for constraint values.
An alternative solution would be to add another int to all the constraints just for this case.
As internal geometry does not use Third, it seems reasonable to reuse it for this indexing purpose.
===========================
It stores a rational BSpline even if non-rational.
It should be extended to store in addition whether it is periodic or not, i.e. to support periodic BSplines.
====================================================
Creation of solver geometry definitions from Part::BSpline geometries and update of solved geometry back.
=============================================
multiplicities, degree and periodic are left as non-parameters of the solver, while still allowing certain manipulations to be effected from the solver
in certain situations (for example modifying the multiplicity of start/end nodes when applying G1,G2,G3 constraints between BSplines).
==============================================================
1) Basic set/get interface for poles, weights, knots and multiplicities
2) Introduction of GeomBoundedCurve class replicating OCC hierarchy. Why? To provide seamless start/end point interface for any bounded curve, i.e. Bezier, BSpline,
Note: The ArcOfConic start/end point interface relies on GeomTrimmedCurve, and introduces CCW/CW correcting code which relies on Axis. Axis are introduced in GeomConic and are
not part of GeomBounded.
Note 2: In the future, it may be thought to make GeomArcOfConic (the equivalent of GeomTrimmedCurve) deriving from GeomBoundedCurve, as to fully replicate OCC hierarchy. GeomBoundedCurve
defines the functions as virtual to allow seamless integration.