Allegro SKILL Tutorial | Forms


So far we have dealt with things that did not do anything real on the PCB itself. We will take a break and will now do something on the PCB itself. For this tutorial, our intention is to draw a line of width 10 on the silkscreen between the coordinates (10,10) and (100, 100). We basically make use of the axlDBCreateLine function. Here is the detail of the axlDBCreateLine function.

 
NAME
         axlDBCreateLine - create a path of fixed width straight segments
  
  SYNOPSIS
         axlDBCreateLine(
             l_points
             [f_width]
             [t_layer]
             [t_netname]
             [rd_parent]
         )
         ==> l_result/nil
  
  FUNCTION
         convert the l_points to an r_path (axlPathStart)
         call axlDBCreatePath
  
  NEEDS
         l_points                - list of vertices (at least two)
         f_width                 - width for all segments (defaults to 0)
         t_layer                 - layer (defaults to current active layer)
         t_netname               - net name
         rd_parent               - axl DBID of object to add the line to
                                         (symbol instance or nil for design) 
  RETURNS
         axlDBCreateLine         - nil if not created, or a list containing
                                         (car) list of axl DBID of all paths
                                                         created or modified
                                         (cadr) t if DRCs created or nil.
  
  NOTE
         All points are absolute (in user units).
         If  points are provided, then  segments are created.
 


We will first do it using the command line. On the command line type the following commands in succession.

 
Skill>x1 =10
Skill>y1 =10
Skill>x2 = 100
Skill>y2= 100

Skill>start = list(x1 y1)
Skill>end = list (x2 y2)

Skill>l_vertices =(start end)


Skill>axlDBCreateLine(l_vertices 10 "Package Geometry/Silkscreen_Top")
 

When you give the last command, look at the bottom left of your brd file. It will have a segment of line between (10,10) and (100,100)

Here is the youtube for this demonstration.