EditWithComps [padstack manager]

Use: Edit an existing padstack.

Command: None

Syntax: EditWithComps <PadstackName>,

Array("NAME:<NewPadstackName>",

"ModTime:=", <ModifiedOnInfo>,

"Library:=", "", // name of the library

"LibLocation:=", "Project", // location of the named library

Array("NAME:psd",

"nam:= ", <PadstackName>,

"lib:=", "", // name of the library

"mat:=", "", // hole plating material

"plt:=", "0", // percent of hole's radius filled by plating

Array("NAME:pds",

<LayerGeometryArray>,

<LayerGeometryArray....),

"hle:=", <PadInfo>

"hRg:=", <HoleRange>,

"sbsh:=", <SolderballShape>,

"sbpl:=", <SolderballPlacement>,

"sbr:=", <string>, // solderball diameter, real with units

"sb2:=", <string>, // solderball mid diameter, real with units

"sbn:=", <string>), // name of solderball material

"ppl:=", <PadPortLayerArray>,

Array(<ListOfComponentNames>) // Component names

 

Return Value: <string>

// composite name of the padstack.

// If the name requested conflicts with the name of an existing

// padstack, the requested name is altered to be unique.

// The name returned reflects any change made to be unique.

 

Parameters: <PadstackName>:

<string> // composite name of the padstack being edited

 

<NewPadstackName>:

<string> // new simple name for the padstack

 

<ModifiedOnInfo>:

An integer that corresponds to the number of seconds that have elapsed

since 00:00 hours, Jan 1, 1970 UTC from the system clock.

 

<LayerGeometryArray>:

Array("Name:lgm",

"lay:=", <string>, // definition layer name

"id:=", <int>, // definition layer id

"pad:=", <PadInfo>, // pad

"ant:=", <PadInfo>, // antipad

"thm:=", <PadInfo>, // themal pad

"X:=", <string>, // pad x connection, real with units

"Y:=", <string>, // pad y connection, real with units

"dir:=", <DirectionString>) // pad connection direction

 

<PadInfo>:

Array("shp:=", <PadShape>,

"Szs:=", <DimensionArray>,

"X:=", <string>, // x offset, real with units

"Y:=", <string>, // y offset, real with units

"R:=", <string>) // rotation, real with units

 

<PadShape>:

<string> one of these choices

"No" // no pad

"Cir" // Circle

"Sq" // Square

"Rct" // Rectangle

"Ov" // Oval

"Blt" // Bullet

"Ply" // Polygons

"R45" // Round 45 thermal

"R90" // Round 90 thermal

"S45" // Square 45 thermal

"S90" // Square 90 thermal

 

<DimensionArray>:

Array(<string>, ...) // each string is a real with units for one of the

// dimensions of the shape

 

<DirectionString>:

<string> one of these choices

"No" // no direction

"Any" // any direction

"0" // 0 degrees

"45" // 45 degrees

"90" // 90 degrees

"135" // 135 degrees

"180" // 180 degrees

"225" // 225 degrees

"270" // 270 degrees

"315" // 315 degrees

<HoleRange>:

<string> one of these choices

"Thr" // through all layout layers

"Beg" // from upper pad layer to lowest layout layer

"End" // from upper layout layer to lowest pad layer

"UTL" // from upper pad layer to lowest pad layer

 

<SolderballShape>:

<string> one of these choices

"None" // no solderball

"Cyl" // cylinder solderball

"Sph" // spheroid solderball

<SolderballPlacement>:

<string> one of these choices

"abv" // above padstack

"blw" // below padstack

<PadPortLayerArray>:

Array( <int>, <int>,....) where each int is a layer id

 

<ListOfComponentNames>:

<string>,<string> ...

// The list may be empty. When not empty, each string that is listed is a component

// that references the padstack to be edited. Prior to editing, a clone of the padstack is

// made, and the components that are listed are modified so that they now refer to

// the clone.