← All bug reports

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:

  1. Draw a closed rectangle and create a solid fill from it (Draw > Hatch, Solid Fill).
  2. In the property editor, set the fill's Alpha to 128 (50% transparent).
  3. Select the fill and start Modify > Scale.
  4. Pick a focus point, then enter factors 2 for X and 0.5 for Y (non-uniform).
  5. 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.