A pretty basic question. Testing this on AD13.
Years ago, I defined direct polygon pour connections on the rule directly, based on the designator, i.e., InComponent('U13') OR InComponent('P666') OR...
This of course broke down completely when reannotating. So I learned that I need to do it "properly" by creating a pad class. So far so good, so I've been doing pad classes for pad specific rules. Of course, being "the correct" way, I assumed these pad class memberships must be linked to the component unique IDs even though the Object Class Explorer UI shows the designators.
Of course, soon I found out that this does not work either, despite being what people erroneously claim to be "the correct" way. When reannotating, pad class members stay with the old designators: some are removed (if the same designator does not exist anymore), or are corrupted (associated to a totally wrong component). Oh well, at least it doesn't crash. What a pile of crap, anyway.
Maybe there isn't a correct way? Maybe this is a bug? But it sounds very strange that Altium silently throws away and corrupts vital design information (which pad is associated with which rules) through everyday annotation process.
There must be a way. Or is there?
Or: Apparently I need to ask the classical beginner FAQ once more: how do I properly attach a pad to a polygon pour with direct connect? "Properly" means that it doesn't change later on silently, due to other unrelated changes. Wrong answers widely available include:
* Create rule with InComponent() tests,
* Create a pad class for directly connected pads