FUNCTION CutterParameters(REAL toolDiameter, REAL toolRadius, OUTPUT STRING rpm, OUTPUT STRING frate, OUTPUT STRING stepover, OUTPUT STRING stepdown) { STRING t_mat = $project.Material_Type STRING t_mach = $project.Machine_Name STRING t_process = $project.Tool_Process STRING command = "" STRING directory = "Z:\PowerMill\PowerMill Database\Tooling\Hardcode Data\" + $t_mat CD $directory STRING t_csv = $project.Machine_Name + ".csv" STRING LIST rest_of_file = {} FILE OPEN $t_csv FOR READ AS input FILE READ $rest_of_file FROM input FILE CLOSE input string type = $tool.type if $type == "ball_nosed" { $type = "ball" } elseif $type == "tip_radiused" { $type = "tip rad" } elseif $type == "end_mill" { $type = "end mill" } elseif $type == "form" OR $type == "taper_tipped" { $type = "nine9" } string diameter = string($toolDiameter) string list diaTok = TOKENS($diameter, ".") string radius = string($toolRadius) string list radTok = TOKENS($radius, ".") IF $diaTok[1] == 0 { $diameter = $diaTok[0] } IF $radTok[1] == 0 { $radius = $radTok[0] } FOREACH line IN $rest_of_file { STRING LIST toks = TOKENS($line, ",") if $type == "ball" { if $toks[0] == $type { if $toks[1] == $diameter { if $t_process == "Rough" { $rpm = $toks[3] $frate = $toks[4] $stepover = $toks[5] $stepdown = $toks[6] } elseif $t_process == "Semi" { $rpm = $toks[7] $frate = $toks[8] $stepover = $toks[9] $stepdown = $toks[10] } elseif $t_process == "Finish" { $rpm = $toks[11] $frate = $toks[12] $stepover = $toks[13] $stepdown = $toks[14] } } } } elseif $type == "tip rad" { if $toks[0] == $type { if $toks[1] == $diameter { IF $toks[2] == $radius { if $t_process == "Rough" { $rpm = $toks[3] $frate = $toks[4] $stepover = $toks[5] $stepdown = $toks[6] } elseif $t_process == "Semi" { $rpm = $toks[7] $frate = $toks[8] $stepover = $toks[9] $stepdown = $toks[10] } elseif $t_process == "Finish" { $rpm = $toks[11] $frate = $toks[12] $stepover = $toks[13] $stepdown = $toks[14] } } } } } elseif $type == "end mill" { if $toks[0] == $type { if $toks[1] == $diameter { if $t_process == "Rough" { $rpm = $toks[3] $frate = $toks[4] $stepover = $toks[5] $stepdown = $toks[6] } elseif $t_process == "Semi" { $rpm = $toks[7] $frate = $toks[8] $stepover = $toks[9] $stepdown = $toks[10] } elseif $t_process == "Finish" { $rpm = $toks[11] $frate = $toks[12] $stepover = $toks[13] $stepdown = $toks[14] } } } } elseif $type == "nine9" { if $toks[0] == $type { if $t_process == "Rough" { $rpm = $toks[3] $frate = $toks[4] $stepover = $toks[5] $stepdown = $toks[6] } elseif $t_process == "Semi" { $rpm = $toks[7] $frate = $toks[8] $stepover = $toks[9] $stepdown = $toks[10] } elseif $t_process == "Finish" { $rpm = $toks[11] $frate = $toks[12] $stepover = $toks[13] $stepdown = $toks[14] } } } } } FUNCTION CutterParameters2D(STRING type, STRING toolDiameter, STRING length, OUTPUT STRING rpm, OUTPUT STRING frate, OUTPUT STRING pitch) { STRING t_mat = $project.Material_Type STRING command = "" STRING directory = "Z:\PowerMill\PowerMill Database\Tooling\Hardcode Data\" + $t_mat CD $directory STRING t_csv = "2D Tooling.csv" STRING LIST rest_of_file = {} FILE OPEN $t_csv FOR READ AS input FILE READ $rest_of_file FROM input FILE CLOSE input FOREACH line IN $rest_of_file { STRING LIST toks = TOKENS($line, ",") IF $type == "dream" { IF $toks[0] == $type { IF $toks[1] == $toolDiameter { IF $toks[2] == $length { $rpm = $toks[3] $frate = $toks[4] $pitch = "" } } } } ELSEIF $type == "dijet" { IF $toks[0] == $type { IF $toks[1] == $toolDiameter { IF $toks[2] == $length { $rpm = $toks[3] $frate = $toks[4] $pitch = "" } } } } ELSEIF $type == "thread" { IF $toks[0] == $type { IF $toks[1] == $toolDiameter { $rpm = $toks[3] $frate = $toks[4] $pitch = $toks[2] } } } ELSEIF $type == "coolform" { IF $toks[0] == $type { IF $toks[1] == $toolDiameter { $rpm = $toks[2] $frate = $toks[3] $pitch = "" } } } } }