UL_PAD

Miembros de datos

ángulo real (0,0...359,9)
diámetro[capa] entero
taladrado entero
símbolo de taladrado entero
alargamiento entero
indicadores int (PAD_FLAG_...)
nombre cadena (PAD_NAME_LENGTH)
forma[capa] int (PAD_SHAPE_...)
señal cadena
x, y int (punto central, véase nota)

Consulte también UL_FOOTPRINT, UL_CONTACT, UL_SMD

Constantes

PAD_FLAG_STOP generar máscara de parada
PAD_FLAG_THERMALS generar térmicos
PAD_FLAG_FIRST usar la forma especial de "primera plataforma"
PAD_SHAPE_SQUARE cuadrado
PAD_SHAPE_ROUND redonda
PAD_SHAPE_OCTAGON octogonal
PAD_SHAPE_LONG largo
PAD_SHAPE_OFFSET desfase
PAD_NAME_LENGTH longitud máxima recomendada para el nombre de una plataforma (igual que CONTACT_NAME_LENGTH)

Nota

Los parámetros de la plataforma dependen del contexto en el que se acceda a ella:

El diámetro diameter y la forma shape de la plataforma dependen de la capa para la que se recuperen, ya que pueden ser diferentes en cada capa en función de las reglas de diseño. Si se proporciona una de las capas LAYER_TOP...LAYER_BOTTOM, LAYER_TSTOP o LAYER_BSTOP como índice para el miembro de datos de diámetro o forma, el valor resultante se calculará de acuerdo con las reglas de diseño. Si se especifica LAYER_PADS, se devolverá el valor original definido en la biblioteca.

El drillsymbol devuelve el número del símbolo de taladrado que se ha asignado a este diámetro de taladrado (consulte el manual para obtener una lista de los símbolos de taladrado definidos). Un valor 0 significa que no se ha asignado ningún símbolo a este diámetro de taladrado.

El angle define cuántos grados va a girar la plataforma en sentido antihorario alrededor del centro.

El elongation solo es válido para las formas PAD_SHAPE_LONG y PAD_SHAPE_OFFSET, y define en un porcentaje en qué medida el lado largo de una plataforma es mayor que el pequeño. Este elemento devuelve 0 para cualquier otra forma de la plataforma.

El valor que devuelven los indicadores debe enmascararse con las constantes PAD_FLAG_... para determinar los parámetros de cada indicador, como en

if (pad.flags & PAD_FLAG_STOP) {
   ...
   }

Tenga en cuenta que si el ULP solo desea dibujar los objetos, no es necesario comprobar estos indicadores de forma explícita. Los miembros diameter[] y shape[] devolverán los datos correctos; por ejemplo, si se establece PAD_FLAG_STOP, diameter[LAYER_TSTOP] devolverá 0, lo que debería dar como resultado que no se dibuje nada en esa capa. El miembro indicadores es principalmente para ULP destinados a crear archivos de comandos para crear objetos de biblioteca.

Ejemplo

library(L) {
  L.footprints(FPT) {
    FPT.contacts(C) {
      if (C.pad)
         printf("Pad: '%s', (%f %f), d=%f\n",
                 C.name, u2mm(C.pad.x), u2mm(C.pad.y), u2mm(C.pad.diameter[LAYER_BOTTOM]));
      }
    }
  }