summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormatthewsotoudeh <matthewsot@outlook.com>2014-09-16 22:09:15 -0700
committermatthewsotoudeh <matthewsot@outlook.com>2014-09-16 22:09:15 -0700
commit49503c4c9da4e3514b59c6fbb06d4fd5144cc9c1 (patch)
treeee4d133b02a2a50acc6c04faa6f1e80437e7ed49
parent109e44464c8550d86aa81604f9d5f862fd8676e7 (diff)
quick & dirty code to get & return half sets
I'll make it prettier tomorrow
-rw-r--r--content/scripts/field.js93
-rw-r--r--index.html9
2 files changed, 92 insertions, 10 deletions
diff --git a/content/scripts/field.js b/content/scripts/field.js
index f9dbfd2..bb1cb2f 100644
--- a/content/scripts/field.js
+++ b/content/scripts/field.js
@@ -1,3 +1,13 @@
+//Y reference points
+//going off of http://ostma.org/images/pdf-files/layout-high-school-football.pdf
+//steps/hash = ((53+(4/12))/3)*(8/5) = 256/9 or 28.44444...
+var FSL = 0;
+var FH = 256/9;
+var BH = (256/9)*2;
+var BSL = (256/9)*3;
+
+
+
//x in the form
//side (side): (steps) (in/out) from (yardline)
@@ -38,21 +48,18 @@ function setFromXY(x, y) {
var referenceLine = y.split(" ")[2].trim();
var referenceY = 0;
- //going off of http://ostma.org/images/pdf-files/layout-high-school-football.pdf
- //steps/hash = ((53+(4/12))/3)*(8/5) = 256/9 or 28.44444...
switch(referenceLine) {
case "FSL":
- referenceY = 0;
+ referenceY = FSL;
break;
case "FH":
- referenceY = (256/9);
+ referenceY = FH;
break;
- //I don't actually know anything past the FH
- case"BH":
- referenceY = (256/9)*2;
+ case "BH":
+ referenceY = BH;
break;
case "BSL":
- referenceY = (256/9)*3;
+ referenceY = BSL;
break;
}
@@ -68,4 +75,72 @@ function setFromXY(x, y) {
this.x = actualX;
this.y = actualY;
-}; \ No newline at end of file
+};
+
+//set should be an object with x and y properties
+function prettifySet(set) {
+ var x = set.x;
+ var y = set.y;
+
+ var referenceY = "FSL";
+ if(set.y >= (FH / 2) && set.y <= ((FH + BH) / 2)) {
+ referenceY = "FH";
+ y = set.y - FH;
+ }
+ else if (set.y >= ((FH + BH) / 2) && set.y <= ((BH + BSL) / 2)) {
+ referenceY = "BH";
+ y = set.y - BH;
+ }
+ else if(set.y >= ((BH + BSL) / 2)) {
+ referenceY = "BSL";
+ y = set.y - BSL;
+ }
+ var prettyY = Math.abs(y) + " steps " + (y < 0 ? "in front" : "behind") + " of the " + referenceY;
+
+ var referenceX = 0;
+ var distanceFromX = 0;
+ //get the X coord=
+ for(i = -80; i <= 80; (i += 8)) {
+ distanceFromX = Math.abs(Math.abs(set.x) - Math.abs(i));
+ if(distanceFromX <= 4) {
+ referenceX = i;
+ break;
+ }
+ }
+
+ var side = (i < 0) ? 1 : 2;
+ var direction = "";
+
+ if (x == referenceX) {
+ direction = "on";
+ }
+ else if (side == 1) {
+ if(x < referenceX) {
+ direction = "outside";
+ }
+ else if (x > referenceX) {
+ direction = "inside";
+ }
+ }
+ else if (side == 2) {
+ if(x < referenceX) {
+ direction = "inside";
+ }
+ else if (x > referenceX) {
+ direction = "outside";
+ }
+ }
+
+ var yardLine = (50 - (Math.abs(referenceX) * (5/8)));
+
+ var prettyX = "Side " + side + ": " + distanceFromX + " steps " + direction + " the " + yardLine;
+
+ return { "prettyX": prettyX, "prettyY": prettyY };
+}
+
+setFromXY.prototype.findHalfSet = function(otherSet) {
+ var halfX = (otherSet.x + this.x) / 2;
+ var halfY = (otherSet.y + this.y) / 2;
+
+ return { x: halfX, y: halfY };
+} \ No newline at end of file
diff --git a/index.html b/index.html
index 2d07787..d5d17c4 100644
--- a/index.html
+++ b/index.html
@@ -5,7 +5,9 @@
<script type="text/javascript" src="content/scripts/field.js"></script>
</head>
<body>
+ <!-- ex. side 1: 0 in from 45 -->
<input type="text" placeholder="X steps" id="xsteps" />
+ <!-- ex. 0 behind FSL -->
<input type="text" placeholder="Y steps" id="ysteps" />
<br/><br/><br/>
@@ -20,7 +22,12 @@
calcBtn.onclick = function () {
var firstSet = new setFromXY(document.getElementById("xsteps").value, document.getElementById("ysteps").value);
- //var secondSet = setFromXY(document.getElementById("xsteps2").value, document.getElementById("ysteps2").value);
+ var secondSet = new setFromXY(document.getElementById("xsteps2").value, document.getElementById("ysteps2").value);
+
+ var halfSet = firstSet.findHalfSet(secondSet);
+ var prettyHalf = prettifySet(halfSet);
+ alert(prettyHalf.prettyX);
+ alert(prettyHalf.prettyY);
};
</script>
</body>
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback