DRC: physical clearance doesn't consider text visbility
Description
Physical clearance checks report collisions even for text fields in footprints that are hidden/not visible.
e.g. this error persists if the text is hidden (right):
(rule "Fab collisions"
(layer "F.Fab")
(constraint physical_clearance(min 0.01mm))
(condition "A.Type == 'Text'")
)
Applies to v9 and v9.99.
You can work around by changing the condition to A.Type == 'Text' && A.Visible
Steps to reproduce
- Add a footprint
- Hide the F.Fab refdes
- Draw a colliding fab line
- Use the DRC rule above
KiCad Version
Application: KiCad PCB Editor x86_64 on x86_64
Version: 9.99.0-3015-g1e272ca21b, debug build
Libraries:
wxWidgets 3.2.8
FreeType 2.13.3
HarfBuzz 11.2.1
FontConfig 2.17.1
libcurl/8.14.1 OpenSSL/3.5.1 zlib/1.3.1 brotli/1.1.0 zstd/1.5.7 libidn2/2.3.7 libpsl/0.21.5 libssh2/1.11.1 nghttp2/1.66.0 nghttp3/1.10.1
Platform: EndeavourOS, 64 bit, Little endian, wxGTK, X11, , x11
Build Info:
Date: Sep 2 2025 17:39:02
wxWidgets: 3.2.8 (wchar_t,wx containers) GTK+ 3.24
Boost: 1.88.0
OCC: 7.9.1
Curl: 8.14.1
ngspice: 44.2
Compiler: GCC 15.1.1 with C++ ABI 1020
Build settings:
KICAD_USE_EGL=ON
KICAD_IPC_API=ON
KICAD_USE_PCH=OFF
KICAD_STDLIB_DEBUG=OFF
KICAD_STDLIB_LIGHT_DEBUG=OFF
KICAD_SANITIZE_ADDRESS=OFF
KICAD_SANITIZE_THREADS=OFF
Locale:
Lang: en_GB
Enc: UTF-8
Num: 1,234.5
Encoded кΩ丈: D0BACEA9E4B888 (sys), D0BACEA9E4B888 (utf8)
Edited by John Beard
