1 line
9.2 KiB
JSON
1 line
9.2 KiB
JSON
{"ast":null,"code":"var LN2 = Math.log(2);\n\nfunction determinant(rows, rank, rowStart, rowMask, colMask, detCache) {\n var cacheKey = rowMask + '-' + colMask;\n var fullRank = rows.length;\n\n if (detCache.hasOwnProperty(cacheKey)) {\n return detCache[cacheKey];\n }\n\n if (rank === 1) {\n var colStart = Math.round(Math.log((1 << fullRank) - 1 & ~colMask) / LN2);\n return rows[rowStart][colStart];\n }\n\n var subRowMask = rowMask | 1 << rowStart;\n var subRowStart = rowStart + 1;\n\n while (rowMask & 1 << subRowStart) {\n subRowStart++;\n }\n\n var sum = 0;\n\n for (var j = 0, colLocalIdx = 0; j < fullRank; j++) {\n var colTag = 1 << j;\n\n if (!(colTag & colMask)) {\n sum += (colLocalIdx % 2 ? -1 : 1) * rows[rowStart][j] * determinant(rows, rank - 1, subRowStart, subRowMask, colMask | colTag, detCache);\n colLocalIdx++;\n }\n }\n\n detCache[cacheKey] = sum;\n return sum;\n}\n\nexport function buildTransformer(src, dest) {\n var mA = [[src[0], src[1], 1, 0, 0, 0, -dest[0] * src[0], -dest[0] * src[1]], [0, 0, 0, src[0], src[1], 1, -dest[1] * src[0], -dest[1] * src[1]], [src[2], src[3], 1, 0, 0, 0, -dest[2] * src[2], -dest[2] * src[3]], [0, 0, 0, src[2], src[3], 1, -dest[3] * src[2], -dest[3] * src[3]], [src[4], src[5], 1, 0, 0, 0, -dest[4] * src[4], -dest[4] * src[5]], [0, 0, 0, src[4], src[5], 1, -dest[5] * src[4], -dest[5] * src[5]], [src[6], src[7], 1, 0, 0, 0, -dest[6] * src[6], -dest[6] * src[7]], [0, 0, 0, src[6], src[7], 1, -dest[7] * src[6], -dest[7] * src[7]]];\n var detCache = {};\n var det = determinant(mA, 8, 0, 0, 0, detCache);\n\n if (det === 0) {\n return;\n }\n\n var vh = [];\n\n for (var i = 0; i < 8; i++) {\n for (var j = 0; j < 8; j++) {\n vh[j] == null && (vh[j] = 0);\n vh[j] += ((i + j) % 2 ? -1 : 1) * determinant(mA, 7, i === 0 ? 1 : 0, 1 << i, 1 << j, detCache) / det * dest[i];\n }\n }\n\n return function (out, srcPointX, srcPointY) {\n var pk = srcPointX * vh[6] + srcPointY * vh[7] + 1;\n out[0] = (srcPointX * vh[0] + srcPointY * vh[1] + vh[2]) / pk;\n out[1] = (srcPointX * vh[3] + srcPointY * vh[4] + vh[5]) / pk;\n };\n}","map":{"version":3,"sources":["D:/Work/WorkSpace/GitWorkSpace/TenShop/resource/ElectronicMall/src/ElectronicMallVue/node_modules/zrender/lib/core/fourPointsTransform.js"],"names":["LN2","Math","log","determinant","rows","rank","rowStart","rowMask","colMask","detCache","cacheKey","fullRank","length","hasOwnProperty","colStart","round","subRowMask","subRowStart","sum","j","colLocalIdx","colTag","buildTransformer","src","dest","mA","det","vh","i","out","srcPointX","srcPointY","pk"],"mappings":"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","sourcesContent":["var LN2 = Math.log(2);\nfunction determinant(rows, rank, rowStart, rowMask, colMask, detCache) {\n var cacheKey = rowMask + '-' + colMask;\n var fullRank = rows.length;\n if (detCache.hasOwnProperty(cacheKey)) {\n return detCache[cacheKey];\n }\n if (rank === 1) {\n var colStart = Math.round(Math.log(((1 << fullRank) - 1) & ~colMask) / LN2);\n return rows[rowStart][colStart];\n }\n var subRowMask = rowMask | (1 << rowStart);\n var subRowStart = rowStart + 1;\n while (rowMask & (1 << subRowStart)) {\n subRowStart++;\n }\n var sum = 0;\n for (var j = 0, colLocalIdx = 0; j < fullRank; j++) {\n var colTag = 1 << j;\n if (!(colTag & colMask)) {\n sum += (colLocalIdx % 2 ? -1 : 1) * rows[rowStart][j]\n * determinant(rows, rank - 1, subRowStart, subRowMask, colMask | colTag, detCache);\n colLocalIdx++;\n }\n }\n detCache[cacheKey] = sum;\n return sum;\n}\nexport function buildTransformer(src, dest) {\n var mA = [\n [src[0], src[1], 1, 0, 0, 0, -dest[0] * src[0], -dest[0] * src[1]],\n [0, 0, 0, src[0], src[1], 1, -dest[1] * src[0], -dest[1] * src[1]],\n [src[2], src[3], 1, 0, 0, 0, -dest[2] * src[2], -dest[2] * src[3]],\n [0, 0, 0, src[2], src[3], 1, -dest[3] * src[2], -dest[3] * src[3]],\n [src[4], src[5], 1, 0, 0, 0, -dest[4] * src[4], -dest[4] * src[5]],\n [0, 0, 0, src[4], src[5], 1, -dest[5] * src[4], -dest[5] * src[5]],\n [src[6], src[7], 1, 0, 0, 0, -dest[6] * src[6], -dest[6] * src[7]],\n [0, 0, 0, src[6], src[7], 1, -dest[7] * src[6], -dest[7] * src[7]]\n ];\n var detCache = {};\n var det = determinant(mA, 8, 0, 0, 0, detCache);\n if (det === 0) {\n return;\n }\n var vh = [];\n for (var i = 0; i < 8; i++) {\n for (var j = 0; j < 8; j++) {\n vh[j] == null && (vh[j] = 0);\n vh[j] += ((i + j) % 2 ? -1 : 1)\n * determinant(mA, 7, i === 0 ? 1 : 0, 1 << i, 1 << j, detCache)\n / det * dest[i];\n }\n }\n return function (out, srcPointX, srcPointY) {\n var pk = srcPointX * vh[6] + srcPointY * vh[7] + 1;\n out[0] = (srcPointX * vh[0] + srcPointY * vh[1] + vh[2]) / pk;\n out[1] = (srcPointX * vh[3] + srcPointY * vh[4] + vh[5]) / pk;\n };\n}\n"]},"metadata":{},"sourceType":"module"} |