- Added new migration system to handle legacy parameter conversion for ToolBit assets and objects. - Implemented ParameterAccessor abstraction for consistent access to dicts and FreeCAD objects. - Centralized migration logic for CornerRadius from TorusRadius or FlatRadius/Diameter, restricted to Bullnose shape-type. - Updated asset and object initialization to use migration logic and filter Bullnose parameters. src/Mod/CAM/Path/Tool/camassets.py: - Integrate new migration logic for ToolBit assets using ParameterAccessor and migrate_parameters. - Ensure shape-type is set before parameter migration; only write changes if migration occurred. src/Mod/CAM/Path/Tool/toolbit/migration.py: - Add ParameterAccessor class and migrate_parameters function for unified migration. - Handle legacy parameter conversion for Bullnose tools. src/Mod/CAM/Path/Tool/toolbit/models/base.py: - Apply migration logic to ToolBit objects on restore. - Filter Bullnose parameters to remove FlatRadius after migration. src/Mod/CAM/Path/Tool/shape/models/bullnose.py: - Add filter_parameters method to remove FlatRadius for Bullnose. src/Mod/CAM/Path/Op/SurfaceSupport.py: - Derive FlatRadius from CornerRadius and Diameter if both are present. src/Mod/CAM/Path/Op/Surface.py: - Remove obsolete setOclCutter method.
98 KiB
98 KiB