implemented change_unit
This commit is contained in:
parent
34f4e35361
commit
16fa8a746c
40
cvlp_lib.js
40
cvlp_lib.js
|
@ -91,46 +91,6 @@ function cvlp_rectangle(x, y, width, height, thickness, radius=0, round=true) {
|
||||||
return rectangle
|
return rectangle
|
||||||
}
|
}
|
||||||
|
|
||||||
// convert value from one unit to another
|
|
||||||
// units allowed: mm, in, mil
|
|
||||||
// returns converted value, on null if unknown unit
|
|
||||||
function convert_unit(value, from, to)
|
|
||||||
{
|
|
||||||
// don't convert if the unit is the same (avoid calculation imprecisions)
|
|
||||||
if (from==to) {
|
|
||||||
return value;
|
|
||||||
}
|
|
||||||
// convert to µm
|
|
||||||
var mum = 0;
|
|
||||||
switch (from) {
|
|
||||||
case 'mm':
|
|
||||||
mum = value*1000;
|
|
||||||
break;
|
|
||||||
case 'in':
|
|
||||||
mum = value*1000*25.40;
|
|
||||||
break;
|
|
||||||
case 'mil':
|
|
||||||
mum = value*25.40;
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
switch (to) {
|
|
||||||
case 'mm':
|
|
||||||
mum = mum/1000;
|
|
||||||
break;
|
|
||||||
case 'in':
|
|
||||||
mum = mum/1000/25.40;
|
|
||||||
break;
|
|
||||||
case 'mil':
|
|
||||||
mum = mum/25.40;
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
return fixed(mum);
|
|
||||||
}
|
|
||||||
|
|
||||||
// convert JSON to SVG
|
// convert JSON to SVG
|
||||||
function json2svg(json) {
|
function json2svg(json) {
|
||||||
// create svg
|
// create svg
|
||||||
|
|
|
@ -21,12 +21,12 @@
|
||||||
// draw logo
|
// draw logo
|
||||||
function draw() {
|
function draw() {
|
||||||
// get values
|
// get values
|
||||||
var pad_size = parseInt(pad_size_input.value,10)
|
var pad_size = parseFloat(pad_size_input.value)
|
||||||
var pad_thickness = parseInt(pad_thickness_input.value,10)
|
var pad_thickness = parseFloat(pad_thickness_input.value)
|
||||||
var pad_spacing = parseInt(pad_spacing_input.value,10)
|
var pad_spacing = parseFloat(pad_spacing_input.value)
|
||||||
var pad_chip_spacing = parseInt(pad_chip_spacing_input.value,10)
|
var pad_chip_spacing = parseFloat(pad_chip_spacing_input.value)
|
||||||
var chip_thickness = parseInt(chip_thickness_input.value,10)
|
var chip_thickness = parseFloat(chip_thickness_input.value)
|
||||||
var text_thickness = parseInt(text_thickness_input.value,10)
|
var text_thickness = parseFloat(text_thickness_input.value)
|
||||||
|
|
||||||
// set values in logo
|
// set values in logo
|
||||||
var size = pad_thickness+pad_size+pad_chip_spacing*2+pad_spacing*5+pad_chip_spacing*2+pad_size+pad_thickness
|
var size = pad_thickness+pad_size+pad_chip_spacing*2+pad_spacing*5+pad_chip_spacing*2+pad_size+pad_thickness
|
||||||
|
@ -146,6 +146,65 @@
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// get values
|
||||||
|
var pad_size = parseFloat(pad_size_input.value)
|
||||||
|
var pad_thickness = parseFloat(pad_thickness_input.value)
|
||||||
|
var pad_spacing = parseFloat(pad_spacing_input.value)
|
||||||
|
var pad_chip_spacing = parseFloat(pad_chip_spacing_input.value)
|
||||||
|
var chip_thickness = parseFloat(chip_thickness_input.value)
|
||||||
|
var text_thickness = parseFloat(text_thickness_input.value)
|
||||||
|
|
||||||
|
// set converted values
|
||||||
|
pad_size_input.value = convert_unit(pad_size, logo.unit, unit)
|
||||||
|
pad_thickness_input.value = convert_unit(pad_thickness, logo.unit, unit)
|
||||||
|
pad_spacing_input.value = convert_unit(pad_spacing, logo.unit, unit)
|
||||||
|
pad_chip_spacing_input.value = convert_unit(pad_chip_spacing, logo.unit, unit)
|
||||||
|
chip_thickness_input.value = convert_unit(chip_thickness, logo.unit, unit)
|
||||||
|
text_thickness_input.value = convert_unit(text_thickness, logo.unit, unit)
|
||||||
|
|
||||||
|
// save unit and redraw
|
||||||
|
logo.unit = unit
|
||||||
|
draw()
|
||||||
|
}
|
||||||
|
|
||||||
|
// convert value from one unit to another
|
||||||
|
// units allowed: mm, in, mil
|
||||||
|
// returns converted value, on null if unknown unit
|
||||||
|
function convert_unit(value, from, to)
|
||||||
|
{
|
||||||
|
// don't convert if the unit is the same (avoid calculation imprecisions)
|
||||||
|
if (from==to) {
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
// convert to µm
|
||||||
|
var mum = 0;
|
||||||
|
switch (from) {
|
||||||
|
case 'mm':
|
||||||
|
mum = value*1000;
|
||||||
|
break;
|
||||||
|
case 'in':
|
||||||
|
mum = value*1000*25.40;
|
||||||
|
break;
|
||||||
|
case 'mil':
|
||||||
|
mum = value*25.40;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
switch (to) {
|
||||||
|
case 'mm':
|
||||||
|
mum = mum/1000;
|
||||||
|
break;
|
||||||
|
case 'in':
|
||||||
|
mum = mum/1000/25.40;
|
||||||
|
break;
|
||||||
|
case 'mil':
|
||||||
|
mum = mum/25.40;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
return mum;
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
<div id="svg"></div>
|
<div id="svg"></div>
|
||||||
|
|
Loading…
Reference in New Issue