FS#2775Non-uniform scaling of a hatch or solid fill resets its transparency
- Type
- Bug
- Status
- Closed
- Resolution
- Fixed
- Category
- QCAD (main)
- Severity
- Low
- Priority
- Low
- Reported version
- 27.0.3
- Operating system
- All
- Reported
- 2026-11-08 by andrew
Scaling a hatch or solid fill with different X and Y factors (Modify > Scale with "Keep proportions" off) discards the entity's Alpha value. Winding mode, auto-regen and all gradient fill settings are reset to their defaults as well. Uniform scaling is not affected. The same loss happens when exploding a non-uniformly scaled block reference that contains a solid fill.
Steps to reproduce:
- Draw a closed rectangle and create a solid fill from it (Draw > Hatch, Solid Fill).
- In the property editor, set the fill's Alpha to 128 (50% transparent).
- Select the fill and start Modify > Scale.
- Pick a focus point, then enter factors 2 for X and 0.5 for Y (non-uniform).
- Confirm and inspect the scaled fill in the property editor.
Expected result:
The fill is scaled to twice its width and half its height and keeps Alpha 128 together with all other hatch properties (pattern, winding, gradient settings).
Actual result:
The fill is scaled correctly but is fully opaque again (Alpha 255). Winding mode is turned off and any gradient fill reverts to a plain solid fill.
Cause / fix:
Scale.js rebuilt the hatch from an empty RHatchData for non-uniform scaling and only copied back solid, pattern name, scale, angle and origin. Fixed in qcad/scripts/Modify/Scale/Scale.js and qcad/scripts/Modify/Explode/Explode.js by copying the complete hatch data and replacing only the boundary.