// $Id: n-ICFRA.tgt 2756 2020-06-02 16:35:52Z dmc $ - target definition file for ICFRA iron sight targetfaces // $Author: dmc $ $Revision: 2756 $ $Date: 2020-06-02 13:35:52 -0300 (Tue, 02 Jun 2020) $ var METRESTOFEET = 3.280839; var YARDSTOMETRES = 3 / METRESTOFEET; var INCHESTOMM = 25.4; var MM_PER_MOA_PER_1Y = 1.047 * 25.4 / 100; // multiply this by the distance in yards var MM_PER_MOA_PER_1M = 1.047 * 25.4 / 100 * 39.37 / 36; // multiply this by the distance in metres var v2options = { shot_format: '{1}.{2}V', // TR: "49.6V" }; var ICFRA_LR = { distance: 1000 * YARDSTOMETRES, // needs to be overridden when used "distances": [ { "d": 700, "name": "700m", "unit": "m" }, { "d": 800, "name": "800m", "unit": "m" }, { "d": 900, "name": "900m", "unit": "m" }, { "d": 800 * YARDSTOMETRES, "name": "800y", "unit": "y" }, { "d": 900 * YARDSTOMETRES, "name": "900y", "unit": "y" }, { "d": 1000 * YARDSTOMETRES, "name": "1000y", "unit": "y", "p": "true" }, ], centrecoords: { x: 0, y: 0 }, targetboard: { width: 2400, height: 1800, colour: "white", bordercolour: "black", borderwidth: 10 }, options: (t = JSON.parse(JSON.stringify(v2options)), t.ghost_max=2200/METRESTOFEET, t), scoringzones: [ // draw this in reverse order // search for a hit in forward order // default values: {x:0, y:0} { name: "V", score: [5, 1], colour: "transparent", bordercolour: "white", borderwidth: 2.3, type: { name: "ring", dia: 255 } }, { name: "5", score: 5, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 510 } }, { name: "4", score: 4, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 815 } }, { name: "3", score: 3, colour: "black", /* no border - aiming mark */ type: { name: "ring", dia: 1120 } }, { name: "2", score: 2, colour: "transparent", bordercolour: "black", borderwidth: 1, type: { name: "ring", dia: 1830 } }, { name: "1", score: 1, colour: "transparent", bordercolour: "black", borderwidth: 1, type: { name: "rect", width: 2400, height: 1800 } }, ], scoringzones_f: [ // draw this in reverse order // search for a hit in forward order // default values: {x:0, y:0} { name:"V", score:[5,1], colour:"transparent", bordercolour:"white", borderwidth:2.3, type: {name:"ring", dia:128 } }, { name:"5", score:5, colour:"transparent", bordercolour:"white", borderwidth:2.3, type: {name:"ring", dia: 254 } }, { name:"4", score:4, colour:"transparent", bordercolour:"white", type: {name:"ring", dia: 508 } }, { name:"3", score:3, colour:"transparent", bordercolour:"white", type: {name:"ring", dia: 815 } }, { name:"2", score:2, colour:"black", /* no border - aiming mark */ type: {name:"ring", dia: 1118 } }, { name:"1", score:1, colour:"transparent", bordercolour:"black", borderwidth:1, type: {name:"rect", width: 2400, height:1800 } }, ], }; var ICFRA_600m = { distance: 600, centrecoords: { x: 0, y: 0 }, targetboard: { width: 1800, height: 1800, colour: "white", bordercolour: "black", borderwidth: 10 }, options: v2options, scoringzones: [ // draw this in reverse order // search for a hit in forward order // default values: {x:0, y:0} { name: "V", score: [5, 1], colour: "transparent", bordercolour: "white", borderwidth: 2.3, type: { name: "ring", dia: 160 } }, { name: "5", score: 5, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 320 } }, { name: "4", score: 4, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 660 } }, { name: "3", score: 3, colour: "black", /* no border - aiming mark */ type: { name: "ring", dia: 1000 } }, { name: "2", score: 2, colour: "transparent", bordercolour: "black", type: { name: "ring", dia: 1320 } }, { name: "1", score: 1, colour: "transparent", bordercolour: "black", borderwidth: 1, type: { name: "rect", width: 1800, height: 1800 } }, ], scoringzones_f: [ // draw this in reverse order // search for a hit in forward order // default values: {x:0, y:0} { name:"V", score:[5,1], colour:"transparent", bordercolour:"white", borderwidth:2.3, type: {name:"ring", dia:160/2 } }, { name:"5", score:5, colour:"transparent", bordercolour:"white", borderwidth:2.3, type: {name:"ring", dia:160 } }, { name:"4", score:4, colour:"transparent", bordercolour:"white", type: {name:"ring", dia:320 } }, { name:"3", score:3, colour:"transparent", bordercolour:"white", type: {name:"ring", dia:660 } }, { name:"2", score:2, colour:"black", /* no border - aiming mark */ type: {name:"ring", dia:1000 } }, { name:"1", score:1, colour:"transparent", bordercolour:"black", borderwidth:1, type: {name:"rect", width: 1800, height: 1800 } }, ], }; var ICFRA_300y = { distance: 300 * YARDSTOMETRES, centrecoords: { x: 0, y: 0 }, targetboard: { width: 1800, height: 1800, colour: "white", bordercolour: "black", borderwidth: 10 }, options: v2options, scoringzones: [ // draw this in reverse order // search for a hit in forward order // default values: {x:0, y:0} { name: "V", score: [5, 1], colour: "transparent", bordercolour: "white", borderwidth: 2.3, type: { name: "ring", dia: 65 } }, { name: "5", score: 5, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 130 } }, { name: "4", score: 4, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 260 } }, { name: "3", score: 3, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 390 } }, { name: "2", score: 2, colour: "black", /* no border - aiming mark */ type: { name: "ring", dia: 560 } }, { name: "1", score: 1, colour: "transparent", bordercolour: "black", borderwidth: 1, type: { name: "rect", width: 1200, height: 1200 } }, { name: "0", score: 0, colour: "transparent", bordercolour: "black", borderwidth: 1, type: { name: "rect", width: 1800, height: 1800 } }, ], scoringzones_f: [ // draw this in reverse order // search for a hit in forward order // default values: {x:0, y:0} { name:"V", score:[5,1], colour:"transparent", bordercolour:"white", borderwidth:2.3, type: {name:"ring", dia:65/2 } }, { name:"5", score:5, colour:"transparent", bordercolour:"white", borderwidth:2.3, type: {name:"ring", dia:65 } }, { name:"4", score:4, colour:"transparent", bordercolour:"white", type: {name:"ring", dia:130 } }, { name:"3", score:3, colour:"transparent", bordercolour:"white", type: {name:"ring", dia:260 } }, { name:"2", score:2, colour:"transparent", bordercolour:"white", type: {name:"ring", dia:390 } }, { name:"1", score:1, colour:"black", /* no border - aiming mark */ type: {name:"ring", dia:560 } }, { name:"1", score:1, colour:"transparent", bordercolour:"black", borderwidth:1, type: {name:"rect", width: 1200, height: 1200 } }, { name:"0", score:0, colour:"transparent", bordercolour:"black", borderwidth:1, type: {name:"rect", width: 1800, height: 1800 } }, ], }; var ICFRA_300m = { distance: 300, centrecoords: { x: 0, y: 0 }, targetboard: { width: 1800, height: 1800, colour: "white", bordercolour: "black", borderwidth: 10 }, options: (t = JSON.parse(JSON.stringify(v2options)), t), scoringzones: [ // draw this in reverse order // search for a hit in forward order // default values: {x:0, y:0} { name: "V", score: [5, 1], colour: "transparent", bordercolour: "white", borderwidth: 2.3, type: { name: "ring", dia: 70 } }, { name: "5", score: 5, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 140 } }, { name: "4", score: 4, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 280 } }, { name: "3", score: 3, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 420 } }, { name: "2", score: 2, colour: "black", /* no border - aiming mark */ type: { name: "ring", dia: 600 } }, { name: "1", score: 1, colour: "transparent", bordercolour: "black", borderwidth: 1, type: { name: "rect", width: 1200, height: 1200 } }, { name: "0", score: 0, colour: "transparent", bordercolour: "black", borderwidth: 1, type: { name: "rect", width: 1800, height: 1800 } }, ], scoringzones_f: [ // draw this in reverse order // search for a hit in forward order // default values: {x:0, y:0} { name:"V", score:[5,1], colour:"transparent", bordercolour:"white", borderwidth:2.3, type: {name:"ring", dia:70/2 } }, { name:"5", score:5, colour:"transparent", bordercolour:"white", borderwidth:2.3, type: {name:"ring", dia:70 } }, { name:"4", score:4, colour:"transparent", bordercolour:"white", type: {name:"ring", dia:140 } }, { name:"3", score:3, colour:"transparent", bordercolour:"white", type: {name:"ring", dia:280 } }, { name:"2", score:2, colour:"transparent", bordercolour:"white", type: {name:"ring", dia:420 } }, { name:"1", score:1, colour:"black", /* no border - aiming mark */ type: {name:"ring", dia:600 } }, { name:"0", score:0, colour:"transparent", bordercolour:"black", borderwidth:1, type: {name:"rect", width: 1200, height: 1200 } }, { name:"0", score:0, colour:"transparent", bordercolour:"black", borderwidth:1, type: {name:"rect", width: 1800, height: 1800 } }, ], }; module.exports = { // Data sources: // http://www.icfra.co.uk/TR_TECHNICAL_RULES_2008_A4_edition.pdf --- used until May-2014 // http://www.icfra.co.uk/TR_Technical_rules_2012_Final..pdf --- updated to comply with 2012 rules, May-2014. // http://www.icfra.co.uk/FCRules_2009.pdf --- note, for now, I am not defining any F-Class targets; the SuperV series might // alleviate any need for that - DC 2014-May-14 // D3 The target for 700 yds will be that for 600 m. // // Changes May-2014: // - start adding "SuperV" for some target faces // - used prescribed (2012 rules) dimensions for 400y/m faces (vs. previous "300 dims" * 4/3) // - update 300y/m to be placed on 6' physical frames, with a 4'x4' scoring zone // - use 6'x6' frames for 400y/m 'ICFRA-300y': ICFRA_300y, 'ICFRA-300y-4x4': (t = JSON.parse(JSON.stringify(ICFRA_300y)), t.targetboard.width = t.targetboard.height = 1200, t), 'ICFRA-400y': { // update 9 May 2014 for newly defined ring dims. http://www.icfra.co.uk/TR_Technical_rules_2012_Final..pdf distance: 400 * YARDSTOMETRES, centrecoords: { x: 0, y: 0 }, targetboard: { width: 1800, height: 1800, colour: "white", bordercolour: "black", borderwidth: 10 }, options: v2options, scoringzones: [ // draw this in reverse order // search for a hit in forward order // default values: {x:0, y:0} { name: "V", score: [5, 1], colour: "transparent", bordercolour: "white", borderwidth: 2.3, type: { name: "ring", dia: 85 } }, { name: "5", score: 5, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 175 } }, { name: "4", score: 4, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 350 } }, { name: "3", score: 3, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 520 } }, { name: "2", score: 2, colour: "black", /* no border - aiming mark */ type: { name: "ring", dia: 745 } }, { name: "1", score: 1, colour: "transparent", bordercolour: "black", borderwidth: 1, type: { name: "rect", width: 1800, height: 1800 } }, ], }, 'ICFRA-500y': { distance: 500 * YARDSTOMETRES, centrecoords: { x: 0, y: 0 }, targetboard: { width: 1800, height: 1800, colour: "white", bordercolour: "black", borderwidth: 10 }, options: v2options, scoringzones: [ // draw this in reverse order // search for a hit in forward order // default values: {x:0, y:0} { name: "V", score: [5, 1], colour: "transparent", bordercolour: "white", borderwidth: 2.3, type: { name: "ring", dia: 130 } }, { name: "5", score: 5, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 260 } }, { name: "4", score: 4, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 600 } }, { name: "3", score: 3, colour: "black", // no border - aiming mark type: { name: "ring", dia: 915 } }, { name: "2", score: 2, colour: "transparent", bordercolour: "black", type: { name: "ring", dia: 1320 } }, { name: "1", score: 1, colour: "transparent", bordercolour: "black", borderwidth: 1, type: { name: "rect", width: 1800, height: 1800 } }, ], scoringzones_f: [ // draw this in reverse order // search for a hit in forward order // default values: {x:0, y:0} { name:"V", score:[5,1], colour:"transparent", bordercolour:"white", borderwidth:2.3, type: {name:"ring", dia:130/2 } }, { name:"5", score:5, colour:"transparent", bordercolour:"white", borderwidth:2.3, type: {name:"ring", dia:130 } }, { name:"4", score:4, colour:"transparent", bordercolour:"white", type: {name:"ring", dia:260 } }, { name:"3", score:3, colour:"transparent", bordercolour:"white", type: {name:"ring", dia:600 } }, { name:"2", score:2, colour:"black", // no border - aiming mark type: {name:"ring", dia:915 } }, { name:"1", score:1, colour:"transparent", bordercolour:"black", borderwidth:1, type: {name:"rect", width: 1800, height: 1800 } }, ], }, 'ICFRA-600y': { distance: 600 * YARDSTOMETRES, centrecoords: { x: 0, y: 0 }, targetboard: { width: 1800, height: 1800, colour: "white", bordercolour: "black", borderwidth: 10 }, options: v2options, scoringzones: [ // draw this in reverse order // search for a hit in forward order // default values: {x:0, y:0} { name: "V", score: [5, 1], colour: "transparent", bordercolour: "white", borderwidth: 2.3, type: { name: "ring", dia: 145 } }, { name: "5", score: 5, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 290 } }, { name: "4", score: 4, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 600 } }, { name: "3", score: 3, colour: "black", /* no border - aiming mark */ type: { name: "ring", dia: 915 } }, { name: "2", score: 2, colour: "transparent", bordercolour: "black", type: { name: "ring", dia: 1320 } }, { name: "1", score: 1, colour: "transparent", bordercolour: "black", borderwidth: 1, type: { name: "rect", width: 1800, height: 1800 } }, ], scoringzones_f: [ // draw this in reverse order // search for a hit in forward order // default values: {x:0, y:0} { name:"V", score:[5,1], colour:"transparent", bordercolour:"white", borderwidth:2.3, type: {name:"ring", dia:145/2 } }, { name:"5", score:5, colour:"transparent", bordercolour:"white", borderwidth:2.3, type: {name:"ring", dia:145 } }, { name:"4", score:4, colour:"transparent", bordercolour:"white", type: {name:"ring", dia:290 } }, { name:"3", score:3, colour:"transparent", bordercolour:"white", type: {name:"ring", dia:600 } }, { name:"2", score:2, colour:"black", /* no border - aiming mark */ type: {name:"ring", dia:915 } }, { name:"1", score:1, colour:"transparent", bordercolour:"black", borderwidth:1, type: {name:"rect", width: 1800, height: 1800 } }, ], }, // ICFRA says "use 600m" target... OK, done! 'ICFRA-700y': (t = JSON.parse(JSON.stringify(ICFRA_600m)), t.options.ghost_max = 2300 / METRESTOFEET, t.distance = 700 * YARDSTOMETRES, t), 'ICFRA-LR': ICFRA_LR, 'ICFRA-900y-6x6': (t = JSON.parse(JSON.stringify(ICFRA_LR)), t.distance = 900 * YARDSTOMETRES, t.targetboard.width = t.targetboard.height = 1800, t), 'ICFRA-300m': ICFRA_300m, 'ICFRA-300m-4x4': (t = JSON.parse(JSON.stringify(ICFRA_300m)), t.targetboard.width = t.targetboard.height = 1200, t), 'ICFRA-400m': { // ring sizes corrected 14-May-2014, in accordance with TR_Technical_rules_2012_Final..pdf distance: 400, centrecoords: { x: 0, y: 0 }, targetboard: { width: 1800, height: 1800, colour: "white", bordercolour: "black", borderwidth: 10 }, options: v2options, scoringzones: [ // draw this in reverse order // search for a hit in forward order // default values: {x:0, y:0} { name: "V", score: [5, 1], colour: "transparent", bordercolour: "white", borderwidth: 2.3, type: { name: "ring", dia: 95 } }, { name: "5", score: 5, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 185 } }, { name: "4", score: 4, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 375 } }, { name: "3", score: 3, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 560 } }, { name: "2", score: 2, colour: "black", /* no border - aiming mark */ type: { name: "ring", dia: 800 } }, { name: "1", score: 1, colour: "transparent", bordercolour: "black", borderwidth: 1, type: { name: "rect", width: 1800, height: 1800 } }, ], }, 'ICFRA-500m': { distance: 500, centrecoords: { x: 0, y: 0 }, targetboard: { width: 1800, height: 1800, colour: "white", bordercolour: "black", borderwidth: 10 }, options: v2options, scoringzones: [ // draw this in reverse order // search for a hit in forward order // default values: {x:0, y:0} { name: "V", score: [5, 1], colour: "transparent", bordercolour: "white", borderwidth: 2.3, type: { name: "ring", dia: 145 } }, { name: "5", score: 5, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 290 } }, { name: "4", score: 4, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 660 } }, { name: "3", score: 3, colour: "black", /* no border - aiming mark */ type: { name: "ring", dia: 1000 } }, { name: "2", score: 2, colour: "transparent", bordercolour: "black", type: { name: "ring", dia: 1320 } }, { name: "1", score: 1, colour: "transparent", bordercolour: "black", borderwidth: 1, type: { name: "rect", width: 1800, height: 1800 } }, ], scoringzones_f: [ // draw this in reverse order // search for a hit in forward order // default values: {x:0, y:0} { name:"V", score:[5,1], colour:"transparent", bordercolour:"white", borderwidth:2.3, type: {name:"ring", dia:145/2 } }, { name:"5", score:5, colour:"transparent", bordercolour:"white", borderwidth:2.3, type: {name:"ring", dia:145 } }, { name:"4", score:4, colour:"transparent", bordercolour:"white", type: {name:"ring", dia:290 } }, { name:"3", score:3, colour:"transparent", bordercolour:"white", type: {name:"ring", dia:660 } }, { name:"2", score:2, colour:"black", /* no border - aiming mark */ type: {name:"ring", dia:1000 } }, { name:"1", score:1, colour:"transparent", bordercolour:"black", type: {name:"ring", dia:1320 } }, { name:"0", score:0, colour:"transparent", bordercolour:"black", borderwidth:1, type: {name:"rect", width: 1800, height: 1800 } }, ], }, 'ICFRA-600m': ICFRA_600m, }