Advanced PCB Component Placement Tools in Altium Designer

Created: January 12, 2024 | Updated: January 12, 2024
Applies to Altium Designer version: 24

Parent page: Component Placement

Component Positioning and Placement Options

When you click and hold on a component to move it, if the Snap to Center option is on, then the component will be held by its reference point. The reference point is the 0,0 coordinate of the component as it was built in the library editor.

The Smart Component Snap option allows you to override this snap to center behavior and snap to the nearest component pad instead, which is handy when you need to position a specific pad in a specific location.

Preferences dialog, configuring the PCB Object Snap options
Enable Snap To Center to always hold the component by its reference point. Smart Component Snap is helpful when you need to align by a specific pad.

Placement Modes

You can cycle through component placement modes by pressing the R key during placement.

  • Ignore Obstacles - regular placement behavior, as seen in previous versions of Altium Designer. In this mode, the same component clearance checking routines seen in previous version of Altium Designer are used. These routines use the 3D body, if there is one, or the copper and silk primitives to identify an object's clearance.
  • Push Obstacles - the component to be placed will push other components away to provide compliance with clearances between components. Components in unions can be pushed and the location of components in the union may change, but the union will not break. Locked components cannot be pushed. In this mode, components are identified by their selection boundary, which is the smallest possible rectangle that encloses all of the primitives in the component.
  • Avoid Obstacles - the component to be placed will be forced to avoid violation clearances between other components during placement. In this mode, components are identified by their selection boundary, which is the smallest possible rectangle that encloses all of the primitives in the component.

The status bar at the bottom of the design space indicates the current placement mode.

Using the R hotkey to cycle through placement modes. Note that the R6 component is locked and cannot be moved in Push Obstacles mode.

Push/Avoid Obstacles cannot be used for complex selection when another object (track, pad, text, etc.,) is also selected.

Smart Component Alignment

The smart component placement features allow for dynamic alignment of components when dragging. Green indicator lines appear when the component is aligned either with adjacent components or with the pads of adjacent components.

By using hotkeys during placement, you can access the following alignment options:

  • Press and hold the Ctrl key during component placement to view alignment lines in relation to the boundaries of nearby components.
  • Press and hold the Shift key during component placement to view alignment lines by pads of nearby components.

Component Placement Grid

When components are placed or moved, they snap to the cartesian or polar grid currently under the component if this grid is defined for component placement. Definition of how a grid can be used (its purpose or application) is performed using the Comp and Non Comp options associated with that grid's entry in the Grid Manager region of the Properties panel.

To learn more, visit the Working with Grids & Guides page.

Finding Components for Placement

If you can visually locate components that you are positioning on the board, click and hold to move them. Otherwise, in a dense design where visually looking for a particular component can prove very time-consuming, you can use the Choose Component dialog to move a specific component in the design space, either by having the cursor jump to that component or by having the component moved to the current cursor position. To access the dialog, select the Edit » Move » Component command from the main menus and click anywhere in the design space away from components.

  • Component Filter - this field, at the top of the dialog, allows you to enter a string-based search filter to quickly target the component required. This is particularly useful if there are many components in the design. As you type, the list of components below is filtered to only show matching component strings. You can use the wildcard characters; ? (any single character) and * (any character).
Clear the field or enter the * wildcard to list all components for the board.
  • Component List - this area lists all components for the board (or all components passing the current filter) by designator. Select the entry of the component you want to move.
  • Movement - choose one of the following options to determine how the selected component in the list is to be moved:
    • Jump to component - with this option enabled, after clicking OK the cursor will jump to the component in the main design space. The component will be attached, floating on the cursor, ready to be repositioned as required.
    • Move component to cursor - with this option enabled, after clicking OK the chosen component will be moved to the current cursor position within the main design space. The component will be attached, floating on the cursor, ready to be repositioned as required.
With this option, using the mouse to interact with the dialog results in the chosen component always jumping to wherever the OK button is clicked. In this case, it may prove more useful to use the arrow and Tab keys to navigate the dialog's controls and choose the required component, leaving the cursor at the required location within the main design space.

Interactive Placement Commands

There are a number of semi-automated tools that allow you to edit the placement of your PCB design. Along with the standard object alignment commands, the commands of the Tools » Component Placement menu can be used to perform the following operations:

Arrange Within Room

This command arranges the components that are assigned to a room, within that room.

When arranging components within a room, if the room is smaller than the group of components associated to it, the components will be placed inside and/or as close to the room as possible. You can then resize the room as necessary - either manually and directly in the workspace or by using the appropriate room wrapping command.
Arrange Within Rectangle

This command enables you to arrange selected components within a defined rectangular area.

When arranging components within a rectangular area, if the rectangle defined is smaller than the group of components, it will be resized to accommodate the full group.
Arrange Outside Board This command arranges the selected components outside the keepout boundary, which is usually the board outline.

Reposition Selected Components

The Tools » Component Placement » Reposition Selected Components command is used to reposition a number of selected components sequentially in the order that you selected them.

This command can be used in conjunction with the Cross Select Mode. Enable Cross Select Mode (Tools » Cross Select Mode), select multiple schematic components, switch to the PCB editor, then run this command to reposition each component, in the same order they were selected in the schematic.

Position Components using Pick-and-place File

