成员资格检查
概览
- 了解 Altium Designer 中有哪些“成员关系检查”类查询关键字,以及各个关键字的用途。
- 掌握按单位、层、封装、焊盘、阻焊扩展和过孔特征选择对象的正确语法与查询示例。
- 了解重要的使用注意事项,包括必须使用单引号的情况,以及可能影响查询结果的软件特定行为。

Query Helper 对话框中显示的 Membership Checks PCB 查询函数
本参考页面详细介绍了 Altium Designer 中 PCB 和 PCB 库文档可用的 Membership Checks 类别的查询语言关键字。要获取特定查询关键字的帮助,请使用以下可折叠部分,或在 Query Helper 或 Filter 面板中高亮显示任意关键字(或在关键字内单击),然后按 F1 即可立即访问其对应部分。
AsMils
概述
对于对象的数值属性(例如高度、宽度、半径等),此关键字用于将以默认工作区单位表示的当前值转换为英制单位 mil,其中 1 mil = 0.001 英寸,然后将转换后的值与表达式中输入的值进行比较。
语法
AsMils(Keyword : Number) : Number
使用示例
AsMils(ArcRadius) = 250
返回 Radius 属性为 250mil 的所有圆弧对象。
AsMils(Height) Between 300 And 500
返回 Height 属性大于或等于 300mil 且小于或等于 500mil 的所有元件对象。
AsMils(PolygonGridSize) >= 10
返回 Grid Size 属性大于或等于 10mil 的所有多边形覆铜对象。
AsMils(Width) < 50
返回 Width 属性小于 50mil 的所有圆弧和走线对象。
AsMils(TraceLength) = 10
返回 Length 等于 10mil 的所有圆弧和走线对象。
Note - 由于软件存在问题,要使用 AsMils 关键字正确检测 TraceLength,必须在运行查询之前将电路板单位设置为 mil。
AsMM
概述
对于对象的数值属性(例如高度、宽度、半径等),此关键字用于将以默认工作区单位表示的当前值转换为公制单位 mm,其中 1 mm = 0.001 米,然后将转换后的值与表达式中输入的值进行比较。
语法
AsMM(Keyword : Number) : Number
使用示例
AsMM(ArcRadius) = 6.35
返回 Radius 属性为 6.35mm 的所有圆弧对象。
AsMM(Height) Between 7.62 And 12.7
返回 Height 属性大于或等于 7.62mm 且小于或等于 12.7mm 的所有元件对象。
AsMM(PolygonGridSize) >= 0.254
返回 Grid Size 属性大于或等于 0.254mm 的所有多边形覆铜对象。
AsMM(Width) < 1.27
返回 Width 属性小于 1.27mm 的所有圆弧和走线对象。
AsMM(TraceLength) = 1
返回 Length 等于 1mm 的所有圆弧和走线对象。
Note - 由于软件存在问题,要使用 AsMM 关键字正确检测 TraceLength,必须在运行查询之前将电路板单位设置为 mil。
ComponentInLayerClass
概述
返回 Layer 属性与指定层类中的某一层匹配的所有元件对象。
语法
ComponentInLayerClass(ClassName : String) : Boolean/Boolean_String
定义查询表达式时,会弹出一个列表,其中按名称排序显示所有现有的用户定义层类。
使用示例
ComponentInLayerClass('TopSide')
ComponentInLayerClass('TopSide') = True
ComponentInLayerClass('TopSide') = 'True'
返回 Layer 属性与 TopSide 层类中的某一层匹配的所有元件对象。
Not ComponentInLayerClass('BottomSide')
ComponentInLayerClass('BottomSide') = False
ComponentInLayerClass('BottomSide') = 'False'
返回所有对象 except 其 Layer 属性与 BottomSide 层类中的某一层匹配的元件对象。
注意
ClassName 字符串开头和结尾的单引号字符 (') 必不可少。
ExistsOnLayer
概述
返回指定层上的所有对象。
语法
ExistsOnLayer(Layer : String) : Boolean/Boolean_String
Layer 是层的名称,与其在 视图配置面板的 Layers & Colors 选项卡上显示的名称一致。
使用示例
ExistsOnLayer('Top Layer')
ExistsOnLayer('Top Layer') = True
ExistsOnLayer('Top Layer') = 'True'
返回位于以下层上的所有对象:Top Layer.
Not ExistsOnLayer('Mechanical 3')
ExistsOnLayer('Mechanical 3') = False
ExistsOnLayer('Mechanical 3') = 'False'
返回所有对象 except位于 Mechanical 3 层上的对象。
注意
Layer 开头和结尾的单引号字符 (') 必不可少。
HasFootprint
概述
返回 Footprint 属性符合查询条件的所有元件对象。
语法
HasFootprint(Footprint : String) : Boolean/Boolean_String
使用示例
HasFootprint('SIP?0')
HasFootprint('SIP?0') = True
HasFootprint('SIP?0') = 'True'
返回 Footprint 属性以 SIP 开头、以 0 结尾且中间包含一个其他字符的所有元件对象。符合条件的封装示例包括 SIP10、SIP20 和 SIPQ0。
HasFootprint('DIP*')
HasFootprint('DIP*') = True
HasFootprint('DIP*') = 'True'
返回 Footprint 属性以 DIP 开头的所有元件对象。符合条件的封装示例包括 DIP8、DIP14 和 DIP24N。
Not HasFootprint('IDC16')
HasFootprint('IDC16') = False
HasFootprint('IDC16') = 'False'
返回所有对象 except 其 Footprint 属性为 IDC16 的元件对象。
HasFootprint('*2*')
HasFootprint('*2*') = True
HasFootprint('*2*') = 'True'
返回 Footprint 属性包含字符 2 的所有元件对象。符合条件的封装示例包括 2012、2N5001、IDC20 和 HDR1X2。
注意事项
-
Footprint字符串开头和结尾的单引号字符 (') 必不可少。 - 对于返回的每个元件对象,还会返回其关联的子对象。
HasFootprintPad
概述
返回所有满足以下条件的焊盘对象:它们是具有指定封装的元件对象的子对象,且焊盘的 Name 属性符合查询条件。
语法
HasFootprintPad(Footprint : String,Name : String) : Boolean/Boolean_String
使用示例
Not HasFootprintPad('0805','1')
HasFootprintPad('0805','1') = False
HasFootprintPad('0805','1') = 'False'
返回所有对象 except 其 Name 属性为 1,且属于 Footprint 属性为 0805 的元件对象的子对象的焊盘对象。
HasFootprintPad('SIP?0','1')
HasFootprintPad('SIP?0','1') = True
HasFootprintPad('SIP?0','1') = 'True'
返回 Name 属性为 1 的所有焊盘对象,这些焊盘是元件对象的子对象,且元件的 Footprint 属性以 SIP 开头、以 0 结尾,中间包含一个其他字符。符合条件的封装示例包括 SIP10、SIP20、SIPQ0。
HasFootprintPad('DB*','MNT')
HasFootprintPad('DB*','MNT') = True
HasFootprintPad('DB*','MNT') = 'True'
返回 Name 属性为 MNT 的所有焊盘对象,这些焊盘是 Footprint 属性以 DB 开头的元件对象的子对象。符合条件的封装示例包括 DB9S、DB15HD、DB25P。
HasFootprintPad('','MN*')
HasFootprintPad('','MN*') = True
HasFootprintPad('','MN*') = 'True'
返回 Name 属性以 MN 开头,且是 any 元件对象的子对象的所有焊盘对象。
注意事项
-
Footprint和Name字符串开头和结尾的单引号字符 (') 必不可少。 - 不返回父元件对象。
HasMaskExpansionOnLayer
概述
返回在指定层上定义了锡膏掩膜扩展值(过孔除外)或阻焊扩展值的所有圆弧、填充、焊盘、区域、走线和过孔对象。这些值可以手动定义,也可以取自适用的已定义设计规则。
语法
HasMaskExpansionOnLayer(Layer : String) : Boolean/Boolean_String
Layer是层的名称,与其在视图配置面板的Layers & Colors选项卡上相应Layers部分中显示的名称一致。
使用示例
HasMaskExpansionOnLayer('Top Layer')
HasMaskExpansionOnLayer('Top Layer') = True
HasMaskExpansionOnLayer('Top Layer') = 'True'
返回在Top Layer.
Not HasMaskExpansionOnLayer('Bottom Layer')
HasMaskExpansionOnLayer('Bottom Layer') = False
HasMaskExpansionOnLayer('Bottom Layer') = 'False'
上定义了锡膏掩膜扩展值(过孔除外)或阻焊扩展值的所有圆弧、填充、焊盘、区域、走线和过孔对象。
返回所有对象except在Bottom Layer上定义了锡膏掩膜扩展值(过孔除外)或阻焊扩展值的圆弧、填充、焊盘、区域、走线和过孔对象。
注意
Layer开头和结尾的单引号(')不可省略。
HasPad
概述
返回全名属性符合查询条件的所有焊盘对象。
语法
HasPad(PadName : String) : Boolean/Boolean_String
PadName字符串指定焊盘必须匹配的全名。它由两个子字符串组成:起始子字符串指定焊盘所属父元件的Name 属性(即元件的位号),后续子字符串指定焊盘自身的Name 属性(即焊盘的编号)。因此,其格式为'ParentComponentDesignator-PadDesignator'。
使用示例
Not HasPad('C14-1')
HasPad('C14-1') = False
HasPad('C14-1') = 'False'
返回所有对象except Name 属性为1,且属于Name 属性为C14的元件对象的焊盘对象。
HasPad('U5-11')
HasPad('U5-11') = True
HasPad('U5-11') = 'True'
返回Name 属性为11,且属于Name 属性为U5的元件对象的焊盘对象。
HasPad('U*-11')
HasPad('U*-11') = True
HasPad('U*-11') = 'True'
返回Name 属性为11,且属于Name 属性以U开头的元件对象的所有焊盘对象。
HasPad('*-1*')
HasPad('*-1*') = True
HasPad('*-1*') = 'True'
返回Name 属性以1开头,且属于any 元件对象的所有焊盘对象。
注意
PadName字符串开头和结尾的单引号(')不可省略。
HasViaFeature
概述
返回过孔特征属性符合查询条件的所有过孔对象。
语法
HasViaFeature(ViaFeature : String) : Boolean/Boolean_String
ViaFeature字符串指定过孔必须匹配的过孔特征。可以是以下值之一:
-
Capping -
Covering -
Filling -
Plugging -
Tenting
使用示例
Not HasViaFeature('Capping')
HasViaFeature('Capping') = False
HasViaFeature('Capping') = 'False'
返回所有对象except过孔特征属性为Capping的过孔对象。
HasViaFeature('Covering')
HasViaFeature('Covering') = True
HasViaFeature('Covering') = 'True'
返回过孔特征属性为Covering的过孔对象。
注意
ViaFeature字符串开头和结尾的单引号(')不可省略。
HasViaType
概述
返回过孔类型属性符合查询条件的所有过孔对象。
语法
HasViaType(ViaType : String) : Boolean/Boolean_String
ViaType字符串指定过孔必须匹配的IPC 4761 Via Type属性。可以是以下值之一:
-
None -
Type 1a -
Type 1b -
Type 2a -
Type 2b -
Type 3a -
Type 3b -
Type 4a -
Type 4b -
Type 5 -
Type 6a -
Type 6b -
Type 7
使用示例
Not HasViaFeature('Capping')
HasViaFeature('Capping') = False
HasViaFeature('Capping') = 'False'
返回所有对象except过孔特征属性为Capping的过孔对象。
HasViaFeature('Covering')
HasViaFeature('Covering') = True
HasViaFeature('Covering') = 'True'
返回过孔特征属性为Covering的过孔对象。
注意
ViaFeature字符串开头和结尾的单引号(')不可省略。
InChannelClass
概述
返回与指定设计通道类中的元件对象关联的所有对象。
语法
InChannelClass(ClassName1 : String,ClassName2 : String,...,ClassNamen : String) : Boolean/Boolean_String
定义查询表达式时,会弹出一个列表,其中列出了按名称排序的所有现有用户自定义设计通道类。
使用示例
InChannelClass('Red_LED')
InChannelClass('Red_LED') = True
InChannelClass('Red_LED') = 'True'
返回与Red_LED设计通道类中的元件对象关联的所有对象。
InChannelClass('Output channel','Input channel')
InChannelClass('Output channel','Input channel') = True
InChannelClass('Output channel','Input channel') = 'True'
返回与 Output channel或 Input channel设计通道类中的元件对象关联的所有对象。
InChannelClass('Input*')
InChannelClass('Input*') = True
InChannelClass('Input*') = 'True'
返回与任意Name 属性以Input开头的设计通道类中的元件对象关联的所有对象。
注意事项
-
每个
ClassName字符串开头和结尾的单引号(')不可省略。 - 父元件对象也会被返回。
InComponent
概述
返回Name 属性符合查询条件的所有元件对象。
语法
InComponent(Name : String) : Boolean/Boolean_String
定义查询表达式时,会弹出一个列表,其中列出了按名称排序的所有现有元件。
使用示例
InComponent('U1')
InComponent('U1') = True
InComponent('U1') = 'True'
返回Name 属性为U1的所有元件对象。
InComponent('U1', 'U2', 'J1')
InComponent('U1', 'U2', 'J1') = True
InComponent('U1', 'U2', 'J1') = 'True'
返回Name 属性为U1、U2或J1的所有元件对象。
Not InComponent('IDC16')
InComponent('IDC16') = False
InComponent('IDC16') = 'False'
返回所有对象except Name 属性为IDC16的元件对象。
InComponent('U*')
InComponent('U*') = True
InComponent('U*') = 'True'
返回Name 属性以U开头的所有元件对象。
注意事项
-
Name字符串开头和结尾的单引号(')不可省略。 - 对于每个返回的元件对象,其关联的子对象也会被返回。
InComponentClass
概述
返回指定元件类中的所有元件对象。
语法
InComponentClass(ClassName : String) : Boolean/Boolean_String
定义查询表达式时,会弹出一个列表,其中列出了按名称排序的所有现有用户自定义元件类。
使用示例
InComponentClass('TopSideSMD')
InComponentClass('TopSideSMD') = True
InComponentClass('TopSideSMD') = 'True'
返回TopSideSMD元件类中的所有元件对象。
Not InComponentClass('BottomSideSMD')
InComponentClass('BottomSideSMD') = False
InComponentClass('BottomSideSMD') = 'False'
返回所有对象except BottomSideSMD元件类中的元件对象。
注意
ClassName字符串开头和结尾的单引号(')不可省略。
InDifferentialPair
概述
返回与Name 属性符合查询条件的差分对对象关联的所有对象。
语法
InDifferentialPair(DifferentialPairName1 : String,DifferentialPair2 : String,...,DifferentialPairn : String) : Boolean/Boolean_String
定义查询表达式时,会弹出一个列表,其中列出了按名称排序的所有现有差分对。
使用示例
InDifferentialPair('Red_LED')
InDifferentialPair('Red_LED') = True
InDifferentialPair('Red_LED') = 'True'
返回与Name 属性为Red_LED的差分对对象关联的所有对象。
InDifferentialPair('D0','D1')
InDifferentialPair('D0','D1') = True
InDifferentialPair('D0','D1') = 'True'
返回与Name 属性为D0或 D1的差分对对象关联的所有对象。
InDifferentialPair('Input*')
InDifferentialPair('Input*') = True
InDifferentialPair('Input*') = 'True'
返回与Name 属性以Input开头的差分对对象关联的所有对象。
注意事项
- 每个
DifferentialPairName字符串首尾的单引号字符 (') 都是必需的。 - 同时也会返回父级差分对对象。
InDifferentialPairClass
概述
返回属于指定差分对类的所有差分对对象。
语法
InDifferentialPairClass(ClassName : String) : Boolean/Boolean_String
定义查询表达式时,会弹出按名称排序的所有现有差分对的列表。
使用示例
InDifferentialPairClass('TopSide')
InDifferentialPairClass('TopSide') = True
InDifferentialPairClass('TopSide') = 'True'
返回属于 TopSide 差分对类的所有差分对对象。
Not InDifferentialPairClass('BottomSide')
InDifferentialPairClass('BottomSide') = False
InDifferentialPairClass('BottomSide') = 'False'
返回所有对象 except 属于 BottomSide 差分对类的差分对对象。
注意
ClassName 字符串首尾的单引号字符 (') 都是必需的。
InDrillLayerPair
概述
返回 Drill Pair 属性与指定钻孔层对匹配的所有过孔对象。
语法
InDrillLayerPair(LayerPair : String) : Boolean/Boolean_String
使用示例
InDrillLayerPair('Top Layer - Bottom Layer')
InDrillLayerPair('Top Layer - Bottom Layer') = True
InDrillLayerPair('Top Layer - Bottom Layer') = 'True'
返回 Drill Pair 属性与 Top Layer - Bottom Layer 钻孔层对匹配的所有过孔对象。
Not InDrillLayerPair('Top Layer - Signal Layer 1')
InDrillLayerPair('Top Layer - Signal Layer 1') = False
InDrillLayerPair('Top Layer - Signal Layer 1') = 'False'
返回所有对象 except Drill Pair 属性与 Top Layer - Signal Layer 1 钻孔层对匹配的过孔对象。
注意
- Drill Layer Pair 属性仅为过孔对象定义。
-
LayerPair字符串首尾的单引号字符 (') 都是必需的。 -
要筛选特定类型的过孔,请在查询中包含 适当的对象类型 检查:
IsThruVia、IsBlindVia、IsBuriedVia、IsMicroVia或IsSkipVia。
例如,查询:
InDrillLayerPair('Top Layer - Signal Layer 1') AND IsMicroVia
返回 Drill Pair 属性与Top Layer - Signal Layer 1钻孔层对匹配 且过孔类型为µVia的所有过孔对象。
InFromTo
概述
返回与起点-终点对象关联的所有对象,该起点-终点对象的 Net、From Pad 和 To Pad 属性满足查询条件。
虽然起点-终点对象会在 PCB List 面板中返回,但要在工作区中看到它们,您需要先将 PCB 面板切换到 From-To Editor 模式,然后应用筛选查询。
语法
InFromTo('Net_Name (From_Pad : To_Pad)') : Boolean/Boolean_String
定义查询表达式时,会弹出按名称排序的所有现有起点-终点对象的列表。
Net_Name、From_Pad 和 To_Pad 均为字符串;所用的单引号字符 (') 仅限于上方所示的位置(紧邻最外层括号的内侧)。
From_Pad 和 To_Pad 字符串分别指定焊盘必须匹配的完整名称。该名称由两部分组成:开头的子字符串指定焊盘所属父级元件的 Name 属性(即元件的位号),后面的子字符串指定焊盘自身的 Name 属性(即焊盘的编号)。因此,其格式为 'ParentComponentDesignator-PadDesignator'。
使用示例
InFromTo('VDD_XTAL (C13-2 : U1-8)')
InFromTo('VDD_XTAL (C13-2 : U1-8)') = True
InFromTo('VDD_XTAL (C13-2 : U1-8)') = 'True'
返回与起点-终点对象关联的所有对象,该起点-终点对象的 Net 属性为 VDD_XTAL、From Pad 属性为 C13-2,且 To Pad 属性为 U1-8。(因此,起始焊盘的 Name 属性为 2,其父级元件对象的 Name 属性为 C13。同样,终止焊盘的 Name 属性为 8 ,其父级元件对象的 Name 属性为 U1)。
注意
同时也会返回父级起点-终点对象。
InFromToClass
概述
返回属于指定起点-终点类的所有起点-终点对象。
语法
InFromToClass(ClassName : String) : Boolean/Boolean_String
定义查询表达式时,会弹出按名称排列的所有现有用户自定义起点-终点类的列表。
使用示例
InFromToClass('Bus Terminators')
InFromToClass('Bus Terminators') = True
InFromToClass('Bus Terminators') = 'True'
返回属于 Bus Terminators 起点-终点类的所有起点-终点对象。
Not InFromToClass('Bus Terminators')
InFromToClass('Bus Terminators') = False
InFromToClass('Bus Terminators') = 'False'
返回所有对象 except 属于 Bus Terminators 起点-终点类的起点-终点对象。
注意
ClassName 字符串首尾的单引号字符 (') 都是必需的。
InLayerClass
概述
返回 Layer 属性与指定层类中某个层匹配的所有对象。
语法
InLayerClass(ClassName : String) : Boolean/Boolean_String
定义查询表达式时,会弹出按名称排序的所有现有用户自定义层类的列表。
使用示例
InLayerClass('TopSide')
InLayerClass('TopSide') = True
InLayerClass('TopSide') = 'True'
返回 Layer 属性与 TopSide 层类中某个层匹配的所有对象。
Not InLayerClass('BottomSide')
InLayerClass('BottomSide') = False
InLayerClass('BottomSide') = 'False'
返回所有对象 except Layer 属性与 BottomSide 层类中某个层匹配的对象。
注意
ClassName 字符串首尾的单引号字符 (') 都是必需的。
InLayerStackRegion
概述
返回参考点位于指定名称的 Board Region 内的所有对象。
语法
InLayerStackRegion(RegionName1 : String,RegionName2 : String,...,RegionNamen : String) : Boolean/Boolean_String
使用示例
InLayerStackRegion('Region1')
InLayerStackRegion('Region1') = True
InLayerStackRegion('Region1') = 'True'
返回参考点位于 Name 属性为 Region1 的板区域内的所有对象。
InLayerStackRegion('Region1','Region2')
InLayerStackRegion('Region1','Region2') = True
InLayerStackRegion('Region1','Region2') = 'True'
返回参考点位于 Name 属性为 Region1 的板区域内,或位于 Name 属性为 Region2 的板区域内的所有对象。
Not InLayerStackRegion('Region2')
InLayerStackRegion('Region2') = False
InLayerStackRegion('Region2') = 'False'
返回所有对象 except 参考点位于 Name 属性为 Region2 的板区域内的对象。
注意
RegionName 字符串首尾的单引号字符 (') 都是必需的。
InNamedPolygon
概述
返回作为指定多边形覆铜子对象的所有图元对象。
语法
InNamedPolygon(PolygonName : String) : Boolean/Boolean_String
定义查询表达式时,会弹出按名称排序的所有现有多边形覆铜的列表。
使用示例
InNamedPolygon('Power3V3')
InNamedPolygon('Power3V3') = True
InNamedPolygon('Power3V3') = 'True'
返回作为 Name 属性为 Power3V3 的多边形覆铜子对象的所有图元对象。
Not InNamedPolygon('Power3V3')
InNamedPolygon('Power3V3') = False
InNamedPolygon('Power3V3') = 'False'
返回所有对象 except 作为 Name 属性为 Power3V3 的多边形覆铜子对象的图元对象。
注意
-
PolygonName字符串首尾的单引号字符 (') 都是必需的。 - 同时也会返回父级多边形覆铜对象。
InNamedUnion
概述
返回属于指定联合体的所有对象(父对象和子对象)。
语法
InNamedUnion(UnionName : String) : Boolean/Boolean_String
联合体名称由系统自动分配,但可通过处于 Unions 模式的 PCB 面板进行重命名。定义查询表达式时,会弹出一个按名称排序的列表,其中列出所有现有联合体。
使用示例
InNamedUnion('Unions')
InNamedUnion('Unions') = True
InNamedUnion('Unions') = 'True'
返回名称为 Unions的联合体中的所有对象(父对象和子对象)。
Not InNamedUnion('Unions 1')
InNamedUnion('Unions 1') = False
InNamedUnion('Unions 1') = 'False'
返回所有对象 except 对象(父对象和子对象),这些对象属于名称为 Unions 1的联合体。
注意
UnionName 字符串开头和结尾的单引号 (') 不可省略。
InNet
概述
返回与 Name 属性满足查询条件的网络对象相关联的所有对象。
语法
InNet(NetName1 : String,NetName2 : String,...,NetNamen : String) : Boolean/Boolean_String
定义查询表达式时,会弹出一个按名称排序的列表,其中列出所有现有网络。
使用示例
InNet('Red_LED')
InNet('Red_LED') = True
InNet('Red_LED') = 'True'
返回与 Name 属性为 Red_LED的网络对象相关联的所有对象。
InNet('D0','D1')
InNet('D0','D1') = True
InNet('D0','D1') = 'True'
返回与 Name 属性为 D0 或 D1的网络对象相关联的所有对象。
InNet('V*')
InNet('V*') = True
InNet('V*') = 'True'
返回与 Name 属性以 V开头的网络对象相关联的所有对象。
注意事项
-
每个
NetName字符串开头和结尾的单引号 (') 不可省略。 - 同时也会返回父级网络对象。
InNetClass
概述
返回属于指定网络类的所有网络(及其关联对象)。
语法
InNetClass(ClassName : String) : Boolean/Boolean_String
定义查询表达式时,会弹出一个按名称排序的列表,其中列出所有现有的用户定义网络类。
使用示例
InNetClass('Data Bus Nets')
InNetClass('Data Bus Nets') = True
InNetClass('Data Bus Nets') = 'True'
返回属于 Data Bus Nets 网络类的所有网络(及其关联对象)。
Not InNetClass('Address Bus Nets')
InNetClass('Address Bus Nets') = False
InNetClass('Address Bus Nets') = 'False'
返回所有对象 except 网络(及其关联对象),这些网络属于 Address Bus Nets 网络类。
注意
ClassName 字符串开头和结尾的单引号 (') 不可省略。
InPadClass
概述
返回属于指定焊盘类的所有焊盘对象。
语法
InPadClass(ClassName : String) : Boolean/Boolean_String
定义查询表达式时,会弹出一个按名称排序的列表,其中列出所有现有的用户定义焊盘类。
使用示例
InPadClass('Top Side Probe Pads')
InPadClass('Top Side Probe Pads') = True
InPadClass('Top Side Probe Pads') = 'True'
返回属于 Top Side Probe Pads 焊盘类的所有焊盘对象。
Not InPadClass('Bottom Side Probe Pads')
InPadClass('Bottom Side Probe Pads') = False
InPadClass('Bottom Side Probe Pads') = 'False'
返回所有对象 except 焊盘对象,这些焊盘对象属于 Bottom Side Probe Pads 焊盘类。
注意
ClassName 字符串开头和结尾的单引号 (') 不可省略。
InPolygonClass
概述
返回属于指定多边形类的所有多边形铺铜对象。
语法
InPolygonClass(ClassName : String) : Boolean/Boolean_String
定义查询表达式时,会弹出一个按名称排序的列表,其中列出所有现有的用户定义多边形类。
使用示例
InPolygonClass('Top Side Polys')
InPolygonClass('Top Side Polys') = True
InPolygonClass('Top Side Polys') = 'True'
返回属于 Top Side Polys 多边形类的所有多边形铺铜对象。
Not InPolygonClass('Custom Polys')
InPolygonClass('Custom Polys') = False
InPolygonClass('Custom Polys') = 'False'
返回所有对象 except 多边形铺铜对象,这些对象属于 Custom Polys 多边形类。
注意
ClassName 字符串开头和结尾的单引号 (') 不可省略。
InRegion
概述
返回位于查询所指定区域内的所有对象。
语法
InRegion(X1 : Number ,Y1 : Number ,X2 : Number ,Y2 : Number) : Boolean/Boolean_String
X1,Y1和 X2,Y2 指定 PCB(库)文件中的坐标。区域的左右边界由 X1 和 X2 参数指定,下边界和上边界则由 Y1 和 Y2 参数指定。
所有坐标均以绝对原点为参考(而非用户原点或元件插入点),目前始终使用 mil 作为单位(1 mil = 0.001 英寸)。
使用示例
InRegion(12700,4700,13300,5000)
InRegion(12700,4700,13300,5000) = True
InRegion(12700,4700,13300,5000) = 'True'
返回位于矩形区域内的对象,该区域的边界为 X1 = 12700、X2 = 13300、Y1 = 4700 和 Y2 = 5000;这些坐标以绝对原点为参考。
注意事项
- 不返回父级元件、坐标、尺寸标注和网络对象。
- 此关键字是 InRegionAbsolute 关键字的别名。
InRegionAbsolute
概述
返回位于查询所指定区域内的所有对象。
语法
InRegionAbsolute(X1 : Number ,Y1 : Number ,X2 : Number ,Y2 : Number) : Boolean/Boolean_String
X1,Y1和 X2,Y2 指定 PCB(库)文件中的坐标。区域的左右边界由 X1 和 X2 参数指定,下边界和上边界则由 Y1 和 Y2 参数指定。
所有坐标均以绝对原点为参考(而非用户原点或元件插入点),目前始终使用 mil 作为单位(1 mil = 0.001 英寸)。
使用示例
InRegionAbsolute(12700,4700,13300,5000)
InRegionAbsolute(12700,4700,13300,5000) = True
InRegionAbsolute(12700,4700,13300,5000) = 'True'
返回位于矩形区域内的对象,该区域的边界为 X1 = 12700、X2 = 13300、Y1 = 4700 和 Y2 = 5000;这些坐标以绝对原点为参考。
注意事项
- 不返回父级元件、坐标、尺寸标注和网络对象。
- 此关键字是 InRegion 关键字的别名。
InRegionRelative
概述
返回位于查询所指定区域内的所有对象。
语法
InRegionRelative(X1 : Number ,Y1 : Number ,X2 : Number ,Y2 : Number) : Boolean/Boolean_String
X1,Y1和 X2,Y2 指定 PCB(库)文件中的坐标。区域的左右边界由 X1 和 X2 参数指定,下边界和上边界则由 Y1 和 Y2 参数指定。
所有坐标均以用户原点(PCB 文件)或元件插入点(PCB 库文件)为参考,而非绝对原点,目前始终使用 mil 作为单位(1 mil = 0.001 英寸)。
使用示例
InRegionRelative(-700,-400,1300,1600)
InRegionRelative(-700,-400,1300,1600) = True
InRegionRelative(-700,-400,1300,1600) = 'True'
返回位于矩形区域内的对象,该区域的边界为 X1 = -700、X2 = 1300、Y1 = -400 和 Y2 = 1600;这些坐标以用户原点(或元件插入点)为参考。
注意
不返回父级元件、坐标、尺寸标注和网络对象。
InStructureClass
概述
返回属于指定结构类的元件类和网络类中的所有父对象和子对象。
语法
InStructureClass(ClassName1 : String,ClassName2 : String,...,ClassNamen : String) : Boolean/Boolean_String
定义查询表达式时,会弹出一个列表,其中列出了按名称排序的所有现有用户自定义结构类。
使用示例
InStructureClass('Red_LED')
InStructureClass('Red_LED') = True
InStructureClass('Red_LED') = 'True'
返回属于 Red_LED 结构类的元件类和网络类中的所有父对象和子对象。
InStructureClass('Output channel','Input channel')
InStructureClass('Output channel','Input channel') = True
InStructureClass('Output channel','Input channel') = 'True'
返回属于 Output channel 或 Input channel 结构类的元件类和网络类中的所有父对象和子对象。
InStructureClass('Input*')
InStructureClass('Input*') = True
InStructureClass('Input*') = 'True'
返回属于任意 Name 属性以 Input 开头的结构类的元件类和网络类中的所有父对象和子对象。
注意
每个 ClassName 字符串开头和结尾的单引号 (') 都不可省略。
InUnion
概述
返回属于指定联合体的所有对象(父对象和子对象)。
语法
InUnion(Union : Number) : Boolean/Boolean_String
联合体编号由系统自动分配。定义查询表达式时,会弹出一个列表,其中列出了按编号排序的所有现有联合体。
使用示例
InUnion(1)
InUnion(1) = True
InUnion(1) = 'True'
返回属于所分配编号为 1 的联合体的所有对象(父对象和子对象)。
Not InUnion(4)
InUnion(4) = False
InUnion(4) = 'False'
返回所有对象 except 属于所分配编号为 4 的联合体的对象(父对象和子对象)。
InxSignal
概述
返回与指定 xSignal 关联的所有对象。
语法
InxSignal(Name : String) : Boolean/Boolean_String
定义查询表达式时,会弹出一个列表,其中列出了按名称排序的所有现有 xSignal。
使用示例
InxSignal('DRAM_A0_PP1')
InxSignal('DRAM_A0_PP1') = True
InxSignal('DRAM_A0_PP1') = 'True'
返回与 xSignal DRAM_A0_PP1 关联的所有对象。
Not InxSignal('DRAM_A0_PP1')
InxSignal('DRAM_A0_PP1') = False
InxSignal('DRAM_A0_PP1') = 'False'
返回所有对象 except 与 xSignal DRAM_A0_PP1 关联的对象。
注意
Name 字符串开头和结尾的单引号 (') 都不可省略。
InxSignalClass
概述
返回属于指定 xSignal 类的所有 xSignal 对象。
语法
InxSignalClass(ClassName : String) : Boolean/Boolean_String
定义查询表达式时,会弹出一个列表,其中列出了按名称排序的所有现有用户自定义 xSignal 类。
使用示例
InxSignalClass('PCIE')
InxSignalClass('PCIE') = True
InxSignalClass('PCIE') = 'True'
返回属于 PCIE xSignal 类的所有 xSignal 对象。
Not InxSignalClass('PCIE')
InxSignalClass('PCIE') = False
InxSignalClass('PCIE') = 'False'
返回所有对象 except 属于 PCIE xSignal 类的 xSignal 对象。
注意
ClassName 字符串开头和结尾的单引号 (') 都不可省略。
IsNamedPolygon
概述
返回指定的多边形铺铜。
语法
IsNamedPolygon(PolygonName : String) : Boolean/Boolean_String
定义查询表达式时,会弹出一个列表,其中列出了按名称排序的所有现有多边形铺铜。
使用示例
IsNamedPolygon('Power3V3')
IsNamedPolygon('Power3V3') = True
IsNamedPolygon('Power3V3') = 'True'
返回 Name 属性为 Power3V3 的多边形铺铜对象。
Not IsNamedPolygon('Power3V3')
IsNamedPolygon('Power3V3') = False
IsNamedPolygon('Power3V3') = 'False'
返回所有对象 except Name 属性为 Power3V3 的多边形铺铜对象。
注意
-
PolygonName字符串开头和结尾的单引号 (') 都不可省略。 -
不会返回所返回多边形铺铜对象的子图元对象。
IsxSignal
概述
返回具有指定名称的 xSignal 对象。
语法
IsxSignal(Name : String) : Boolean/Boolean_String
定义查询表达式时,会弹出一个列表,其中列出了按名称排序的所有现有 xSignal。
使用示例
IsxSignal('DRAM_A0_PP1')
IsxSignal('DRAM_A0_PP1') = True
IsxSignal('DRAM_A0_PP1') = 'True'
返回 xSignal DRAM_A0_PP1。
Not IsxSignal('DRAM_A0_PP1')
IsxSignal('DRAM_A0_PP1') = False
IsxSignal('DRAM_A0_PP1') = 'False'
返回所有对象 except xSignal DRAM_A0_PP1。
注意
Name 字符串开头和结尾的单引号 (') 都不可省略。
OnGrid
概述
返回 X1 和 Y1 属性符合查询条件的所有对象。
语法
OnGrid(X1 : Number,Y1 : Number) : Boolean/Boolean_String
每个 Distance_String 都是一个数值字符串,用于指定 PCB(库)文件中的距离。要返回某个对象,该对象的 X1 属性必须是第一个指定距离的整数倍,且其 Y1 属性必须是第二个指定距离的整数倍。
X1 和 Y1 指定 PCB(库)文件中的坐标。要返回某个对象,该对象的 X1 属性必须是第一个指定值的整数倍,且其 Y1 属性必须是第二个指定值的整数倍。
所有坐标均以绝对原点为参考(而不是用户原点或元件插入点),目前始终使用 mil 作为单位(1 mil = 0.001 英寸)。
使用示例
OnGrid(25,25)
OnGrid(25,25) = True
OnGrid(25,25) = 'True'
返回 X1 属性为 25mil 的整数倍且 Y1 属性为 25mil 的整数倍的所有对象。
OnGrid(5,100)
OnGrid(5,100) = True
OnGrid(5,100) = 'True'
返回 X1 属性为 5mil 的整数倍且 Y1 属性为 100mil 的整数倍的所有对象。
OnLayer
概述
返回 Layer 属性符合查询条件的所有对象。
语法
OnLayer(Layer : String) : Boolean/Boolean_String
Layer 是层的名称,与其在 视图配置面板的 Layers & Colors 选项卡上显示的名称一致。
使用示例
OnLayer('Top Layer')
OnLayer('Top Layer') = True
OnLayer('Top Layer') = 'True'
返回 Layer 属性为 Top Layer.
Not OnLayer('Mechanical 3')
OnLayer('Mechanical 3') = False
OnLayer('Mechanical 3') = 'False'
的所有对象。
返回所有对象 except其 Layer 属性为 Mechanical 3 层的对象。
注意
-
Layer开头和结尾的单引号 (') 都不可省略。 -
请注意,只有明确指定
Multi-Layer层,即使用OnLayer('Multi-Layer')查询时,OnLayer查询关键字才会返回放置在该层上的对象。当指定这些对象的形状所在的其他层时,OnLayer查询关键字不会返回放置在Multi-Layer层上的对象。 使用ExistsOnLayer(Layer : String)查询可查找在指定层上具有形状的对象(包括位于Multi-Layer层上的对象)。
TouchesRoom
概述
返回完全或部分位于任意 Room 对象(区域约束规则)所占区域内,且该 Room 对象的 Name 属性符合查询条件的对象。
语法
TouchesRoom(RoomName1 : String,RoomName2 : String,...,RoomNamen : String) : Boolean/Boolean_String
定义查询表达式时,会弹出一个按名称排序的列表,其中列出了所有现有的 Room。
使用示例
TouchesRoom('Power')
TouchesRoom('Power') = True
TouchesRoom('Power') = 'True'
返回完全或部分位于任意 Room 所占区域内,且该 Room 的 Name 属性为 Power的对象。
TouchesRoom('COUT1','COUT2')
TouchesRoom('COUT1','COUT2') = True
TouchesRoom('COUT1','COUT2') = 'True'
返回完全或部分位于任意 Room 所占区域内,且该 Room 的 Name 属性为 COUT1或 COUT2的对象。
TouchesRoom('Monitor','Auxilary','Effects')
TouchesRoom('Monitor','Auxilary','Effects') = True
TouchesRoom('Monitor','Auxilary','Effects') = 'True'
返回完全或部分位于任意 Room 所占区域内,且该 Room 的 Name 属性为 Monitor、Auxilary或 Effects的对象。
注意事项
-
每个
RoomName字符串开头和结尾的单引号(')均不可省略。 -
不会返回父级坐标、尺寸标注和网络对象。
WithinRoom
摘要
返回完全位于任意 Room 对象(区域约束规则)所占区域内,且该 Room 对象的 Name 属性符合查询条件的对象。
对于焊盘和过孔,只有其中心点位于指定的 Room 内时,才会被返回。
语法
WithinRoom(RoomName1 : String,RoomName2 : String,...,RoomNamen : String) : Boolean/Boolean_String
定义查询表达式时,会弹出一个按名称排序的列表,其中列出了所有现有的 Room。
使用示例
WithinRoom('Power')
WithinRoom('Power') = True
WithinRoom('Power') = 'True'
返回完全位于任意 Room 所占区域内,且该 Room 的 Name 属性为 Power的对象。
WithinRoom('COUT1','COUT2')
WithinRoom('COUT1','COUT2') = True
WithinRoom('COUT1','COUT2') = 'True'
返回完全位于任意 Room 所占区域内,且该 Room 的 Name 属性为 COUT1或 COUT2的对象。
WithinRoom('Monitor','Auxilary','Effects')
WithinRoom('Monitor','Auxilary','Effects') = True
WithinRoom('Monitor','Auxilary','Effects') = 'True'
返回完全位于任意 Room 所占区域内,且该 Room 的 Name 属性为 Monitor、Auxilary或 Effects的对象。
注意事项
-
每个
RoomName字符串开头和结尾的单引号(')均不可省略。 - 不会返回父级坐标、尺寸标注和网络对象。