I have not find a solution about between top overlay or bottom overlay and vias. Can you help me about this . I need identify a rule.I don't want the silkscreen to touch a via
For this, if you do not wish to tent your vias, it is safe to assume that there will be a solder mask layer present on the vias and any other pad for that matter which I also assume you will not want silkscreen to cover.
If this is the case, the answer is pretty simple, simply set a rule in the "SilkToSolderMaskClearance" option. See image below.
This is found under the manufacturing section of the rule list. Then you can select to create a new rule, and you can set a custom query under the "Where The First Object Matches" to "IsVia" - you can leave this as "All" if you want the rule to apply to all exposed copper regions, and then "Where The Second Object Matches" -> Layer -> Top Overlay.
You can then select whether the clearance is from the exposed copper, or the Solder Mask opening and set the distance that you require. If it is for a straight overlap, set this to 0 and then it will only detect if it overlapping, not if it is close to.
This will save you having to tent the vias if it is not something you want to do - I think some fab houses can get a bit funny about doing it as well. Or at least, in my experience.
If you don't want the silkscreen to touch a via, you can use the following:
Where first object matches:
Where second object matches:
Then set your clearance rule.
I just tried this at work and to my surprise it didn't work for me either. I also tried queries such as
IsDesignator, and even played around with the
Silk To Soldermask rules and had no success. This seems like it may be an Altium bug. I suggest you call their customer support and see if they can give you an answer that works. Otherwise I recommend doing what I suggested in the comments, and tent your vias with soldermask. Then it won't matter if the soldermask passes over the vias or not, they should still be visible. Most manufacturers can tent vias with up to a 12 mil (0.3mm) hole diameter.