Sorting Horizontal and Vertical Lines

Sorting Horizontal and Vertical Lines
Loading the math board and drawing, please wait…
2019-03-08 02:08
This example demonstrates the classification and sorting of horizontal and vertical lines. It involves core math concepts like linear equations, coordinate geometry, and the coordinate system. Construction highlights include using GeoGebra commands such as Sequence, Flatten, Shuffle, LaTeX, Zip, Element, and Text, along with objects like tableCol1, tableCol2 for tabular display. Suitable for high school mathematics teaching, helping students understand line classification and coordinate system applications.

GeoGebra Commands & Parameters

  1. Sequence(Polygon[{tableAnchor + (col1Width + col2Width + col3Width, 0 - (rowHeight * i)), tableAnchor + (col1Width + col2Width + col3Width + col4Width, 0 - (rowHeight * i)), tableAnchor + (col1Width + col2Width + col3Width + col4Width, 0 - (rowHeight * i) - rowHeight), tableAnchor + (col1Width + col2Width + col3Width, ((-rowHeight) * i) - rowHeight)}], i, 0, lastRow - 1) → tableCol4
  2. Sequence(Polygon[{tableAnchor + (col1Width + col2Width, 0 - (rowHeight * i)), tableAnchor + (col1Width + col2Width + col3Width, 0 - (rowHeight * i)), tableAnchor + (col1Width + col2Width + col3Width, 0 - (rowHeight * i) - rowHeight), tableAnchor + (col1Width + col2Width, ((-rowHeight) * i) - rowHeight)}], i, 0, lastRow - 1) → tableCol3
  3. Sequence(Polygon[{tableAnchor + (col1Width, 0 - (rowHeight * i)), tableAnchor + (col1Width + col2Width, 0 - (rowHeight * i)), tableAnchor + (col1Width + col2Width, 0 - (rowHeight * i) - rowHeight), tableAnchor + (col1Width, ((-rowHeight) * i) - rowHeight)}], i, 0, lastRow - 1) → tableCol2
  4. Flatten(Sequence[Sequence[(i, j), i, -8, -8 + (3 * (tileWidth + 1)), tileWidth + 1], j, -2.5, -2.5 - (2 * (tileHeight + 1)), (-tileHeight) - 1]) → fixedFrameAnchors
  5. Shuffle(fixedFrameAnchors) → shuffledFrameAnchors
  6. LaTeX(UnicodeToLetter[10003]) → cmark
  7. LaTeX(UnicodeToLetter[10007]) → xmark
  8. Sequence(Polygon[{tableAnchor + (0, 0 - (rowHeight * i)), tableAnchor + (col1Width, 0 - (rowHeight * i)), tableAnchor + (col1Width, 0 - (rowHeight * i) - rowHeight), tableAnchor + (0, ((-rowHeight) * i) - rowHeight)}], i, 0, lastRow - 1) → tableCol1
  9. LaTeX((((("\text{" * QUESTION) * "\\") * INSTRUCTIONS) * "}")) → TEXT
  10. Zip(Polygon[A, A + (tileWidth, 0), A + (tileWidth, (-tileHeight)), A + (0, (-tileHeight))], A, shuffledFrameAnchors) → frames
  11. Element(frames, 1) → frame1
  12. Element(frames, 2) → frame2
  13. Element(frames, 3) → frame3
  14. Element(frames, 4) → frame4
  15. Element(frames, 5) → frame5
  16. Element(frames, 6) → frame6
  17. Element(frames, 7) → frame7
  18. Element(frames, 8) → frame8
  19. Element(frames, 9) → frame9
  20. Element(cells, 1) → cell1
  21. Element(frames, activeTile) → highlightedTile
  22. Element(cells, 2) → cell2
  23. Element(cells, 3) → cell3
  24. Element(cells, 4) → cell4
  25. Element(cells, 5) → cell5
  26. Element(cells, 7) → cell7
  27. Element(cells, 8) → cell8
  28. Element(cells, 9) → cell9
  29. Element(cells, activeCell) → highlightedCell
  30. Element(tableCol1, 1) → col1HeaderCell
  31. Element(tableCol2, 1) → col2HeaderCell
  32. Element(tableCol3, 1) → col3HeaderCell
  33. Element(tableCol4, 1) → col4HeaderCell
  34. Element(cells, 6) → cell6
  35. Zip(A ≟ B ∨ A ≟ C ∨ A ≟ D ∨ A ≟ E, A, {4, 4, 4, 4, 8, 8, 8, 8, 12, 12, 12, 12}, itemsInCells, B, {1, 1, 1, 1, 5, 5, 5, 5, 9, 9, 9, 9}, C, {2, 2, 2, 2, 6, 6, 6, 6, 10, 10, 10, 10}, D, {3, 3, 3, 3, 7, 7, 7, 7, 11, 11, 11, 11}, E) → cellsCorrect
  36. Zip(Text[If[A, cmark, ""], Vertex[B, 2] + symbolOffset], A, cellsCorrect, B, cells) → cmarkList
  37. Zip(Text[If[¬A, xmark, ""], Vertex[B, 2] + symbolOffset], A, cellsCorrect, B, cells) → xmarkList
  38. Text("", tableAnchor + (0.5, ((-rowHeight)) / 2)) → col1Header
  39. Text("", tableAnchor + (0, (-rowHeight) - rowHeight / 3), true, true) → rowHeader1
  40. Text("", tableAnchor + (0, ((-rowHeight) * 2) - rowHeight / 3), true, true) → rowHeader2
  41. Text("", tableAnchor + (0, ((-rowHeight) * 3) - rowHeight / 3), true, true) → rowHeader3
  42. Element(cells, 10) → cell10
  43. Element(cells, 11) → cell11
  44. Element(cells, 12) → cell12
  45. Element(frames, 10) → frame10
  46. Element(frames, 11) → frame11
  47. Element(frames, 12) → frame12
  48. Text("Horizontal", tableAnchor + (0.5 + col1Width, ((-rowHeight)) / 2)) → col2Header
  49. Text("Vertical", tableAnchor + (0.5 + col1Width + col2Width, ((-rowHeight)) / 2)) → col3Header
  50. Text("Neither", tableAnchor + (0.5 + col1Width + col2Width + col3Width, ((-rowHeight)) / 2)) → col4Header
  51. LaTeX("\text{You correctly sorted all the lines.}") → feedback