svg-pcb
svg-pcb copied to clipboard
Some KiCAD_modules are not parsed properly
For example the file copied below.
The issue is in https://github.com/leomcelroy/svg-pcb/blob/main/js/ki_cad_parser.js
(footprint CAP_EEEFN1H101V (layer F.Cu) (tedit 643D8CE0)
(descr "")
(attr smd)
(fp_text reference REF** (at 0.325 -5.535 0) (layer F.SilkS)
(effects (font (size 1.0 1.0) (thickness 0.15)))
)
(fp_text value CAP_EEEFN1H101V (at 6.675 5.535 0) (layer F.Fab)
(effects (font (size 1.0 1.0) (thickness 0.15)))
)
(pad 1 smd custom (at -3.0 0.0) (size 2.0 2.0) (layers F.Cu)
(zone_connect 0) (options (clearance outline) (anchor rect))
(primitives
(gr_poly
(pts
(xy -0.65 2.35)
(xy -0.65 1.25)
(xy -2.35 1.25)
(xy -2.35 -1.25)
(xy -0.65 -1.25)
(xy -0.65 -2.35)
(xy 0.65 -2.35)
(xy 0.65 -1.25)
(xy 1.65 -1.25)
(xy 1.65 1.25)
(xy 0.65 1.25)
(xy 0.65 2.35)
) (width 0.01)
)
)
)
(pad 2 smd custom (at 3.0 0.0 180.0) (size 2.0 2.0) (layers F.Cu)
(zone_connect 0) (options (clearance outline) (anchor rect))
(primitives
(gr_poly
(pts
(xy 0.65 2.35)
(xy 0.65 1.25)
(xy 2.35 1.25)
(xy 2.35 -1.25)
(xy 0.65 -1.25)
(xy 0.65 -2.35)
(xy -0.65 -2.35)
(xy -0.65 -1.25)
(xy -1.65 -1.25)
(xy -1.65 1.25)
(xy -0.65 1.25)
(xy -0.65 2.35)
) (width 0.01)
)
)
)
(fp_poly
(pts
(xy -3.65 2.35)
(xy -3.65 1.25)
(xy -5.35 1.25)
(xy -5.35 -1.25)
(xy -3.65 -1.25)
(xy -3.65 -2.35)
(xy -2.35 -2.35)
(xy -2.35 -1.25)
(xy -1.35 -1.25)
(xy -1.35 1.25)
(xy -2.35 1.25)
(xy -2.35 2.35)
) (layer F.Paste) (width 0.01)
)
(fp_poly
(pts
(xy -3.75 2.45)
(xy -3.75 1.35)
(xy -5.45 1.35)
(xy -5.45 -1.35)
(xy -3.75 -1.35)
(xy -3.75 -2.45)
(xy -2.25 -2.45)
(xy -2.25 -1.35)
(xy -1.25 -1.35)
(xy -1.25 1.35)
(xy -2.25 1.35)
(xy -2.25 2.45)
) (layer F.Mask) (width 0.01)
)
(fp_poly
(pts
(xy 3.75 2.45)
(xy 3.75 1.35)
(xy 5.45 1.35)
(xy 5.45 -1.35)
(xy 3.75 -1.35)
(xy 3.75 -2.45)
(xy 2.25 -2.45)
(xy 2.25 -1.35)
(xy 1.25 -1.35)
(xy 1.25 1.35)
(xy 2.25 1.35)
(xy 2.25 2.45)
) (layer F.Mask) (width 0.01)
)
(fp_poly
(pts
(xy 3.65 2.35)
(xy 3.65 1.25)
(xy 5.35 1.25)
(xy 5.35 -1.25)
(xy 3.65 -1.25)
(xy 3.65 -2.35)
(xy 2.35 -2.35)
(xy 2.35 -1.25)
(xy 1.35 -1.25)
(xy 1.35 1.25)
(xy 2.35 1.25)
(xy 2.35 2.35)
) (layer F.Paste) (width 0.01)
)
(fp_line (start -4.15 -2.65) (end -4.15 2.65) (layer F.Fab) (width 0.127))
(fp_line (start -4.15 2.65) (end -2.65 4.15) (layer F.Fab) (width 0.127))
(fp_line (start -2.65 4.15) (end 4.15 4.15) (layer F.Fab) (width 0.127))
(fp_line (start 4.15 4.15) (end 4.15 -4.15) (layer F.Fab) (width 0.127))
(fp_line (start 4.15 -4.15) (end -2.65 -4.15) (layer F.Fab) (width 0.127))
(fp_line (start -2.65 -4.15) (end -4.15 -2.65) (layer F.Fab) (width 0.127))
(fp_line (start -4.15 2.65) (end -2.65 4.15) (layer F.SilkS) (width 0.127))
(fp_line (start -2.65 4.15) (end 4.15 4.15) (layer F.SilkS) (width 0.127))
(fp_line (start 4.15 -4.15) (end -2.65 -4.15) (layer F.SilkS) (width 0.127))
(fp_line (start -2.65 -4.15) (end -4.15 -2.65) (layer F.SilkS) (width 0.127))
(fp_line (start -4.15 -2.65) (end -4.15 -1.57) (layer F.SilkS) (width 0.127))
(fp_line (start -4.15 1.57) (end -4.15 2.65) (layer F.SilkS) (width 0.127))
(fp_line (start 4.15 -1.57) (end 4.15 -4.15) (layer F.SilkS) (width 0.127))
(fp_line (start 4.15 4.15) (end 4.15 1.57) (layer F.SilkS) (width 0.127))
(fp_line (start -5.6 -1.5) (end -4.4 -1.5) (layer F.CrtYd) (width 0.05))
(fp_line (start -4.4 -1.5) (end -4.4 -2.775) (layer F.CrtYd) (width 0.05))
(fp_line (start -4.4 -2.775) (end -2.775 -4.4) (layer F.CrtYd) (width 0.05))
(fp_line (start -2.775 -4.4) (end 4.4 -4.4) (layer F.CrtYd) (width 0.05))
(fp_line (start 4.4 -4.4) (end 4.4 -1.5) (layer F.CrtYd) (width 0.05))
(fp_line (start 4.4 -1.5) (end 5.6 -1.5) (layer F.CrtYd) (width 0.05))
(fp_line (start 5.6 -1.5) (end 5.6 1.5) (layer F.CrtYd) (width 0.05))
(fp_line (start 5.6 1.5) (end 4.4 1.5) (layer F.CrtYd) (width 0.05))
(fp_line (start 4.4 1.5) (end 4.4 4.4) (layer F.CrtYd) (width 0.05))
(fp_line (start 4.4 4.4) (end -2.775 4.4) (layer F.CrtYd) (width 0.05))
(fp_line (start -2.775 4.4) (end -4.4 2.775) (layer F.CrtYd) (width 0.05))
(fp_line (start -4.4 2.775) (end -4.4 1.5) (layer F.CrtYd) (width 0.05))
(fp_line (start -4.4 1.5) (end -5.6 1.5) (layer F.CrtYd) (width 0.05))
(fp_line (start -5.6 1.5) (end -5.6 -1.5) (layer F.CrtYd) (width 0.05))
(fp_circle (center -4.8 -2.0) (end -4.7 -2.0) (layer F.Fab) (width 0.2))
(fp_circle (center -4.8 -2.0) (end -4.7 -2.0) (layer F.SilkS) (width 0.2))
)