// $Id: n-USA-NRA-MidRange.tgt 3069 2022-05-11 17:35:37Z dmc $ // $Author: dmc $ $Revision: 3069 $ $Date: 2022-05-11 14:35:37 -0300 (Wed, 11 May 2022) $ var YARDSTOMETRES = 3 / 3.28; var INCHESTOMM = 25.4; var METRESTOFEET = 3.28; var std_nra_options = { // options used by v2.1 code: shot_format: '{1}-{2}X', // e.g. "99-7X" speed_unit_name: 'fps', // units to report speed; default = 'fps' speed_unit_mpier: METRESTOFEET, // speeds will be round()'ed }; var mr_targetboard = { width: 72 * INCHESTOMM, height: 72 * INCHESTOMM, colour: "white", bordercolour: "black", borderwidth: 10 }; var tgtdef_MR63_universal = {// http://compete.nra.org/documents/pdf/compete/RuleBooks/HPR/hpr-book.pdf // 4.4 (b) NRA No. MR-63—Reduction of the MR-1 target for use at 300 yards // to simulate the 600-yard stage of the National Match Course. distance: 300 * YARDSTOMETRES, centrecoords: { x: 0, y: 0 }, targetboard: mr_targetboard, options: std_nra_options, // see at top scoringzones: [ // draw this in reverse order // search for a hit in forward order // default values: {x:0, y:0} { name: "X", score: [10, 1], colour: "transparent", bordercolour: "white", borderwidth: 2.3, type: { name: "ring", dia: 2.85 * INCHESTOMM } }, { name: "10", score: 10, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 5.85 * INCHESTOMM } }, { name: "9", score: 9, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 8.85 * INCHESTOMM } }, { name: "8", score: 8, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 11.85 * INCHESTOMM } }, { name: "7", score: 7, colour: "black", /* no border - aiming mark */ type: { name: "ring", dia: 17.85 * INCHESTOMM } }, { name: "6", score: 6, colour: "transparent", bordercolour: "black", borderwidth: 1, type: { name: "ring", dia: 23.85 * INCHESTOMM } }, { name: "5", score: 5, colour: "transparent", bordercolour: "black", borderwidth: 1, type: { name: "ring", dia: 29.85 * INCHESTOMM } }, { name: "0", score: 0, colour: "transparent", bordercolour: "black", borderwidth: 1, type: { name: "rect", width: 72 * INCHESTOMM, height: 72 * INCHESTOMM } }, ], scoringzones_f: [ // draw this in reverse order // search for a hit in forward order // default values: {x:0, y:0} { name: "X", score: [10, 1], colour: "transparent", bordercolour: "white", borderwidth: 2.3, type: { name: "ring", dia: 1.42 * INCHESTOMM } }, { name: "10", score: 10, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 2.85 * INCHESTOMM } }, { name: "9", score: 9, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 5.85 * INCHESTOMM } }, { name: "8", score: 8, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 8.85 * INCHESTOMM } }, { name: "7", score: 7, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 11.85 * INCHESTOMM } }, { name: "6", score: 6, colour: "black", /* no border - aiming mark */ type: { name: "ring", dia: 17.85 * INCHESTOMM } }, { name: "5", score: 5, colour: "transparent", bordercolour: "black", borderwidth: 1, type: { name: "ring", dia: 23.85 * INCHESTOMM } }, { name: "0", score: 0, colour: "transparent", bordercolour: "black", borderwidth: 1, type: { name: "rect", width: 72 * INCHESTOMM, height: 72 * INCHESTOMM } }, ], }; var tgtdef_MR65_universal = { // http://compete.nra.org/documents/pdf/compete/RuleBooks/HPR/hpr-book.pdf // 22.4.5 NRA No. MR-65FC - F-Class target Center based on the MR-65 target for // use at 500 yards. To be pasted over the MR-65 target. distance: 500 * YARDSTOMETRES, centrecoords: { x: 0, y: 0 }, centrecoords: { x: 0, y: 0 }, targetboard: mr_targetboard, options: std_nra_options, // see at top scoringzones: [ // draw this in reverse order // search for a hit in forward order // default values: {x:0, y:0} { name: "X", score: [10, 1], colour: "transparent", bordercolour: "white", borderwidth: 2.3, type: { name: "ring", dia: 5 * INCHESTOMM } }, { name: "10", score: 10, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 10 * INCHESTOMM } }, { name: "9", score: 9, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 15 * INCHESTOMM } }, { name: "8", score: 8, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 20 * INCHESTOMM } }, { name: "7", score: 7, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 25 * INCHESTOMM } }, { name: "6", score: 6, colour: "black", /* no border - aiming mark */ type: { name: "ring", dia: 30 * INCHESTOMM } }, { name: "5", score: 5, colour: "transparent", bordercolour: "black", borderwidth: 1, type: { name: "ring", dia: 36 * INCHESTOMM } }, { name: "0", score: 0, colour: "transparent", bordercolour: "black", borderwidth: 1, type: { name: "rect", width: 72 * INCHESTOMM, height: 72 * INCHESTOMM } }, ], scoringzones_f: [ // draw this in reverse order { name: "X", score: [10, 1], colour: "transparent", bordercolour: "white", borderwidth: 2.3, type: { name: "ring", dia: 2.50 * INCHESTOMM } }, { name: "10", score: 10, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 5 * INCHESTOMM } }, { name: "9", score: 9, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 10 * INCHESTOMM } }, { name: "8", score: 8, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 15 * INCHESTOMM } }, { name: "7", score: 7, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 20 * INCHESTOMM } }, { name: "6", score: 6, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 25 * INCHESTOMM } }, { name: "5", score: 5, colour: "black", /* no border - aiming mark */ type: { name: "ring", dia: 30 * INCHESTOMM } }, { name: "0", score: 0, colour: "transparent", bordercolour: "black", borderwidth: 1, type: { name: "ring", dia: 36 * INCHESTOMM } }, { name: "0", score: 0, colour: "transparent", bordercolour: "black", borderwidth: 1, type: { name: "rect", width: 72 * INCHESTOMM, height: 72 * INCHESTOMM } }, ], }; var tgtdef_MR1_universal = { // http://compete.nra.org/documents/pdf/compete/RuleBooks/HPR/hpr-book.pdf // 4.6 (a)MR-1 target - "Target, Rifle, Competition Mid-Range." Used in 600-yard matches only. distance: 600 * YARDSTOMETRES, centrecoords: { x: 0, y: 0 }, targetboard: mr_targetboard, options: std_nra_options, // see at top scoringzones: [ // draw this in reverse order // search for a hit in forward order // default values: {x:0, y:0} { name: "X", score: [10, 1], colour: "transparent", bordercolour: "white", borderwidth: 2.3, type: { name: "ring", dia: 6 * INCHESTOMM } }, { name: "10", score: 10, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 12 * INCHESTOMM } }, { name: "9", score: 9, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 18 * INCHESTOMM } }, { name: "8", score: 8, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 24 * INCHESTOMM } }, { name: "7", score: 7, colour: "black", /* no border - aiming mark */ type: { name: "ring", dia: 36 * INCHESTOMM } }, { name: "6", score: 6, colour: "transparent", bordercolour: "black", borderwidth: 1, type: { name: "ring", dia: 48 * INCHESTOMM } }, { name: "5", score: 5, colour: "transparent", bordercolour: "black", borderwidth: 1, type: { name: "ring", dia: 60 * INCHESTOMM } }, { name: "0", score: 0, colour: "transparent", bordercolour: "black", borderwidth: 1, type: { name: "rect", width: 72 * INCHESTOMM, height: 72 * INCHESTOMM } }, ], scoringzones_f: [ // draw this in reverse order { name: "X", score: [10, 1], colour: "transparent", bordercolour: "white", borderwidth: 2.3, type: { name: "ring", dia: 3 * INCHESTOMM } }, { name: "10", score: 10, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 6 * INCHESTOMM } }, { name: "9", score: 9, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 12 * INCHESTOMM } }, { name: "8", score: 8, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 18 * INCHESTOMM } }, { name: "7", score: 7, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 24 * INCHESTOMM } }, { name: "6", score: 6, colour: "black", /* no border - aiming mark */ type: { name: "ring", dia: 36 * INCHESTOMM } }, { name: "5", score: 5, colour: "transparent", bordercolour: "black", borderwidth: 1, type: { name: "ring", dia: 48 * INCHESTOMM } }, { name: "0", score: 0, colour: "transparent", bordercolour: "black", borderwidth: 1, type: { name: "ring", dia: 60 * INCHESTOMM } }, { name: "0", score: 0, colour: "transparent", bordercolour: "black", borderwidth: 1, type: { name: "rect", width: 72 * INCHESTOMM, height: 72 * INCHESTOMM } }, ], }; module.exports = { // http://www.nrahq.org/compete/nra-rule-books.asp // http://www.nrahq.org/compete/RuleBooks/HPR/hpr-book.pdf (F-Class in section 22) // NRA target dimensions from http://www.nrahq.org/compete/rules/fullbore_07.pdf // // new addresses: http://compete.nra.org/official-nra-rule-books.aspx // http://compete.nra.org/documents/pdf/compete/RuleBooks/Fullbore/fb-book.pdf // http://compete.nra.org/documents/pdf/compete/RuleBooks/HPR/hpr-book.pdf // 'US-MR65-500y': tgtdef_MR65_universal, 'US-MR65FC-600y': (t=JSON.parse(JSON.stringify(tgtdef_MR65_universal)) ,t.scoringzones = t.scoringzones_f , delete(t.scoringzones_f) ,t ), 'US-MR1-600y': tgtdef_MR1_universal, 'US-MR1FC-600y': (t=JSON.parse(JSON.stringify(tgtdef_MR1_universal)) ,t.scoringzones = t.scoringzones_f , delete(t.scoringzones_f) ,t ), 'US-MR63-300y': tgtdef_MR63_universal, 'US-MR63FC-600y': (t=JSON.parse(JSON.stringify(tgtdef_MR63_universal)) ,t.scoringzones = t.scoringzones_f , delete(t.scoringzones_f) ,t ), // reduced targets: 'US-MR31-100y': {// http://compete.nra.org/documents/pdf/compete/RuleBooks/HPR/hpr-book.pdf 4.2(c) // (c) NRA No. MR-31—Reduction of the MR-1 target to simulate the // 600-yard stage of the National Match Course at 100 yards. distance: 100 * YARDSTOMETRES, centrecoords: { x: 0, y: 0 }, targetboard: mr_targetboard, options: std_nra_options, // see at top scoringzones: [ // draw this in reverse order // search for a hit in forward order // default values: {x:0, y:0} { name: "X", score: [10, 1], colour: "transparent", bordercolour: "white", borderwidth: 2.3, type: { name: "ring", dia: 0.75 * INCHESTOMM } }, { name: "10", score: 10, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 1.75 * INCHESTOMM } }, { name: "9", score: 9, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 2.75 * INCHESTOMM } }, { name: "8", score: 8, colour: "transparent", bordercolour: "white", type: { name: "ring", dia: 3.75 * INCHESTOMM } }, { name: "7", score: 7, colour: "black", /* no border - aiming mark */ type: { name: "ring", dia: 5.75 * INCHESTOMM } }, { name: "6", score: 6, colour: "transparent", bordercolour: "black", borderwidth: 1, type: { name: "ring", dia: 7.75 * INCHESTOMM } }, { name: "5", score: 5, colour: "transparent", bordercolour: "black", borderwidth: 1, type: { name: "ring", dia: 9.75 * INCHESTOMM } }, { name: "0", score: 0, colour: "transparent", bordercolour: "black", borderwidth: 1, type: { name: "rect", width: 72 * INCHESTOMM, height: 72 * INCHESTOMM } }, ], } }