Working with Assemblies and Parts


  • Set your default SketchUp template units to inch or cm before working in MAKE
  • Don't change the units in a SketchUp model after creating MAKE operations.

Video: Selecting The Template


About Components

A component is a named group containing one or more edges and faces. The basic mechanics of working with components is outside the scope of this guide, but you can find more information on SketchUp components here and here.

MAKE uses a special kind of SketchUp component called a "Dynamic Component", or "DC" for short. DC's are components that have a mini spreadsheet attached to them that allows constraints and behaviors to be added to the components to make them "smart". A solid understanding of how to use DC's is required to use MAKE. You can find help for working with Dynamic Components here and here.

Setting up component axes.

Quick Start: Create Panel

Video: Creating Panels

From the Extensions -> MAKE menu, select Create Panel to open the Create Panel dialog box. The dialog will prompt you for the dimensions of the panel. If the panel size is going to be parametrically controled you can change the size to a formula later on.

After you've entered the dimensions a panel will be generated with the axes and origin set correctly for machining. Don't change the axes or the origin of the panel. You can freely move and rotate the panel to position it in an assembly, but don't change component axes.

Edgebands and operations components must be nested inside of panel components.


Using the type attribute with assemblies, parts and edgebands

type is a reserved MAKE attribute name used to classify components. Assemblies, parts and edgebands must have a type attribute with values set as described below. All type values must be in lower case.


type: assembly

  • The type attribute is set to assembly to designate a collection of components as an assembly
  • Assemblies can be top-level products such as a cabinet, or subassemblies used within other assemblies, such as a drawer.
  • Subassemblies can be nested to any depth in the component hierarchy.
  • Keep the hierarchy as simple as possible
  • Required attribute:
    • type -> assembly
  • The following optional attributes are recommended for export data:
    • Name
    • Width
    • Height
    • Depth

type: panel

  • The type attribute is set to panel to designate a manufactured component.
  • Panels can be made of any dimensional material including sheet goods, solid stock, extrusions and textiles.
  • A panel component must contain one board subcomponent.
  • A panel component may contain one or more subcomponents of type edgeband.
  • A panel component may contain one or more subcomponents of type operation.
  • Panels cannot contain other panels.
  • Required attributes:
    • type -> panel
    • matcode -> the panel material code. Syntax: an equal sign followed by any text inside quotes. For example:
      • matcode ="my-material/name"
    • bomL -> length, typically equal to panel's LenX
    • bomW -> width, typically equal to panel's LenY
    • bomT -> thickness, typically equal to panel's LenZ
  • Optional attributes for cut sizes, if different from finished sizes. For example if you are using a premilling head on an edgebander, you may want to oversize your panels to compensate for the amount of material removed by the premilling head.
    • cutL -> cut length
    • cutW -> cut width
    • cutT -> cut thickness
  • Optional attributes for CNC part rotation and mirroring. If you need a part to be rotated and/or mirrored on your CNC machine, you can see use the following attributes on any component of type -> panel

    • CNCrotate valid values are 0, 90, 180 and 270
    • CNCmirror valid values are mirrorX , mirrorY and mirror_XY
  • Optional attribute for program name on any operation

    • ProgName you can use any string of text that is accepted on your CNC machine. If a ProgName attribute is not present or its value is empty, the ProgName for any component of type -> panel will be automatically created in the XML export as the file name followed by a three digit sequential number starting with 001, e.g. jobname001. Some CNC machines can only accept program names 8 characters long, so job names may need to be 5 characters or less.

type: edgeband

  • The type attribute is set to edgeband to designate linear edgebanding components
  • A component of type edgeband is a leaf component with no children
  • Edgeband components must be direct children of panel component
  • Edgeband component axes must be located at upper left inside corner of edgeband, as you look at the edge face

  • Required attributes:

    • name -> edge location name, e.g. E1L or TopEdge
    • type -> edgeband
    • matcode -> the edgeband material code. Syntax: an equal sign followed by any text inside quotes. For example:
      • matcode ="my-edgeband_name"
    • bomL -> equal to edgeband LenX
    • bomW -> equal to edgeband LenX
    • bomT -> equal to edgeband LenY

results matching ""

    No results matching ""