Documentation
Go to AppSign InSign Up
    Getting Started
    • Introduction to Flux
    • What is Flux?
    • Quick Start
    • The Flux Method
    • Creating an Account
    • Flux for Organizations
    • Setting Up Your Browser
      • Mouse & Trackpad
      • Multi-Screen Operation
      • Keyboard Shortcuts
    • Your First PCB in Flux
      • DFM & Export
      • PCB Layout & Routing
      • Project Setup
      • Schematic
      • Export & Manufacturing
    • KiCAD to Flux
      • Layout
      • Parts & Libraries
      • Schematics
    • Eagle to Flux
    • EasyEDA to Flux
    • Upverter to Flux
    • Altium to Flux
    • Getting Help
    Tutorials
    • Tutorials
    • Getting Started With Flux
      • Customizing Flux
    • Flux Use Cases
      • AI Architecture Design
      • AI Component Research
      • AI Design Reviews
      • AI Testing & Debugging
      • AI Auto-Layout
      • Generative AI
    • Start Learning Flux, No Matter Your Skill Level
      • Advanced Designer
      • First Time Designer
      • Intermediate Designer
    • Power Regulator
      • 1 – Part Selection
      • 2 – PCB Layout
      • 2 – Schematics
    • Routing
      • High-speed Routing
      • High Density Designs (HDI)
      • Working with Polygons
    • Adding Components to the Library
      • Publishing Components to the Library
      • Creating Components from Scratch
      • Importing Components
      • Working with Footprints
      • Working with Symbols
    • What is a Module?
      • Module Design Best Practices
      • Creating Modules
      • Using Modules
    • Generic Components
      • Creating a generic part
    • Copper Fills Tutorial
      • Creating Copper Cutouts
    • Board Outline Shape and Size
    • The Toolbar
    • Using Layout Rules
    • Intro to collaboration
    • Embedding a Flux Project
    • Reviewing component updates
    • Version Control Deep Dive
    • Custom Shapes
    • AI-Assisted Design with Flux
    • PCB Design Reviews (DRC)
    • Component Placement
    • Component Procurement
    • Multi-Layer PCB Design
    • Working with Ground Signals
    • Reusing Projects
      • Useful links
    Reference
    • Flux Context Menu
    • Calculator Tool
    • Change Project Name
    • Code Tool
    • Convert to component
    • Flux ACUs
    • Overview
    • Data Portability
    • Delete & Archive Projects
    • Design Rule Check (DRC)
    • Expressions
    • File Tool
    • FMEA Report Generation
    • Gerber Exports
    • Help Tool
    • Special Part Types
    • JEP30 PartModel Import/Export
    • Knowledge Base
    • Library Tool
    • Managing Units
    • Measuring Distances
    • Model Selection
    • Nets and Traces
      • Curved Traces
      • Impedance Control
      • Trace Width
    • Object Types
      • AssetNode
      • ControlNode
      • ElementNode
      • ElementTerminalNode
      • OutputNode
      • PropertyNode
      • RouteNode
      • RouteTerminalNode
    • Pads & Holes
    • Passive Component Consolidation
    • Layout Rules Reference
      • Layout Rules List
      • Object-Specific Layout Rules
      • Selector-Based Layout Rules
      • Layout Rules Inheritance & Precedence
      • Layout Rules Modifiers
    • Polygons
    • Comments
    • Cursors
    • Forking & Cloning
    • Copper Fills
    • Importing Schematics
    • Importing Components
    • Schematic Inspector
      • Assets Panel
      • Pricing & Availability Panel
      • Properties Panel
      • Simulation Panel
    • The Library
    • Project Launcher
      • New Blank Project
    • Layout Object Tree
      • PCB Object Types
    • Schematic Object List
    • The PCB Editor
      • Locking
      • Layer View Control
      • Positioning & Routing
      • Selecting Objects
      • Stackup Editor
    • Permission Tiers
    • Preloaded Examples
    • The Profile Page
      • Featured Projects
    • The Schematic Editor
      • Positioning & Wiring
    • Global Search
    • Sharing & Permissions
    • History & Version Control
    • Silkscreen
    • Simulator Tool
    • Star a Project (Favorite)
    • Vias
      • Smart Vias
    Copilot
    • Copilot Overview
    • Model Selection
    • Flux ACUs
    • Knowledge Base
    • Flux Context Menu
    • Calculator Tool
    • Code Tool
    • File Tool
    • Help Tool
    • Library Tool
    • Simulator Tool
    • FMEA Report Generation
    • Passive Component Consolidation
    FAQ
    • Schematic Editor
    • General FAQs
    • Flux and AI FAQs
    • PCB Editor FAQs
    • Parts and Modules
    • Pricing
    • Private and public projects
    • Data security and IP protection
    • When things go wrong: Errors and how to handle them
      • Lost connection
    Legal
    • Terms of Service
    • Privacy Statement
    • Main Services Agreement
    • Subprocessors

