{"version":3,"sources":["webpack:///./src/components/mathematics/matrices/components/Components.vue","webpack:///./src/components/mathematics/matrices/components/Boxes.js","webpack:///src/components/mathematics/matrices/components/Components.vue","webpack:///./src/components/mathematics/matrices/components/Components.vue?63c6","webpack:///./src/components/mathematics/matrices/components/Components.vue?67e2","webpack:///./src/components/mathematics/matrices/matrix_utils.js","webpack:///./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","webpack:///./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","webpack:///./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","webpack:///./node_modules/@babel/runtime/helpers/esm/slicedToArray.js","webpack:///./src/components/mathematics/matrices/components/Components.vue?2926"],"names":["ref","attrs","staticClass","_v","render","staticRenderFns","debugMode","giveHints","Boxes","box1a","magicGraphProperties","boundingbox","keepaspectratio","axis","ticks","visible","grid","showCopyright","showNavigation","pan","enabled","zoom","brd1","JXG","JSXGraph","initBoard","suspendUpdate","makeResponsive","options","layer","placeTitle","matrixComponentLabel","create","anchorX","CssStyle","fontSize","Math","round","canvasWidth","fixed","matrixComponentLabelProperties","rows","cols","shuffle","clearRowLabels","_i","_rows","length","row","setAttribute","clearColumnLabels","_i2","_cols","col","matrix","createRandomFriendlyMatrix","updateComponent","m","r","c","setText","concat","String","clearComponent","_drawMatrix","drawMatrix","_drawMatrix2","_slicedToArray","drawnObjects","newProblem","removeObject","reverse","unsuspendUpdate","on","debugMe","dumpObjects","console","log","count","el","objects","box1b","_brd1$create","numRows","numCols","_drawMatrix3","_drawMatrix4","assessmentScale","ok1","cross1","tryMe","queryRow","getRandomInt","queryColumn","promptOffset","component11","cssStyle","_defineProperty","check","Value","_drawMatrix5","_drawMatrix6","clearInputFields","scale","hintButton","hideHint","_step","_iterator","_createForOfIteratorHelper","s","n","done","value","err","e","f","_step2","_iterator2","showHint","setTimeout","name","created","_this","$store","commit","title","newTopics","img","action","goto","newshowhome","newMath","newLeftArrow","newModule","mounted","MathJax","Hub","Queue","metaInfo","titleTemplate","meta","content","component","low","high","floor","random","createRandomFriendlyMatrixWithSize","push","drawMatrixBrackets","board","position","suspend","i","topLeft","topLeftInner","topRight","topRightInner","bottomRight","bottomRightInner","bottomLeft","bottomLeftInner","horzLeft1","horzRight1","horzLeft2","horzRight2","vertTop1","vertBot1","vert2","objectList","trackedSegment","points","attributes","jsxPoints","point","jsxPoint","withLabel","bracketAttributes","color","highlight","separatorAttributes","strokeWidth","dash","_objectSpread","onElementSelect","arguments","undefined","onElementLeave","labelMatrixAssignment","dx","dy","_drawMatrixBrackets","_drawMatrixBrackets2","anchorY","display","matrixElementTextProperties","textLabels","_loop","rr","_loop2","text","cc","this","_arrayWithHoles","arr","Array","isArray","_iterableToArrayLimit","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","call","next","Object","_nonIterableRest","TypeError","unsupportedIterableToArray"],"mappings":"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","file":"js/chunk-28213ec3.5d5f18bd.js","sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('h3',{ref:\"mat\"},[_vm._v(\"\\n What is a Matrix?\\n \")]),_c('p',[_vm._v(\"\\n A matrix is a collection or ensemble of numbers that obey specific algebraic rules for addition, subtraction and multiplication.\\n A matrix is typically represented by means of rows and columns. For example: \\\\(\\\\mathbf{A}\\\\), shown below, is a matrix\\n containing 2 rows and 2 columns.\\n $$\\n \\\\mathbf{A} = \\\\begin{bmatrix}\\n 1 & 4 \\\\\\\\\\n -1 & 1 \\\\\\\\\\n \\\\end{bmatrix}\\n $$\\n \\\\(\\\\mathbf{B}\\\\) is a matrix containing 3 rows and 2 columns.\\n $$\\n \\\\mathbf{B} = \\\\begin{bmatrix}\\n 1 & 4 \\\\\\\\\\n -1 & 1 \\\\\\\\\\n 3 & 8 \\\\\\\\\\n \\\\end{bmatrix}\\n $$\\n \")]),_c('h3',{ref:\"comps\"},[_vm._v(\"\\n Components of a Matrix\\n \")]),_c('p',[_vm._v(\"\\n The individual items of a matrix are called its components or elements. Typically an element of matrix \\\\(\\\\mathbf{M}\\\\) that is located\\n at the \\\\(i^\\\\text{th}\\\\) row and \\\\(j^\\\\text{th}\\\\) column is represented by the symbol \\\\(M_{ij}\\\\).\\n \")]),_c('h3',{ref:\"magicgraph\"},[_vm._v(\"\\n MagicGraph | Components of a Matrix\\n \")]),_c('p',[_vm._v(\"\\n This MagicGraph offers interactive practice problems for understanding matrix components.\\n \")]),_c('h5',[_vm._v(\" To Get Started: \")]),_vm._m(0),_c('h5',[_vm._v(\" To Explore: \")]),_c('p',[_vm._v(\" Tap on the shuffle button to create different variations of the matrix \\\\(\\\\textbf{M}\\\\) and practice. \")]),_c('v-responsive',[_c('v-layout',{attrs:{\"justify-center\":\"\"}},[_c('div',{staticClass:\"edliy-box-about\",attrs:{\"id\":\"jxgbox1\"}})])],1),_c('h3',{ref:\"magicgraph\"},[_vm._v(\"\\n MagicGraph | Test Your Knowledge\\n \")]),_c('p',[_vm._v(\"\\n This MagicGraph offers interactive practice problems to test your knowledge.\\n \")]),_c('h5',[_vm._v(\" To Get Started: \")]),_c('p',[_vm._v(\"\\n You are given a matrix \\\\(\\\\textbf{M}\\\\).\\n Hover over the components of the matrix to see its location (i.e. its row and column) and indices.\\n \")]),_c('h5',[_vm._v(\" To Explore: \")]),_c('p',[_vm._v(\" Tap on the shuffle button to create different variations of the matrix \\\\(\\\\textbf{M}\\\\) and practice. \")]),_c('v-responsive',[_c('v-layout',{attrs:{\"justify-center\":\"\"}},[_c('div',{staticClass:\"edliy-box-about\",attrs:{\"id\":\"jxgbox2\"}})])],1)],1)\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c;return _c('p',[_vm._v(\"\\n You are given a matrix \\\\(\\\\textbf{M}\\\\).\\n \"),_c('ul',[_c('li',[_vm._v(\"Hover your mouse over the number entries within the brackets.\")]),_c('li',[_vm._v(\"Look at the pop-up labels to determine the address (row and column) of the entry within the matrix.\")])])])\n}]\n\nexport { render, staticRenderFns }","import {\r\n makeResponsive,\r\n placeTitle,\r\n clearInputFields,\r\n} from '../../../../common/edliy_utils';\r\nimport {\r\n getRandomInt,\r\n createRandomFriendlyMatrix,\r\n drawMatrix,\r\n} from '../matrix_utils';\r\n\r\nconst debugMode = true;\r\nconst giveHints = true;\r\n\r\nconst Boxes = {\r\n////////////////////////////////////////////////////////////////////////////////\r\n// Explanation\r\n////////////////////////////////////////////////////////////////////////////////\r\n box1a: function () {\r\n const magicGraphProperties = {\r\n boundingbox: [-8, 12, 8, -4],\r\n keepaspectratio: true,\r\n axis: false,\r\n ticks: { visible: false },\r\n grid: true,\r\n showCopyright: false,\r\n showNavigation: false,\r\n pan: { enabled: false },\r\n zoom: { enabled: false },\r\n };\r\n\r\n let brd1 = JXG.JSXGraph.initBoard('jxgbox1', magicGraphProperties);\r\n brd1.suspendUpdate();\r\n makeResponsive(brd1);\r\n\r\n brd1.options.layer['image'] = 14;\r\n placeTitle(brd1, 'Components of a Matrix', '(Hover Over a Component to See its Indices)')\r\n\r\n let matrixComponentLabel = brd1.create('text', [0, 2.25, '(Component)'], {\r\n visible: false,\r\n anchorX: 'middle',\r\n CssStyle: 'fontFamily:Oswald',\r\n fontSize: () => Math.round(18 * brd1.canvasWidth / 500.),\r\n fixed: true,\r\n });\r\n\r\n const matrixComponentLabelProperties = {\r\n visible: false,\r\n fixed: true\r\n };\r\n\r\n let rows = [\r\n brd1.create('image', ['/assets/oneR.svg', [-1.25, 7 - 0.5/2], [0.5, 0.5]], matrixComponentLabelProperties),\r\n brd1.create('image', ['/assets/twoR.svg', [-1.25, 5.75 - 0.5/2], [0.5, 0.5]], matrixComponentLabelProperties),\r\n brd1.create('image', ['/assets/threeR.svg', [-1.25, 4.5 - 0.5/2], [0.5, 0.5]], matrixComponentLabelProperties),\r\n ];\r\n\r\n let cols = [\r\n brd1.create('image', ['/assets/oneG.svg', [0 - 0.5 / 2, 7 + 1.25 / 2], [0.5, 0.5]], matrixComponentLabelProperties),\r\n brd1.create('image', ['/assets/twoG.svg', [-3.75+5 - 0.5 / 2, 7 + 1.25 / 2], [0.5, 0.5]], matrixComponentLabelProperties),\r\n brd1.create('image', ['/assets/threeG.svg', [-2.50 +5 - 0.5 / 2, 7 + 1.25 / 2], [0.5, 0.5]], matrixComponentLabelProperties),\r\n ];\r\n\r\n let shuffle = brd1.create('image', ['/assets/shuffle.svg', [-0.75, 0.75 - 1.0], [1.5, 1.5]], {visible: true, fixed: true});\r\n\r\n const clearRowLabels = function() {\r\n for (let row of rows) {\r\n row.setAttribute({ visible: false });\r\n }\r\n };\r\n\r\n const clearColumnLabels = function() {\r\n for (let col of cols) {\r\n col.setAttribute({ visible: false });\r\n }\r\n }\r\n\r\n let matrix = createRandomFriendlyMatrix();\r\n const updateComponent = function (m, r, c) {\r\n clearRowLabels();\r\n clearColumnLabels();\r\n rows[r].setAttribute({ visible: true });\r\n cols[c].setAttribute({ visible: true });\r\n matrixComponentLabel.setText(`M_{${String(r + 1)}${String(c + 1)}} = ${m[r][c]}`);\r\n matrixComponentLabel.setAttribute({ visible: true });\r\n }\r\n\r\n const clearComponent = function (m, r, c) {\r\n clearRowLabels();\r\n clearColumnLabels();\r\n matrixComponentLabel.setAttribute({ visible: false });\r\n }\r\n\r\n let [drawnObjects, ] = drawMatrix(brd1, [0, 7], 1.25, matrix,\r\n updateComponent,\r\n clearComponent,\r\n true);\r\n\r\n let newProblem = function() {\r\n brd1.suspendUpdate();\r\n if (drawnObjects) {\r\n brd1.removeObject(drawnObjects.reverse());\r\n }\r\n matrix = createRandomFriendlyMatrix();\r\n drawnObjects = drawMatrix(\r\n brd1, [0, 7], 1.25, matrix,\r\n updateComponent,\r\n clearComponent,\r\n true\r\n );\r\n brd1.unsuspendUpdate();\r\n }\r\n shuffle.on('down', newProblem);\r\n\r\n if (debugMode) {\r\n let debugMe = brd1.create('image', ['/assets/debug.svg', [-8, 11], [1, 1]], { visible: true, fixed: true });\r\n let dumpObjects = function() {\r\n console.log(\"Dumping jsxgraph objects.\")\r\n let count = 0;\r\n for (const el in brd1.objects) {\r\n console.log(brd1.objects[el]);\r\n count++;\r\n }\r\n console.log(`Had ${count} object(s).`);\r\n }\r\n debugMe.on('down', dumpObjects);\r\n }\r\n\r\n brd1.unsuspendUpdate();\r\n },\r\n\r\n////////////////////////////////////////////////////////////////////////////////\r\n// Assessment\r\n////////////////////////////////////////////////////////////////////////////////\r\n box1b: function () {\r\n const magicGraphProperties = {\r\n boundingbox: [-8, 12, 8, -4],\r\n keepaspectratio: true,\r\n axis: false,\r\n ticks: { visible: false },\r\n grid: true,\r\n showCopyright: false,\r\n showNavigation: false,\r\n pan: { enabled: false },\r\n zoom: { enabled: false },\r\n };\r\n\r\n let brd1 = JXG.JSXGraph.initBoard('jxgbox2', magicGraphProperties);\r\n brd1.suspendUpdate();\r\n makeResponsive(brd1);\r\n\r\n brd1.options.layer['image'] =14;\r\n // brd1.create('text', [-0, 10.5, 'Components of a Matrix'],{anchorX:'middle', display:'internal', CssStyle:'font-weight: bold; fontFamily: Oswald;',fontSize:() => Math.round(28*brd1.canvasWidth/500.), fixed:true});\r\n // brd1.create('text', [-0, 9.5, '(Hover Over a Component to See its Indices)'],{anchorX:'middle', display:'internal', CssStyle:'fontFamily:Oswald',fontSize:function(){return Math.round(18*brd1.canvasWidth/500.)}, fixed:true});\r\n placeTitle(brd1, 'Components of a Matrix', '(Practice Problems)')\r\n\r\n let matrixComponentLabel = brd1.create('text', [0, 2.25, '(Component)'],\r\n {\r\n visible: false,\r\n anchorX:'middle',\r\n CssStyle: 'fontFamily:Oswald',\r\n fontSize:() => Math.round(18*brd1.canvasWidth/500.),\r\n fixed:true,\r\n });\r\n\r\n const matrixComponentLabelProperties = {\r\n visible: false,\r\n fixed: true\r\n };\r\n\r\n let rows = [\r\n brd1.create('image', ['/assets/oneR.svg', [-1.25, 7 - 0.5/2], [0.5, 0.5]], matrixComponentLabelProperties),\r\n brd1.create('image', ['/assets/twoR.svg', [-1.25, 5.75 - 0.5/2], [0.5, 0.5]], matrixComponentLabelProperties),\r\n brd1.create('image', ['/assets/threeR.svg', [-1.25, 4.5 - 0.5/2], [0.5, 0.5]], matrixComponentLabelProperties),\r\n ];\r\n\r\n let cols = [\r\n brd1.create('image', ['/assets/oneG.svg', [-5.00 + 5 - 0.5 / 2, 7 + 1.25 / 2], [0.5, 0.5]], matrixComponentLabelProperties),\r\n brd1.create('image', ['/assets/twoG.svg', [-3.75 + 5 - 0.5 / 2, 7 + 1.25 / 2], [0.5, 0.5]], matrixComponentLabelProperties),\r\n brd1.create('image', ['/assets/threeG.svg', [-2.50 + 5 - 0.5 / 2, 7 + 1.25 / 2], [0.5, 0.5]], matrixComponentLabelProperties),\r\n ];\r\n\r\n // let shuffle = brd1.create('image', ['/assets/shuffle.svg', [0,0], [1, 1]], {visible: true, fixed: true});\r\n let shuffle = brd1.create('image', ['/assets/shuffle.svg', [-0.75, 0.75 - 1.0], [1.5, 1.5]], {visible: true, fixed: true});\r\n\r\n let matrix = createRandomFriendlyMatrix();\r\n let numRows = matrix.length;\r\n let numCols = matrix[0].length;\r\n\r\n let [drawnObjects, ] = drawMatrix(brd1, [0, 7], 1.25, matrix, null, null, true);\r\n\r\n const assessmentScale = 1.5;\r\n const assessementIconSize = [assessmentScale, assessmentScale];\r\n let ok1 = brd1.create('image', ['/assets/check.svg',\r\n [\r\n 3.5 - assessmentScale / 2.0,\r\n -2 - assessmentScale / 2.0\r\n ],\r\n [\r\n assessmentScale,\r\n assessmentScale\r\n ]\r\n ],\r\n { visible: false, fixed: true });\r\n let cross1 = brd1.create('image',\r\n ['/assets/cross.svg',\r\n [\r\n 3.5 - assessmentScale / 2.0,\r\n -2 - assessmentScale / 2.0\r\n ],\r\n [\r\n assessmentScale,\r\n assessmentScale\r\n ]\r\n ],\r\n { visible: false, fixed: true });\r\n let tryMe = brd1.create('image',\r\n [\r\n '/assets/test.svg',\r\n [\r\n 6 - assessmentScale / 2.0,\r\n -2 - assessmentScale / 2.0\r\n ],\r\n [\r\n assessmentScale,\r\n assessmentScale\r\n ]\r\n ],\r\n {\r\n visible: true,\r\n fixed: true\r\n }\r\n );\r\n\r\n let queryRow = getRandomInt(0, numRows - 1);\r\n let queryColumn = getRandomInt(0, numCols - 1);\r\n\r\n const promptOffset = [-0.5, 0];\r\n let prompt = brd1.create('text',\r\n [\r\n 0 + promptOffset[0],\r\n -2 + promptOffset[1],\r\n () => `What is component M_{${String(queryRow + 1)}${String(queryColumn + 1)}}? `\r\n ],\r\n {\r\n anchorX: 'right',\r\n CssStyle: 'fontFamily:Oswald',\r\n fontSize: () => Math.round(18 * brd1.canvasWidth / 500.),\r\n fixed: true,\r\n }\r\n );\r\n\r\n let component11 = brd1.create('input', [0, -2, '', ''],\r\n { fixed: true, cssStyle: 'fontFamily:Oswald; width:10%; background-color:#008CBA;border: 1px solid black;border-radius: 3.5px; margin: auto; text-align: center;', fontSize: function () { return Math.round(16 * brd1.canvasWidth / 500.) }, fixed: true, parse: true });\r\n\r\n let check = function() {\r\n if (component11.Value() == matrix[queryRow][queryColumn]) {\r\n ok1.setAttribute({ visible: true });\r\n cross1.setAttribute({ visible: false });\r\n\r\n }\r\n else {\r\n ok1.setAttribute({ visible: false });\r\n cross1.setAttribute({ visible: true });\r\n }\r\n }\r\n tryMe.on('down', check);\r\n\r\n let newProblem = function() {\r\n brd1.suspendUpdate();\r\n if (drawnObjects) {\r\n brd1.removeObject(drawnObjects.reverse());\r\n }\r\n matrix = createRandomFriendlyMatrix();\r\n numRows = matrix.length;\r\n numCols = matrix[0].length;\r\n queryRow = getRandomInt(0, numRows - 1);\r\n queryColumn = getRandomInt(0, numCols - 1);\r\n [drawnObjects, ] = drawMatrix(brd1, [0, 7], 1.25, matrix, null, null, true);\r\n cross1.setAttribute({ visible: false });\r\n ok1.setAttribute({ visible: false });\r\n clearInputFields(brd1);\r\n\r\n brd1.unsuspendUpdate();\r\n }\r\n shuffle.on('down', newProblem);\r\n\r\n if (debugMode) {\r\n let debugMe = brd1.create('image', ['/assets/debug.svg', [-8, 11], [1, 1]], { visible: true, fixed: true });\r\n let dumpObjects = function() {\r\n console.log(\"Dumping jsxgraph objects.\")\r\n let count = 0;\r\n for (const el in brd1.objects) {\r\n console.log(brd1.objects[el]);\r\n count++;\r\n }\r\n console.log(`Had ${count} object(s).`);\r\n }\r\n debugMe.on('down', dumpObjects);\r\n }\r\n\r\n if (giveHints) {\r\n const scale = 0.75;\r\n let hintButton = brd1.create(\r\n 'image',\r\n [\r\n '/assets/light-bulb.svg',\r\n [7.5 - (scale / 2.0), 11.5 - (scale / 2.0)],\r\n [scale, scale]\r\n ],\r\n { visible: true, fixed: true }\r\n );\r\n let hideHint = function() {\r\n for (let c of cols) {\r\n c.setAttribute({ visible: false });\r\n }\r\n for (let r of rows) {\r\n r.setAttribute({ visible: false });\r\n }\r\n }\r\n let showHint = function() {\r\n for (let r = 0; r < numRows; ++r) {\r\n rows[r].setAttribute({ visible: true });\r\n }\r\n for (let c = 0; c < numCols; ++c) {\r\n cols[c].setAttribute({ visible: true });\r\n }\r\n setTimeout(hideHint, 2000);\r\n }\r\n hintButton.on('down', showHint);\r\n }\r\n\r\n brd1.unsuspendUpdate();\r\n },\r\n};\r\n\r\nexport default Boxes;\r\n","\r\n\r\n\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Components.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Components.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Components.vue?vue&type=template&id=3060e71a&\"\nimport script from \"./Components.vue?vue&type=script&lang=js&\"\nexport * from \"./Components.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Components.vue?vue&type=style&index=0&id=3060e71a&prod&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export function getRandomInt(low, high)\r\n{\r\n return Math.floor(Math.random() * (high - low + 1)) + low;\r\n}\r\n\r\nexport function createRandomFriendlyMatrixWithSize(rows, cols)\r\n{\r\n let matrix = [];\r\n // Do not use non-integer values in matrices, and keep the magnitudes\r\n // small.\r\n let r = 0;\r\n for (r = 0; r < rows; ++r) {\r\n let c = 0;\r\n matrix.push([]);\r\n for (c = 0; c < cols; ++c) {\r\n const value = getRandomInt(-15, 15);\r\n matrix[r].push(value);\r\n }\r\n }\r\n\r\n return matrix;\r\n}\r\n\r\nexport function createRandomFriendlyMatrix()\r\n{\r\n // Do not make the matrix too big.\r\n const rows = getRandomInt(2, 3);\r\n const cols = getRandomInt(2, 3);\r\n\r\n return createRandomFriendlyMatrixWithSize(rows, cols);\r\n}\r\n\r\nexport function drawMatrixBrackets(board, position, scale, numRows, numCols, suspend)\r\n{\r\n let i = 0;\r\n\r\n // A quick explanation of the various components and sizes:\r\n // position[0], position[1] is the center of the top left component\r\n // scale is the total width and total height of a component.\r\n\r\n const topLeft =\r\n [\r\n position[0] - scale / 2.0,\r\n position[1] + scale / 2.0\r\n ];\r\n\r\n const topLeftInner =\r\n [\r\n position[0] - scale / 2.0 + scale / 4.0,\r\n position[1] + scale / 2.0\r\n ];\r\n\r\n const topRight =\r\n [\r\n position[0] + scale * numCols - scale / 2.0,\r\n position[1] + scale / 2.0\r\n ];\r\n\r\n const topRightInner =\r\n [\r\n position[0] + scale * numCols - scale / 2.0 - scale / 4.0,\r\n position[1] + scale / 2.0\r\n ];\r\n\r\n const bottomRight =\r\n [\r\n position[0] + scale * numCols - scale / 2.0,\r\n position[1] - scale * numRows + scale / 2.0\r\n ];\r\n\r\n const bottomRightInner =\r\n [\r\n position[0] + scale * numCols - scale / 2.0 - scale / 4.0,\r\n position[1] - scale * numRows + scale / 2.0\r\n ];\r\n\r\n const bottomLeft =\r\n [\r\n position[0] - scale / 2.0,\r\n position[1] - scale * numRows + scale / 2.0\r\n ];\r\n\r\n const bottomLeftInner =\r\n [\r\n position[0] - scale / 2.0 + scale/4.0,\r\n position[1] - scale * numRows + scale / 2.0\r\n ];\r\n\r\n const horzLeft1 =\r\n [\r\n position[0]-0.5*scale,\r\n position[1] - scale * numRows + 1.5*scale\r\n ];\r\n\r\n const horzRight1 =\r\n [\r\n position[0] + scale*numCols -0.5*scale,\r\n position[1] - scale * numRows + 1.5*scale\r\n ];\r\n\r\n const horzLeft2 =\r\n [\r\n position[0]-0.5*scale,\r\n position[1] - scale * numRows + 2.5*scale\r\n ];\r\n\r\n const horzRight2 =\r\n [\r\n position[0] + scale*numCols -0.5*scale,\r\n position[1] - scale * numRows + 2.5*scale\r\n ];\r\n\r\n const vertTop1 =\r\n [\r\n position[0]+0.5*scale,\r\n position[1]+0.5*scale\r\n ];\r\n\r\n const vertBot1 =\r\n [\r\n position[0]+0.5*scale,\r\n position[1] - scale * numRows + 0.5*scale\r\n ];\r\n\r\n const topY = position[1] + 0.5*scale;\r\n const bottomY = position[1] - scale * numRows + 0.5*scale\r\n\r\n const vert2 = [\r\n [\r\n position[0]+scale*numCols -1.5*scale,\r\n position[1] + 0.5*scale\r\n ],\r\n [\r\n position[0]+scale*numCols -1.5*scale,\r\n position[1] - scale * numRows + 0.5*scale\r\n ]\r\n ];\r\n\r\n let objectList = [];\r\n\r\n let trackedSegment = function(points, attributes) {\r\n let jsxPoints = [];\r\n for (const point of points) {\r\n let jsxPoint = board.create('point', point, {\r\n withLabel: false,\r\n fixed: true,\r\n visible: false\r\n });\r\n jsxPoints.push(jsxPoint);\r\n objectList.push(jsxPoint);\r\n }\r\n objectList.push(board.create('segment', jsxPoints, attributes));\r\n }\r\n\r\n const bracketAttributes = {\r\n fixed: true,\r\n color: 'black',\r\n highlight: false\r\n };\r\n\r\n const separatorAttributes = {\r\n // visible: () => numRows > 1 && i == 1,\r\n strokeWidth: 1,\r\n dash: 1,\r\n fixed: true,\r\n color: 'black',\r\n highlight: false\r\n }\r\n\r\n if (suspend) {\r\n board.suspendUpdate();\r\n }\r\n\r\n trackedSegment([vertBot1, vertTop1], {...separatorAttributes, visible:()=>numCols>1&&i==1});\r\n trackedSegment(vert2, {...separatorAttributes, visible:()=>numCols>2&&i==1});\r\n\r\n trackedSegment([horzLeft1, horzRight1], {...separatorAttributes, visible:()=>numRows>1&&i==1});\r\n trackedSegment([horzLeft2, horzRight2], {...separatorAttributes, visible:()=>numRows>2&&i==1});\r\n\r\n // Left bracket for matrix elements '['.\r\n trackedSegment([bottomLeft, topLeft], bracketAttributes);\r\n trackedSegment([bottomLeft, bottomLeftInner], bracketAttributes);\r\n trackedSegment([topLeft, topLeftInner], bracketAttributes);\r\n\r\n // Right bracket for matrix elements ']'.\r\n trackedSegment([bottomRight, topRight], bracketAttributes);\r\n trackedSegment([bottomRight, bottomRightInner], bracketAttributes);\r\n trackedSegment([topRight, topRightInner], bracketAttributes);\r\n\r\n if (suspend) {\r\n board.unsuspendUpdate();\r\n }\r\n\r\n return [objectList, i];\r\n}\r\n\r\nexport function drawMatrix(board, position, scale, matrix, onElementSelect = null, onElementLeave = null, labelMatrixAssignment = false)\r\n{\r\n const dx = scale;\r\n const dy = scale;\r\n const numRows = matrix.length;\r\n const numCols = matrix[0].length;\r\n\r\n board.suspendUpdate();\r\n let [objectList, i] = drawMatrixBrackets(board, position, scale, numRows, numCols, false);\r\n\r\n if (labelMatrixAssignment) {\r\n objectList.push(board.create('text',\r\n [\r\n position[0] - scale,\r\n position[1] - scale * numRows / 2.0 + scale / 2.0,\r\n \"M =\"\r\n ],\r\n {\r\n anchorX: 'right', anchorY: 'middle', fixed: true,\r\n CssStyle: 'fontFamily: Oswald',\r\n display: 'internal',\r\n highlight:false,\r\n fontSize: () => Math.round(18*board.canvasWidth/500.),\r\n }\r\n ));\r\n }\r\n\r\n const matrixElementTextProperties = {\r\n anchorX: 'middle',\r\n anchorY: 'middle',\r\n CssStyle: 'fontFamily: Oswald',\r\n display: 'internal',\r\n color: 'grey',\r\n fontSize: () => Math.round(18*board.canvasWidth/500.),\r\n fixed: true,\r\n highlight: false,\r\n };\r\n\r\n let r = 0;\r\n let textLabels = []\r\n for (r = 0; r < numRows; ++r) {\r\n let c = 0;\r\n const rr = r;\r\n textLabels.push([]);\r\n for (c = 0; c < numCols; ++c) {\r\n const value = matrix[r][c];\r\n let text = board.create('text',\r\n [position[0] + c * dx,\r\n position[1] - r * dy,\r\n String(value)],\r\n matrixElementTextProperties,\r\n );\r\n const cc = c;\r\n text.on('over', function () {\r\n // this.setAttribute({ color: 'black' });\r\n if (onElementSelect) {\r\n i = 1;\r\n onElementSelect(matrix, rr, cc, text);\r\n }\r\n });\r\n text.on('out', function() {\r\n this.setAttribute({ color: 'grey' });\r\n if (onElementLeave) {\r\n i = 0;\r\n onElementLeave(matrix, rr, cc, text);\r\n }\r\n }); \r\n objectList.push(text);\r\n textLabels[r].push(text);\r\n }\r\n }\r\n board.unsuspendUpdate();\r\n\r\n return [objectList, textLabels];\r\n}\r\n","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(arr, i) {\n var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (null != _i) {\n var _s,\n _e,\n _x,\n _r,\n _arr = [],\n _n = !0,\n _d = !1;\n try {\n if (_x = (_i = _i.call(arr)).next, 0 === i) {\n if (Object(_i) !== _i) return;\n _n = !1;\n } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);\n } catch (err) {\n _d = !0, _e = err;\n } finally {\n try {\n if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return;\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Components.vue?vue&type=style&index=0&id=3060e71a&prod&lang=scss&\""],"sourceRoot":""}