NAME
Lutherie::FretCalc - Calculate stringed instrument fret locations
SYNOPSIS
use Lutherie::FretCalc;
my $fretcalc = Lutherie::FretCalc->new($scale_length);
$fretcalc->in_units('in');
$fretcalc->out_units('in');
my $fret = $fretcalc->fret($fret_num);
my @chart = $fretcalc->fretcalc($num_frets);
DESCRIPTION
Lutherie::FretCalc
provides two methods for calculating fret spacing locations for stringed musical instruments. fret()
will find the distance from the nut for a given fret number. fretcalc()
will generate an array containing the fret locations for the given number of frets.
OVERVIEW
- TODO
CONSTRUCTOR
- new ( [SCALE_LENGTH[, NUM_FRETS]] );
-
This is the constructor for a new Lutherie::FretCalc object.
SCALE_LENGTH
is the numeric value for the scale length to be used for the calculation. The default value for scale length is 25.NUM_FRETS
is the number of frets to be calculated. The default value is 24. The unit can be set with thein_units()
andout_units()
methods. The default is 'in' (inches).
METHODS
- scale ( [ SCALE_LENGTH ] )
-
If
SCALE_LENGTH
is passed, this method will set the scale length. The default value is 25. The scale length is returned. - num_frets ( [ NUM_FRETS ] )
-
If
NUM_FRETS
is passed, this method will set the number of frets. The default value is 24. The number of frets is returned. - fret_num ( [ FRET_NUM ] )
-
If
FRET_NUM
is passed, this method will set the fret number. The default value is 12. The fret number is returned. - in_units ( [ IN_UNITS ] )
-
If
IN_UNITS
is passed, this method will set the in units. The default is 'in' (inches). The in unit is returned. 'in' - Inches, 'mm' - Millimeters - out_units ( [ OUT_UNITS ] )
-
If
OUT_UNITS
is passed, this method will set the out units. The default is 'in' (inches). The out unit is returned. 'in' - Inches, 'mm' - Millimeters - calc_method ( [ CALC_METHOD ] )
-
If
CALC_METHOD
is passed, this method will set the calc method. The default is 't' (tempered). The calc method is returned. 't': tempered - power of $i/$tet (default), 'ec': classic - 17.817, 'es': Sloane - 17.835, 'ep': Primative - 18 - tet ( [ TET ] )
-
If
TET
is passed, this method will set the tones per octave. The default is 12. The number of tones per ocatave is returned. This value is only valid when using calc_method = 't'. - precision ( [ PRECISION ] )
-
If
PRECISION
is passed, this method will set the precision of the displayed calculations. The default is 4 for 'in' and 1 for 'mm'. The precision is returned. 0: "%8.0f" 1: "%8.1f" 2: "%8.2f" 3: "%8.3f" 4: "%8.4f" 5: "%8.5f" 6: "%8.6f" - half_fret ( [ FRET_NUM ] )
-
If
FRET_NUM
is passed, this method will calculate the half fret for this fret number. Valid values are 1, 6, 8 and 13. Only used withdulc_calc()
. A comma separated list of half frets is returned. - fret ( [ FRET_NUM ] )
-
Calculate the distance from the nut to the fret number. A scalar containing the fret location for
FRET_NUM
is returned. - fretcalc ( [ NUM_FRETS ] )
-
Calculate fret locations for given scale length, number of frets, calc type and tet. An ordered array containing fret locations from 1 to
NUM_FRETS
is returned. - dulc_calc ( )
-
Calculate fret locations for mountain dulcimer. Number of frets is set at 14. Half frets may be added by using
half_fret
function. Valid half frets are 1+, 6+, 8+ and 13+.num_frets
will be ignored when usingdulc_calc
. A hash containing fret locations from 1 to 14 is returned.
AUTHOR
Douglas Sparling, doug@dougsparling.com
COPYRIGHT
Copyright (c) 2001-2002 Douglas Sparling. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.