Components within your design can be positioned based on locations specified within a pick-and-place file using the Tools » Component Placement » Place From File command from the main menus. This feature is particularly useful if you are given critical placement information in the form of a pick-and-place file. It can also provide a useful method for quickly applying a favorite/preferred placement obtained by previously generating a Pick and Place file from Altium Designer.

After launching the command, the Load File Name dialog will open. Use this dialog to browse to and open the relevant pick-and-place file for the design. Any existing component in the design that is listed in the pick-and-place file will have its position updated, if the current position is different from that listed in the file (the file position will be used).

  • Any components that are not to be moved can be locked by setting their Locked option. This can be performed through the Properties panel when the components are selected.
  • A component must already exist in the design space and have the corresponding designator (as listed in the pick-and-place file) in order for the move to take place.
  • The following data columns must be included in the pick-and-place file: Center-X (Mid-X), Center-Y (Mid-Y), comment, designator, layer, and rotation. (show image)
  • Imperial and Metric Units are supported (the pick-and-place file details which Units are being used).
  • The Center-X (Mid-X) and Center-Y (Mid-Y) coordinates are used as the reference for position changes; other coordinates are ignored.

Swap Components

You can select a pair of components and easily swap their positions. After selecting the components you want to swap, right-click then select Component Actions » Swap Components or choose the Tools » Component Placement » Swap Components command from the main menus.

Easily swapping components using the right-click menu.

If there are no or more than two components selected when the command is run, you will be prompted to pick the first component you want to swap, then the second component. The components will be swapped, and you can continue swapping further pairs of components or right-click or press Esc to exit swapping mode.

Locked components cannot be swapped.

Component Positioning Guide

As you move a component in the design space, a thick green or red line will be displayed, traveling from a point within the component, to a location on the board. This line is called the Optimal Placement Vector, its function is to give an indication of whether the new location is better (green) or worse (red) than the previous location.

The vector has two distinct properties: its proposed target location; and its color.

To determine the locations for each end of the vector, the feature uses the centroid of the polygonal shape defined by the locations of the end points of the connection lines. There are two centroids of interest, one defined by the ends of the connection lines terminating on the component you are moving (the component centroid), the second defined by the other ends of that set of connection lines (the target location centroid).

The Optimal Placement Vector is drawn between these two centroids, with the component end highlighted by a dot. Because it is a relative indicator, when you first click to start moving a component, the vector is always drawn in green. The two centroids are continuously recalculated as you move the component because the connection lines can move from one pad to another as they are automatically re-optimized to maintain the applicable net topology for the moving component. Because of this net re-optimization, the target end of the OPV can jump around as the component is moved. If the centroids move apart and the OPV becomes longer, it may change to red. If the centroids move closer together and the OPV becomes shorter, it may change to green.

The length of the vector is not the only condition used to set the color, the color of the OPV is also affected by the overall length of the connection lines attached to the moving component. If moving the component results in the overall length of the connection lines increasing, then the OPV becomes red. Alternatively, if moving the component results in the overall length of the connection lines decreasing, then it becomes green.

Animation showing how the Optimal Placement Vector changes color to show when the connection line pattern is less optimal
Although the vector length is increasing, it remains green because the overall length of the connection lines is getting shorter. When the component is rotated, the connection lengths increase so the OPV becomes red.

Remember that the OPV is a relative guide, each time you place the component, that new location becomes the starting point for calculations the next time you move that component.

This feature is available only when the PCB.ComponentDrag.ShowAverageHelper option is enabled in the Advanced Settings dialog. The dialog is accessed by clicking the Advanced button on the System - General page of the Preferences dialog.

Placing From the Components Panel

While components are usually placed by importing changes from the design to the PCB (Design Synchronization), a component can also be placed directly in the PCB editor from the Components panel. To do so:

  1. Open the Components panel (View » Panels » Components or Place » Component).
  2. Search for the required component, select it in the list, and then:
    • Right-click then select Place <ComponentName> from the context menu, or
    • Double-click on the selected component. The component will appear floating in the design space. Place the component in the desired location then click to place, or
    • Click and hold the component's name in the Components panel then drag the component to the desired location and click to place it. This is a 'single shot' placement technique, meaning only a single instance of the chosen component can be placed. The other methods allow multiple instances to be placed.
Press Tab to edit the properties of the component before it is placed.
PCB component footprints (and schematic components) can only be placed from the connected Workspace or available libraries. The term 'available libraries'  includes libraries that are part of the current project being worked on, or libraries currently installed in Altium Designer. Libraries can be installed and removed via the Data Management - File-based Libraries page of the Preferences dialog or the Available File-based Libraries dialog (click the  button in the Components panel then select File-based Libraries Preferences from the drop-down).

Support for Jumper Components

Jumpers, also referred to as wire links, allow you to replace routing with a Jumper component, which is often an essential ingredient to successfully designing a single-sided board. Altium Designer supports use of jumper components through a special component type of Jumper.

While you can start by placing the Jumper footprints directly onto the PCB, a suggested workflow starts at the schematic. To learn more, refer to the Working with Jumper Components page.

Found an issue with this document? Highlight the area, then use Ctrl+Enter to report it.

Contact Us

Contact our corporate or local offices directly.

We're sorry to hear the article wasn't helpful to you.
Could you take a moment to tell us why?
200 characters remaining
You are reporting an issue with the following selected text
and/or image within the active document: