Initialize the style to define a pad with a hole by specifying the diameter of the hole.

syntaxSyntax:
DlxPadStyle.InitPadFromHole(holeDiameter, holeLength = 0, xRatio = 0, plated = TRUE, shapeFactor = 1, IPClevel = DlxApp.IPCLEVEL_B)

Parameters

Parameter Description
holeDiameter Specify the hole diameter.
holeLength To create a slot with rounded ends, specify its length.
xRatio Determines the increase in size along the X axis of the pad with respect to the Y axis.
plated Specify the hole type. Enter true if the hole is plated otherwise false.
shapeFactor Specify the shape of the pad by defining whether the corners should be straight, rounded or beveled. Specify the shape of the pad as follows:
>0 and <=1 Corners are rounded. The value of shapeFactor specifies the rounding percentage of all four edges of the pad.
=0 Angles are 90 degrees.
>=-1 and < 0 The corners are beveled. The value of the shapeFactor specifies the percentage of bevel of all four corners of the pad.
IPClevel Specify the board construction level according to IPC-7351 specifications for the three-level library system. Specify one of the following values:
DlxApp.IPCLEVEL_A
DlxApp.IPCLEVEL_B
DlxApp.IPCLEVEL_C

Return Value

If the operation ends correctly, it returns true otherwise it returns false.

Example

  Copy codeCopy code
var prj = DlxApp.GetJob().GetProject("Example PCB");
if (!prj.IsValid())
  prj = DlxApp.GetJob().NewProject("Example PCB");
var doc = prj.GetDocument("Examples PCB", DlxApp.DOCTYPE_PCB);
if (!doc.IsValid())
{
  doc = prj.NewDocument("Examples Pcb", DlxApp.DOCTYPE_PCB);
  doc.SetPageFormat("A4", false);
  var page = doc.NewPage("PCB", 0, true);
  page.LoadLayerStack("2 layer pcb stackup.clxlys");
  page.DrawBoard(new DlxRect(10, 10, 290, 200));
  page.SelectView("Draw Copper From Top");
}
if (doc.IsValid() && doc.Activate())
{
  var page = doc.FindPage("PCB");
  if (page.IsValid() && doc.SelectPage(page))
  {
    var layer = page.GetLayerFromType(DlxApp.LAYERTYPE_TOPCOPPER);
    if (layer.IsValid())
    {  
      var padstyle = new DlxPadStyle();
      padstyle.InitPadFromHole(0.8);
      layer.DrawPad(new DlxPoint(100,150), padstyle, "1");
    }
  }
}

See also