improve: more flexible layer generation

This commit is contained in:
King Kévin 2015-09-05 18:42:57 +02:00
parent ce39d03833
commit 6e729aadf2
1 changed files with 8 additions and 11 deletions

View File

@ -144,21 +144,20 @@ function json2svg(json) {
var svg_title = document.createElementNS(svgNS,'title');
svg_title.textContent = json.name;
svg.appendChild(svg_title);
// add copper and silkscreen layers
layers_desc = [ { name: 'copper', stroke: 'black', fill: 'black', display: 'inline'},
{ name: 'drill', stroke: 'none', fill: 'white', display: 'inline'},
{ name: 'silkscreen', stroke: 'gray', fill: 'none', display: 'inline'}
// add layers
layers_desc = [ { name: 'copper', stroke: 'black', fill: 'black'},
{ name: 'drill', stroke: 'none', fill: 'white'},
{ name: 'silkscreen', stroke: 'gray', fill: 'none', 'stroke-linecap': 'round'}
]
layers = []
for (var layer_i in layers_desc) {
for (layer_i in layers_desc) {
var layer_desc = layers_desc[layer_i]
var layer = document.createElementNS(svgNS,'g')
layer.setAttribute('name',layer_desc.name)
layer.setAttribute('inkscape:groupmode','layer')
layer.setAttribute('inkscape:label',layer_desc.name)
layer.setAttribute('display',layer_desc.display)
layer.style.setProperty('stroke',layer_desc.stroke)
layer.style.setProperty('fill',layer_desc.fill)
for (key in layer_desc) {
layer.setAttribute(key,layer_desc[key])
}
svg.appendChild(layer)
layers[layer_desc.name] = layer
}
@ -172,7 +171,6 @@ function json2svg(json) {
line.setAttribute('x2',element.x2)
line.setAttribute('y2',element.y2)
line.style.setProperty('stroke-width',element.thickness)
line.style.setProperty('stroke-linecap','round')
layers['silkscreen'].appendChild(line)
break
case 'arc':
@ -193,7 +191,6 @@ function json2svg(json) {
arc.setAttribute('d','M '+x1+' '+y1+' A '+element.radius+' '+element.radius+' 0 '+((element.angle)%360>180 ? '1' : '0')+' 1 '+x2+' '+y2+' ')
}
arc.style.setProperty('stroke-width',element.thickness)
arc.style.setProperty('stroke-linecap','round')
layers['silkscreen'].appendChild(arc)
break
case 'pad':