Skip to content

jsl/landpatterns/package-body

Package name: jsl/landpatterns/package-body

Summary

Data Types

PackageBody

Physical body of the Component (also called the Lead Carrier or just Carrier)

Multis

Function Description
envelope Physical Envelope of the package body.

Functions

Function Description
PackageBody Create a Package Body as a rectangular cuboid.

CylinderBody

Z-axis aligned Cylindrical package body

Constructors

Function Description
CylinderBody Constructor for defstruct CylinderBody

Definitions

PackageBody

Physical body of the Component (also called the Lead Carrier or just Carrier)

public defstruct PackageBody <: Hashable & Equalable
    height: Toleranced
    length: Toleranced
    pose: Pose
    width: Toleranced

  • height: Toleranced - Measure of the package body in the Z dimension This dimension of the package body is the nominal distance that the component will stand off the surface of the PCB. This dimension will typically not effect the layout and routing of the PCB from an electrical perspective but will likely effect the mechanical integration of the component.

  • length: Toleranced - Measure of the package body in the Y dimension. Examples:

    • Typically for SOP/SOIC/DFN/SON, this dimension is orthogonal to the lead-span.
    • For non-square QFN/QFP/BGA packages, this is typically the longer of the two dimensions.
    • For axial through-hole components, the length is typically parallel to the axial leads of the device.
    • For radial through-hole components:
    • For cylindrical components, the length is equal to the width.
    • For non-cylindrical components, the length is typically the longer dimension and parallel to the leads of the device.
  • pose: Pose - Transform applied to the package body. By default the package body is centered at (0.0, 0.0)

  • width: Toleranced - Measure of the package body in the X dimension. Examples:

    • Typically for SOP/SOIC/DFN/SON, this dimension is in the same direction as the lead-span
    • For non-square QFN/QFP/BGA packages, this is typically the shorter of the two dimensions.
    • For axial through-hole components, the width is typically the diameter of the device cylinder and orthogonal to the axial leads.
    • For radial through-hole components:
    • For cylindrical components, the width is equal to the length
    • For non-cylindrical components, the width is typically the shorter of the two dimensions and approximately orthogonal to the plane of the leads.

For Through-hole resistors - this is the ceramic cylinder, not the leads For SMT resistors, the body is basically the whole chip resistor.

For QFNs, the body is the entire package For QFPs, the body is the ceramic or plastic but not the leads.

TODO - Figure here

Multis

envelope

Physical Envelope of the package body.

public defmulti envelope (body:PackageBody -- density-level:DensityLevel = ?) -> Shape

  • Returns Shape

Functions

PackageBody

Create a Package Body as a rectangular cuboid.

public defn PackageBody ( -- width:Toleranced, length:Toleranced, height:Toleranced, pose:Pose = ?)

CylinderBody

Z-axis aligned Cylindrical package body

public defstruct CylinderBody <: PackageBody
    diameter: Toleranced

  • diameter: Toleranced - Diameter of the Cyclindrical body. This dimension of the package body is the radial dimension of the cylinder in the X/Y plane.

This type is used to capture the dimensions and physical structure for a cylindrical body where the axial dimension of the cylinder is aligned with the Z-axis (ie, the height).

This is used typically for radial capacitors.

Constructors

CylinderBody

Constructor for defstruct CylinderBody

public defn CylinderBody ( -- diameter:Toleranced, height:Toleranced, pose:Pose = ?)

Related Packages

Forwarded by packages: jsl/landpatterns/packages, jsl/landpatterns/framework, jsl/landpatterns