UL_PAD
Члени даних
кут | реальний (0,0…359,9) |
діаметр [шар] | внутр |
дриль | внутр |
свердласимвол | внутр |
подовження | внутр |
прапори | int (PAD_FLAG_…) |
назва | рядок (PAD_NAME_LENGTH) |
форма [шар] | int (PAD_SHAPE_…) |
сигнал | рядок |
x, y | int (центральна точка, див. примітку) |
Дивіться також UL_FOOTPRINT, UL_CONTACT, UL_SMD
Константи
PAD_FLAG_STOP | створити маску зупинки |
PAD_FLAG_THERMALS | генерувати терміки |
PAD_FLAG_FIRST | використовуйте спеціальну форму «першої колодки». |
PAD_SHAPE_SQUARE | Майдан |
PAD_SHAPE_ROUND | круглий |
PAD_SHAPE_OCTAGON | восьмикутник |
PAD_SHAPE_LONG | довго |
PAD_SHAPE_OFFSET | зсув |
PAD_NAME_LENGTH | макс. рекомендована довжина назви панелі (так само, як CONTACT_NAME_LENGTH) |
Примітка
Параметри блокнота залежать від контексту, у якому до нього звертаються:
- якщо блокнот отримано з контексту UL_LIBRARY, координати (x, y) і кут будуть такими ж, як визначено в кресленні відбитка
- у всіх інших випадках вони матимуть фактичні значення з дошки
Діаметр і форма прокладки залежать від шару, для якого вони повинні бути отримані, оскільки вони можуть відрізнятися в кожному шарі залежно від Правил проектування. Якщо один із шарів LAYER_TOP…LAYER_BOTTOM, LAYER_TSTOP або LAYER_BSTOP задано як індекс елемента даних діаметра або форми, результуюче значення буде обчислено відповідно до Правил проектування. Якщо задано LAYER_PADS, повертатиметься необроблене значення, визначене в бібліотеці.
drillsymbol повертає номер символу свердла, який було призначено цьому діаметру свердла (перелік визначених символів свердла див. у посібнику). Значення 0 означає, що цьому діаметру свердла не призначено жодного символу.
кут визначає, на скільки градусів панель повертається проти годинникової стрілки навколо свого центру.
подовження дійсне лише для форм PAD_SHAPE_LONG і PAD_SHAPE_OFFSET і визначає, на скільки відсотків довга сторона такої панелі довша за малу сторону. Цей елемент повертає 0 для будь-яких інших форм блокнота.
Значення, що повертається прапорцями, має бути замасковане константами PAD_FLAG_… для визначення індивідуальних параметрів прапорців, як у
if ( pad . flags & PAD_FLAG_STOP ) {
...
}
Зауважте, що якщо ваш ULP просто хоче намалювати об’єкти, вам не потрібно явно перевіряти ці позначки. Діаметр [] і форма [] повернуть належні дані; наприклад, якщо встановлено PAD_FLAG_STOP, діаметр[LAYER_TSTOP] поверне 0, що призведе до того, що на цьому шарі нічого не буде намальовано. Член flags в основному призначений для ULP, які хочуть створити файли сценаріїв, які створюють об’єкти бібліотеки.
приклад
library ( L ) { L . footprints ( FPT ) { FPT . contacts ( C ) {
if ( C . pad ) printf ( "Pad: '%s', (%f %f), d=%f
" , C . name , u2mm ( C . pad . x ), u2mm ( C . pad . y ), u2mm ( C . pad . diameter [ LAYER_BOTTOM ]));
}
}
}
Орігінал сторінки: UL_PAD