UX: Hidden selection is invisible
- Dominant language
- C++
- Stars
- 33.6k
- Forks
- 6k
- Avg merge
- 3d 17h
- Merged PRs (30d)
- 196
Description
### Is there an existing issue for this?
- [X] I have searched the existing issues
### Problem description
When something is selected in FreeCAD (solid, edge face, …) and the view is rotated so that the selection is hidden behind geometry, the selection is invisible. It is impossible to know that something has been selected. It is then hard for the user to identify exactly what has been selected for an operation, especially complex ones.
FreeCAD could always display the edges of the selection so that it stands out in the 3D view. To better indicate that the hidden part of the selection is behind existing objects, it could be dashed. The visible part of the selection would remain as it is today.
### Full version info
```shell
OS: Ubuntu 23.10 (KDE/plasma)
Word size of FreeCAD: 64-bit
Version: 0.22.0dev.37249 (Git) AppImage
Build type: Release
Branch: main
Hash: 3acbc561f299b4cddea8215c387a52f3d5132cf6
Python 3.11.9, Qt 5.15.13, Coin 4.0.2, Vtk 9.2.6, OCC 7.7.2
Locale: French/France (fr_FR)
Installed mods:
* BillOfMaterials-WB 0.0.7
* CosmeticThread3D
* OpenTheme 2024.4.20
* Curves 0.6.35
* CurvedShapes 1.0.9
* sheetmetal 0.4.13
```
### Subproject(s) affected?
Core
### Anything else?
Solidworks does it:

### Code of Conduct
- [X] I agree to follow this project's Code of Conduct
Contributor guide
Research direction
The issue points to FreeCAD Core’s 3D view and selection rendering, but names no source files or tests. Start by tracing how selected solids, edges, and faces are rendered when occluded; done means hidden selection edges are distinguishable behind geometry while visible selection remains unchanged, with coverage for rotated, occluded selections.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- computer-graphics
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100