if (document.getElementById("pad_layer_copper").checked) {
var west = cvlp_pad(i+1, 0+pad_thickness, pad_thickness+pad_size+pad_chip_spacing*2+pad_spacing*i, pad_thickness+pad_size, pad_thickness+pad_size+pad_chip_spacing*2+pad_spacing*i, pad_thickness, pad_thickness*0.1, 0)
logo.elements = logo.elements.concat(west)
var north = cvlp_pad(24-i, pad_thickness+pad_size+pad_chip_spacing*2+pad_spacing*i, pad_thickness, pad_thickness+pad_size+pad_chip_spacing*2+pad_spacing*i, pad_thickness+pad_size, pad_thickness, pad_thickness*0.1, 0)
logo.elements = logo.elements.concat(north)
var east = cvlp_pad(18-i, pad_thickness+pad_size+pad_chip_spacing*2+pad_spacing*5+pad_chip_spacing*2, pad_thickness+pad_size+pad_chip_spacing*2+pad_spacing*i, pad_thickness+pad_size+pad_chip_spacing*2+pad_spacing*5+pad_chip_spacing*2+pad_size, pad_thickness+pad_size+pad_chip_spacing*2+pad_spacing*i, pad_thickness, pad_thickness*0.1, 0)
logo.elements = logo.elements.concat(east)
var south = cvlp_pad(i+7, pad_thickness+pad_size+pad_chip_spacing*2+pad_spacing*i, pad_thickness+pad_size+pad_chip_spacing*2+pad_spacing*5+pad_chip_spacing*2, pad_thickness+pad_size+pad_chip_spacing*2+pad_spacing*i, pad_thickness+pad_size+pad_chip_spacing*2+pad_spacing*5+pad_chip_spacing*2+pad_size, pad_thickness, pad_thickness*0.1, 0)
logo.elements = logo.elements.concat(south)
} else {
var west = cvlp_line(0+pad_thickness, pad_thickness+pad_size+pad_chip_spacing*2+pad_spacing*i, pad_thickness+pad_size, pad_thickness+pad_size+pad_chip_spacing*2+pad_spacing*i, pad_thickness)
logo.elements = logo.elements.concat(west)
var north = cvlp_line(pad_thickness+pad_size+pad_chip_spacing*2+pad_spacing*i, pad_thickness, pad_thickness+pad_size+pad_chip_spacing*2+pad_spacing*i, pad_thickness+pad_size, pad_thickness)
logo.elements = logo.elements.concat(north)
var east = cvlp_line(pad_thickness+pad_size+pad_chip_spacing*2+pad_spacing*5+pad_chip_spacing*2, pad_thickness+pad_size+pad_chip_spacing*2+pad_spacing*i, pad_thickness+pad_size+pad_chip_spacing*2+pad_spacing*5+pad_chip_spacing*2+pad_size, pad_thickness+pad_size+pad_chip_spacing*2+pad_spacing*i, pad_thickness)
logo.elements = logo.elements.concat(east)
var south = cvlp_line(pad_thickness+pad_size+pad_chip_spacing*2+pad_spacing*i, pad_thickness+pad_size+pad_chip_spacing*2+pad_spacing*5+pad_chip_spacing*2, pad_thickness+pad_size+pad_chip_spacing*2+pad_spacing*i, pad_thickness+pad_size+pad_chip_spacing*2+pad_spacing*5+pad_chip_spacing*2+pad_size, pad_thickness)
logo.elements = logo.elements.concat(south)
}
}
// draw chip outline
var chip = cvlp_rectangle(pad_thickness+pad_size+pad_chip_spacing, pad_thickness+pad_size+pad_chip_spacing, pad_chip_spacing*2+pad_spacing*5, pad_chip_spacing*2+pad_spacing*5, chip_thickness, pad_chip_spacing)
logo.elements = logo.elements.concat(chip)
// draw O letter
var x = pad_thickness+pad_size+pad_chip_spacing*2
var y = pad_thickness+pad_size+pad_chip_spacing*2
var text = cvlp_polyline([[x,y],
[x+=pad_spacing*2,y],
[x,y+=pad_spacing*2],
[x+=pad_spacing*-2,y],
[x,y+=pad_spacing*-2]],text_thickness)
logo.elements = logo.elements.concat(text)
// draw S letter
var x = pad_thickness+pad_size+pad_chip_spacing*2+pad_spacing*5
var y = pad_thickness+pad_size+pad_chip_spacing*2
var text = cvlp_polyline([[x,y],
[x+=pad_spacing*-2,y],
[x,y+=pad_spacing],
[x+=pad_spacing*2,y],
[x,y+=pad_spacing],
[x+=pad_spacing*-2,y]],text_thickness)
logo.elements = logo.elements.concat(text)
// draw H letter
var x = pad_thickness+pad_size+pad_chip_spacing*2
var y = pad_thickness+pad_size+pad_chip_spacing*2+pad_spacing*3
var text = cvlp_line(x, y, x, y+pad_spacing*2, text_thickness)
logo.elements = logo.elements.concat(text)
var text = cvlp_line(x, y+pad_spacing, x+pad_spacing*2, y+pad_spacing, text_thickness)
logo.elements = logo.elements.concat(text)
var text = cvlp_line(x+pad_spacing*2, y, x+pad_spacing*2, y+pad_spacing*2, text_thickness)
logo.elements = logo.elements.concat(text)
// draw W letter
var x = pad_thickness+pad_size+pad_chip_spacing*2+pad_spacing*3
var y = pad_thickness+pad_size+pad_chip_spacing*2+pad_spacing*3
var text = cvlp_polyline([[x,y],
[x,y+=pad_spacing*2],
[x+=pad_spacing,y+=pad_spacing*-1],
[x+=pad_spacing,y+=pad_spacing],
[x,y+=pad_spacing*-2]],text_thickness)
logo.elements = logo.elements.concat(text)
var svg = json2svg(logo)
var div = document.getElementById('svg')
div.textContent = ""
div.appendChild(svg)
}
function download() {
var select = document.getElementById("filetype")
var filetype = select.options[select.selectedIndex].value
switch (filetype) {
case 'json':
var blob = new Blob([JSON.stringify(logo, null, '\t')], {type: "application/json"})
saveAs(blob, "oshw_logo.json")
break
case 'svg':
var blob = new Blob([new XMLSerializer().serializeToString(json2svg(logo))], {type: "image/svg+xml"})
saveAs(blob, "oshw_logo.svg")
break
case 'pcb':
var blob = new Blob([json2pcb(logo)], {type: "application/x-pcb-footprint"})
saveAs(blob, "oshw_logo.fp")
break
case 'kicad':
var blob = new Blob([json2kicad(logo)], {type: "application/x-kicad-pcb"})
var blob = new Blob(['<?xml version="1.0" encoding="utf-8"?>'+new XMLSerializer().serializeToString(json2eagle(logo))], {type: "application/vnd.cadsoft.eagle.board"})