Tutorials

Custom Shapes

Tutorials

Creating Custom Shapes in Flux


Create custom shapes for pads, symbols, silkscreen and board layout.

Overview

Some elements come in many different forms. IC footprints, antennas, and other connectors all may have specific pad-shape requirements, some symbols require many different shapes and board layouts have all sorts of different requirements.

In this tutorial, we'll cover how to create and add custom shapes to many different elements, including pads, silkscreen, board layout and zones.

Creating a Custom Shape

Flux supports DXF and SVG files as input for custom shapes. You can use any CAD or drawing tool to generate these shapes, but if you're not used to creating shapes we'd suggest you start with Onshape for DXF files or Inkscape for SVG files.

Shape Requirements

Depending on what element you'll be using the shape in, there might be specific requirements:

  • Symbols

    • Every shape and line should be white, with 1px stroke width and no fill
    • Pins are typically 10 to 18 pixels long
    • Basic parts (i.e. resistors, caps, transistors) typically fit in a 40x40 px area. Larger, more complicated parts, such as ICs, may require a larger area
  • Pads, Zones and Layout

    • Lines need to form a single closed shape
    • Do not include any holes or cutouts. Those will need to be added afterward using holes
    • Multiple lines need to be converted into a single polyline
  • Silkscreen

    • No specific requirements

Creating DXF Shapes with Fusion360

The video below covers how to create DXF shapes using Fusion 360 for a symbol, but the same process can be used to create a shape for any other element (pad, footprint and layout):

Creating SVG Shapes with Inkscape

Inkscape is an open source tool, and it's available for most platforms. Even if you're unfamiliar with SVG files, the steps in this tutorial should be enough to help you create your first shape.

The video below covers how to create a custom symbol shape, but the same process can be used to create a shape for any other element (pad, footprint and silkscreen):

Importing the Shape into Flux

There are two ways of adding generated shapes into Flux:

  • Using an asset: This works on every scenario, both for DXF and SVG files
  • Injecting code directly on a shape rule: This option works only for SVG shapes, and cannot be used for symbols

Option 1: Using an Asset File

You can use an external DXF or SVG file to dictate the shape of a pad. This is a two-step process; first, you must add the SVG or DXF as an asset and then link the asset to the target pad.

Step 1: Adding DXF/SVG Files as Assets

:::info Info If you're creating a custom symbol and have added multiple assets, click the "Set this as default symbol" button. :::

Once you've added the SVG or DXF file to the asset list, then link the asset to the target element.

:::info Info Skip this step if you're creating a custom symbol. You can now go back to the symbols tutorial. :::

To link an asset to an element:

  1. Select the element you want to make into a custom shape
  • Silkscreen: Object type -> Silk Line
  • Board shape: Object type -> Layout
  • Pad: Object type -> Pad
  • Zone: Object type -> Zone
  1. Locate the "Layout rules" drop-down menu on the right-side panel
  2. Find the "Object-specific rules" submenu
  3. Click on "Add"
  4. Find and add the "Asset" rule
  5. Inside the "Asset" text box, select the SVG/DXF file added in the previous step from the list

Example: adding an asset to a pad.

Step 3: Scaling an Asset

By default, Flux assumes the imported file will be in meters. You might need to adjust the scale of the asset using a scale rule.

Option 2: Using the Shape Rule for SVG Code

Some elements (pad, layout, line, zone) allow you to add SVG code directly into the rule. Custom-shaped symbols can only be created via the asset method. To add the SVG code directly into a shape rule:

  1. Open the PCB editor
  2. Select the element you want to convert to a custom shape
  3. Locate the "Layout rules" drop-down menu on the right-side panel
  4. Find the "Object-specific rules" submenu
  5. Click on "Add"
  6. Find and add the corresponding "Pad shape", "Line shape", "Zone Shape", or "Layout Shape" rule
  7. Inside the rule's text box, paste the SVG code. See the SVG code below as an example
M 0.005 0.005 L -0.005 0.005 L -0.005 -0.005 L 0.003 0.001 z

Example: adding SVG code directly to a Pad Shape rule

What's Next

Now that you understand how to create and use custom shapes in Flux, you might want to explore:


Previous

Version Control Deep Dive

Next

AI-Assisted Design with Flux