UL_WIRE

Membri dati

arc UL_ARC
cap int (CAP_...)
curva reale
layer int
stile int (WIRE_STYLE_...)
width int
x1, y1 int (punto iniziale)
x2, y2 int (punto finale)

Membri di sequenza chiusa

pieces() UL_WIRE (vedere nota)

Vedere anche UL_BOARD, UL_FOOTPRINT, UL_SEGMENT, UL_SHEET, UL_SIGNAL, UL_SYMBOL, UL_ARC

Costanti

CAP_FLAT Estremità arco piano
CAP_ROUND Estremità arco rotondo
WIRE_STYLE_CONTINUOUS Continuo
WIRE_STYLE_LONGDASH Tratto lungo
WIRE_STYLE_SHORTDASH Tratto corto
WIRE_STYLE_DASHDOT Tratto punto

Stile filo

Un UL_WIRE con uno stile diverso da WIRE_STYLE_CONTINUOUS può usare il membro di sequenza chiusa pieces() per accedere ai singoli segmenti che costituiscono, ad esempio, un filo tratteggiato. Se si richiama pieces() per UL_WIRE con WIRE_STYLE_CONTINUOUS, sarà possibile accedere a un singolo segmento che è identico al UL_WIRE originale. Il membro di sequenza chiusa pieces() non può essere richiamato da un UL_WIRE che è stato restituito da una chiamata a pieces(). Ciò potrebbe causare una ricorsione infinita.

Archi a livello di filo

Gli archi sono fondamentalmente fili, con alcune proprietà aggiuntive. Ad un livello iniziale gli archi vengono considerati esattamente come fili, ovvero hanno un punto iniziale e un punto finale, una larghezza, un layer e uno stile di filo. Inoltre, a livello di filo, un arco ha dei parametri cap e curve. cap definisce se le estremità dell'arco sono piatte o rotonde, mentre curve definisce la "curvatura" dell'arco.

L'intervallo valido per curve è compreso tra -360 e +360. Il suo valore indica quale parte di un cerchio completo è costituito dall'arco. Ad esempio, un valore di 90 genera un arco di 90 gradi, mentre 180 genera un semicerchio. Il valore massimo di 360 può essere raggiunto solo teoricamente, poiché in questo caso l'arco sarebbe costituito da un cerchio completo che dovrebbe avere un diametro infinitamente grande poiché i punti iniziale e finale devono essere presenti sul cerchio. I valori positivi per la curva indicano che l'arco è tracciato in modo matematicamente positivo (ossia in senso antiorario). Se la curva è 0, l'arco è una linea retta ("senza curvatura"), ossia un filo.

Il parametro cap vale per gli archi effettivi e restituirà sempre CAP_ROUND per un filo diritto.

Per determinare se UL_WIRE è un arco, controllare il valore booleano restituito del membro dati arc. Se restituisce 0, è un filo dritto, altrimenti è un arco. Se arc restituisce un valore diverso da zero, è possibile che il suo accesso ai parametri specifici di angolo inziale e finale, raggio e punto centrale di UL_ARC sia differito. Si tenga presente che questi parametri aggiuntivi potrebbero essere necessari solo se si desidera disegnare l'arco o elaborarlo in altri modi in cui la forma effettiva è importante.

Esempio

board(B) {
  B.wires(W) {
    printf("Wire: (%f %f) (%f %f)\n",
           u2mm(W.x1), u2mm(W.y1), u2mm(W.x2), u2mm(W.y2));
    }
  }