KiCad PCB EDA Suite
class_track.h File Reference

A single base class (TRACK) represents both tracks and vias, with subclasses for curved tracks (ARC) and vias (VIA). More...

#include <board_connected_item.h>
#include <class_board_item.h>
#include <convert_to_biu.h>
#include <pcb_display_options.h>
#include <pcbnew.h>
#include <geometry/seg.h>
#include <geometry/shape_arc.h>
#include <trigo.h>

Go to the source code of this file.

Classes

class  TRACK
 
struct  TRACK::cmp_tracks
 
class  ARC
 
class  VIA
 

Macros

#define UNDEFINED_DRILL_DIAMETER   -1
 
#define GEOMETRY_MIN_SIZE   ( int )( 0.001 * IU_PER_MM )
 

Enumerations

enum  ENDPOINT_T : int { ENDPOINT_START = 0, ENDPOINT_END = 1 }
 
enum  VIATYPE : int { VIATYPE::THROUGH = 3, VIATYPE::BLIND_BURIED = 2, VIATYPE::MICROVIA = 1, VIATYPE::NOT_DEFINED = 0 }
 

Detailed Description

A single base class (TRACK) represents both tracks and vias, with subclasses for curved tracks (ARC) and vias (VIA).

All told there are three KICAD_Ts: PCB_TRACK_T, PCB_ARC_T, and PCB_VIA_T.

For vias there is a further VIATYPE which indicates THROUGH, BLIND_BURIED, or MICROVIA, which are supported by the synthetic KICAD_Ts PCB_LOCATE_STDVIA_T, PCB_LOCATE_BBVIA_T, and PCB_LOCATE_UVIA_T.

Definition in file class_track.h.

Macro Definition Documentation

◆ GEOMETRY_MIN_SIZE

#define GEOMETRY_MIN_SIZE   ( int )( 0.001 * IU_PER_MM )

Definition at line 80 of file class_track.h.

◆ UNDEFINED_DRILL_DIAMETER

#define UNDEFINED_DRILL_DIAMETER   -1

Definition at line 77 of file class_track.h.

Enumeration Type Documentation

◆ ENDPOINT_T

enum ENDPOINT_T : int
Enumerator
ENDPOINT_START 
ENDPOINT_END 

Definition at line 60 of file class_track.h.

60  : int
61 {
62  ENDPOINT_START = 0,
63  ENDPOINT_END = 1
64 };

◆ VIATYPE

enum VIATYPE : int
strong
Enumerator
THROUGH 
BLIND_BURIED 
MICROVIA 
NOT_DEFINED 

Definition at line 68 of file class_track.h.

68  : int
69 {
70  THROUGH = 3, /* Always a through hole via */
71  BLIND_BURIED = 2, /* this via can be on internal layers */
72  MICROVIA = 1, /* this via which connect from an external layer
73  * to the near neighbor internal layer */
74  NOT_DEFINED = 0 /* not yet used */
75 };