Working with PCB Object Classes in CircuitMaker

 

The Classes button opens the Object Class Explorer dialog. The button can be accessed by choosing Home | Design Rules | Classes from the PCB editor.

Classes are a logical collection of a particular type of design object. For example, a group of related components could be grouped into their own Component Class which could then be used as the basis for creating a targeted rule.

Object Class Explorer Dialog


Options/Controls

The dialog includes a static pane on the left and a main editing region on the right that changes with the selection on the left.

In the folder-tree pane on the left side of the dialog, each of the supported object class types is listed under the Object Classes folder. The following class types are supported:

  • Net Classes
  • Component Classes
  • Layer Classes
  • Pad Classes
  • Differential Pair Classes
  • Polygon Classes

Click on the root folder to access a summary listing in the main editing region of the dialog of all specific classes that have been defined across all object class types.

Click on a child object class type folder to access a summary listing of all specific classes that have been defined for that type. The following default classes are created across the various class types for a new PCB document:

  • Net Classes - <All Nets>.
  • Component Classes - <All Components>, <Bottom Side Components>, <Inside Board Components>, <Outside Board Components>, <Top Side Components>.
  • Layer Classes - <All Layers>, <Component Layers>, <Electrical Layers>, <Signal Layers>.
  • Pad Classes - <All Pads>.
  • Differential Pair Classes - <All Differential Pairs>.
  • Polygon Classes - <All Polygons>.
Default (system classes) are distinguished by their names being enclosed in <>. These classes cannot be renamed and they cannot be deleted.
Whenever an applicable design object is created/placed in the design, it is added to the default <All> class for the respective class type.

Click on the entry for a specific class in the folder-tree pane (or double-click on its entry in a summary list) to access controls for managing the object membership of that class.

Right-Click Menu

The following commands are available from the right-click menu for the pane:

  • Add Class - use to add a new class of the currently selected class type. The class will be added, initially devoid of members, with a default name of New Class.
  • Delete Class - use to delete the currently selected class.
  • Rename Class - use to rename the currently selected class.
You cannot rename or delete the default (system) classes.

Main Region

This region of the dialog changes in accordance with what is currently selected in the left-hand pane. It presents two different views:

  • Summary Listing - if the root Object Classes folder or any of the child object class type folders are clicked in the left-hand pane, this region presents a summary listing of all defined classes or all classes of the selected class type, respectively. Each class is listed in terms of its Name and Class Type.
  • Membership Management - if a specific class is selected in the left-hand pane, this region presents controls for managing its member objects.
    • Non-Members - this region lists all primitives of the applicable type that are currently not members of the class. Use the field above the list to quickly filter the contents of the list.
    • Members - this region lists all primitives of the applicable type that are currently members of the class. Use the field above the list to quickly filter the contents of the list.
As you type within one of the fields above a list, the list is filtered to only show strings that match the string entered. You can use the "?" (any single character) and "*" (any character) wildcards in the mask string. For example, use "*" to display all primitives or "D?" to display all primitives that start with the letter D.
A design object of a particular type can belong to (be a member of) any number of classes defined for that object type.
  • Component Class Generator - this button is available only when editing a component class. Click it to open the Component Class Generator dialog (described below), which can be used to quickly generate the membership for the component class based on defined search criteria.
  • Membership Management Buttons - the region provides the following buttons to cater for moving primitives quickly between the two lists:
    •  Add All - click to quickly transfer all primitives from the Non-Members list to the Members list.
    •  Add Selected (in dialog) - click to quickly transfer the primitives currently selected in the Non-Members list to the Members list.
    •  Remove Selected (in dialog) - click to quickly transfer those primitives currently selected in the Members list to the Non-Members list.
    •  Remove All - click this button to quickly transfer all primitives from the Members list to the Non-Members list.
    •  Add Selected (in the design space) - click this button to quickly transfer those primitives currently selected in the design workspace from the Non-Members list to the Members list.
    •  Remove Selected (in the design space) - click this button to quickly transfer those primitives currently selected in the design workspace from the Members list to the Non-Members list.

Component Class Generator Dialog

The Component Class Generator dialog allows you to quickly generate the membership for the selected component class based on defined search criteria. A range of attributes can be used to effectively 'capture' the components that you want to add as class members, including Designator, Comment, and Footprint. At a click of a button, all components matching the search criteria are added to the class.

The dialog also can be accessed from the PCB panel in Components mode by right-clicking in the Component Classes region then selecting Add Class or Properties (depending on whether you are creating a new class or editing an existing one). From the resulting Edit Component Class dialog, click the Class Generator button.

Options/Controls

The dialog provides a number of fields that collectively define the search/filter criteria that will be used to target the components that are to be added as members of the component class. The following criteria can be configured:

  • Designator - use this field to search/filter based on component designator. Use the field's drop-down to choose the type of components to target. All unique designator types found in the board design will be listed in the format <DesignatorPrefix>?? (e.g., U**, R**, C**). To include components regardless of designator type, set this field to Any.
  • Comment - use this field to search/filter based on the component comment. Use the field's drop-down to choose the component comment to target. All unique component comments found in the board design will be listed. To include components regardless of their comment, set this field to Any.
  • Footprint - use this field to search/filter based on the component footprint. Use the field's drop-down to choose the footprint to target. All unique component footprints found in the board design will be listed. To include components regardless of their footprint, set this field to Any.
  • Layer - use this field to search/filter based on which side of the board the components reside. Use the field's drop-down to target components on the TOP or BOTTOM. To include components regardless of the layer on which they reside, set this field to Any.
  • Rotation - use this field to search/filter based on component rotation. Use the field's drop-down to choose a specific rotation to target. All unique component rotations found in the board design will be listed. To include components regardless of their orientation, set this field to Any.
  • Locked - use this field to search/filter based on the component's locked status. Use the field's drop-down to target components that are locked (True) or not locked (False). To include components regardless of their locked status, set this field to Any.
  • Selection - use this field to search/filter based on the component's selection status. Use the field's drop-down to target components that are currently selected in the workspace (True) or not selected (False). To include components regardless of their selection status, set this field to Any.
  • Add Matching - click to add all components that match the defined search/filter criteria to the Class Membership region (on the right).
  • Clear Selected - click to have all components that are currently selected in the Class Membership region removed from the class.
  • Class Name - this field presents the current name of the class. Edit this field as required.
  • Class Membership - this region lists all components, by designator, that are currently members of the component class.
Components can be selected using standard multi-select techniques: Ctrl+click, Shift+click, and Click+drag.

Net Actions Right-Click Sub-Menu

Some net class related commands can be found in the Net Actions sub-menu when right-clicking selected primitive(s) with required net(s) assigned:

  • Add Selected Net to NetClass - this command is used to add one or more selected nets to an existing Net Class. After launching the command, the Choose Net Class dialog will open. This dialog lists all of the existing Net Classes. Select the target class then click OK. The Net(s) will be added as members of that class.
  • Remove Selected Net From Net Class - this command is used to remove one or more selected nets from an existing Net Class. After launching the command, the Choose Net Class dialog will open. This dialog lists all of the existing Net Classes. Select the target class then click OK. The Net(s) will be removed as members from that class.
If you find an issue, select the text/image and pressCtrl + Enterto send us your feedback.
Content