Issue/feature addressed
When assigning optiKind (a flag to determine the range of movement a varopti node can have), the code was testing if the node is exactly on a single curve or surface with == 1. Nodes which are also vertices, or node that connect two surfaces, are not caught by this check and are assigned the wrong optiKind flag, which sometimes can cause issues with a node moving away from the CAD instead of sliding on it.
Proposed solution
Ensure that the correct flag is assigned to the nodes.
Implementation
Changed the condition from if == to just the if (i.e. anything but zero), which will account for cases where it is on more than a single curve / surface.
Tests
Might effect the current VarOpti tests - WIP.
Suggested reviewers
Dave, Kaloyan, Jingtian
Notes
Some testing is still required.
Checklist
-
Functions and classes, or changes to them, are documented. -
User guide/documentation is updated. -
Changelog is updated. -
Suitable tests added for new functionality. -
Contributed code is correctly formatted. (See the contributing guidelines). -
License added to any new files. -
No extraneous files have been added (e.g. compiler output or test data files).