Commit cb66df48a395be93a7f557bfc94d903b2e19eea7

Authored by Amrita Vishnoi
2 parents 8eb0a24f 43a10c1d

merged code

350-UTILITIES/Parser/XMLtoJSON_utility/XMLtoJSON_utility.v12.suo
No preview for this file type
400-SOURCECODE/AIAHTML5.Web/AIAHTML5.Web.csproj
... ... @@ -74,6 +74,8 @@
74 74 <Content Include="app\views\LabExerc\LabExerc-view.html" />
75 75 <Content Include="app\widget\MainMenu.html" />
76 76 <Content Include="match-pixel-wp.js" />
  77 + <Content Include="term-number-wp.js" />
  78 + <Content Include="term-wp.js" />
77 79 <Content Include="content\css\main.css" />
78 80 <Content Include="content\data\json\da\body-views\1\da_dat_tm_sg_1.json" />
79 81 <Content Include="content\data\json\da\body-views\10\da_dat_body_system_term_10.json" />
... ... @@ -42902,6 +42904,7 @@
42902 42904 <Content Include="libs\videogular\vg-controls.min.js" />
42903 42905 <Content Include="libs\videogular\videogular.js" />
42904 42906 <Content Include="libs\videogular\videogular.min.js" />
  42907 + <Content Include="libs\worker.js" />
42905 42908 <Content Include="login.html" />
42906 42909 <Content Include="app\widget\MainView.html" />
42907 42910 <Content Include="term-number-wp.js" />
... ... @@ -42998,7 +43001,7 @@
42998 43001 </Content>
42999 43002 </ItemGroup>
43000 43003 <ItemGroup>
43001   - <Folder Include="app\workeroprocess\" />
  43004 + <Folder Include="app\worker-process\" />
43002 43005 <Folder Include="content\data\json\ca\" />
43003 43006 <Folder Include="content\images\ca\" />
43004 43007 <Folder Include="content\images\DA\75\body-views\4\layers\329\6\" />
... ...
400-SOURCECODE/AIAHTML5.Web/app/controllers/DAController.js
... ... @@ -32,7 +32,7 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
32 32 $rootScope.isHighLight = false;
33 33 $rootScope.coloredImageCanvasList = [];
34 34 $rootScope.coloredImageMRCanvasList = [];
35   - $rootScope.ColoredCanvasData= [];
  35 + $rootScope.ColoredCanvasData = [];
36 36 $rootScope.grayImageDataList = [];
37 37 $rootScope.grayImageMRDataList = [];
38 38  
... ... @@ -1175,13 +1175,10 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1175 1175 var RGBColor = $scope.GetRGBColor(maskCanvasContext, actulalX, actualY, x, y);
1176 1176  
1177 1177 if ($rootScope.isHighLight) {
1178   -
1179   - if ($scope.machedIcolorInBodyRegion.length > 0)
1180   - {
1181   - if ($scope.multiAnnotationIsON == false)
1182   - {
1183   - for (var i = 0; i < $scope.machedIcolorInBodyRegion.length; i++)
1184   - {
  1178 +
  1179 + if ($scope.machedIcolorInBodyRegion.length > 0) {
  1180 + if ($scope.multiAnnotationIsON == false) {
  1181 + for (var i = 0; i < $scope.machedIcolorInBodyRegion.length; i++) {
1185 1182 var bodyRegionId = $scope.machedIcolorInBodyRegion[i];
1186 1183  
1187 1184 var grayCanvasID = 'imageCanvas' + bodyRegionId;
... ... @@ -1310,7 +1307,7 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1310 1307 if ($('#sppeachBubble').length > 0) {
1311 1308 $('#sppeachBubble').remove();
1312 1309 }
1313   -
  1310 +
1314 1311  
1315 1312  
1316 1313 $scope.createDynamicSpeechBubble(evt, annotationText, evt.pageX + horizontlScrollPosition - $('#canvasDiv').offset().left, evt.pageY + verticalScrollPosition - $('#canvasDiv').offset().top);
... ... @@ -1379,7 +1376,7 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1379 1376 //4.
1380 1377  
1381 1378 $scope.machedTermNoLocation = [];
1382   - console.log(' TermList.length= ' + TermList.length)
  1379 + // console.log(' TermList.length= ' + TermList.length)
1383 1380  
1384 1381  
1385 1382  
... ... @@ -1390,9 +1387,7 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1390 1387 var coloredImageData = dataForthisBR.coloredImageData;
1391 1388 var worker = new Worker('term-number-wp.js');
1392 1389  
1393   - for (var i = 0; i < TermList.length; i++) {
1394 1390  
1395   - console.log('Start time taken for term: ' + TermList[i]._TermNumber + 'in posting: ' + new Date().toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/, "$1"));
1396 1391 worker.postMessage({
1397 1392 'termNumber': TermList[i]._TermNumber,
1398 1393 'maskCanvasData': $scope.MaskCanvasData,
... ... @@ -1403,24 +1398,27 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1403 1398  
1404 1399 });
1405 1400  
1406   - }
1407 1401  
1408   - //var candata = e.value;
1409   - //var grayCanvasID = 'imageCanvas1'
1410   - //var grayCanvas = document.getElementById(grayCanvasID);
1411   - //var grayCanvasContext = grayCanvas.getContext("2d");
1412   - //var imageData = grayCanvasContext.getImageData(0, 0 ,348,507);
  1402 + var dataForthisBR = new jinqJs()
  1403 + .from($scope.ColoredCanvasData)
  1404 + .where('bodyRegionId == ' + 1)
  1405 + .select();
  1406 + var coloredImageData = dataForthisBR.coloredImageData;
1413 1407  
  1408 + //for (var i = 0; i < TermList.length; i++) {
  1409 + var worker = new Worker('term-number-wp.js');
1414 1410  
1415   - // worker.postMessage({ candata: coloredImageData });
  1411 + // console.log('Start time taken for term: ' + TermList[i]._TermNumber + 'in posting: ' + new Date().toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/, "$1"));
  1412 + worker.postMessage({
1416 1413  
1417   - worker.onmessage = function (e) {
1418   - var candata = e.data.value;
1419   - var grayCanvasID = 'imageCanvas1'
1420   - var grayCanvas = document.getElementById(grayCanvasID);
1421   - var grayCanvasContext = grayCanvas.getContext("2d");
  1414 + 'termList': TermList,
  1415 + 'maskCanvasData': $scope.MaskCanvasData,
  1416 + 'coloredImageCanvasList': $rootScope.coloredImageCanvasList,
  1417 + 'coloredImageMRCanvasList': $rootScope.coloredImageMRCanvasList,
  1418 + 'grayImageDataList': $rootScope.grayImageDataList,
  1419 + 'grayImageMRDataList': $rootScope.grayImageMRDataList
1422 1420  
1423   - // var tempCanvas = document.createElement('canvas');
  1421 + });
1424 1422 // tempCanvas.id = 'tempCanvas';
1425 1423 // $scope.tempCanvas = tempCanvas.id;
1426 1424 // tempCanvas.height = 507;
... ... @@ -1429,15 +1427,34 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1429 1427 // tempCanvas.style.left = 200 + 'px';
1430 1428 // tempCanvas.style.top = 100 + 'px';
1431 1429  
1432   - //// tempCanvas.style.backgroundColor = "transparent";
  1430 + //}
1433 1431 // tempCanvas.style.visibility = 'visible';
1434 1432 // document.getElementById('canvasDiv').appendChild(tempCanvas);
1435 1433  
1436   - // var tempCanvas1 = document.getElementById('tempCanvas');
1437   - // var Context = tempCanvas1.getContext("2d");
  1434 + worker.onmessage = function (e) {
  1435 + console.log('callback: ' + new Date().toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/, "$1"));
1438 1436  
1439   - grayCanvasContext.putImageData(e.data.value, 0, 0);
  1437 + // alert(e.data.value + '....name= ' + e.data.name)
  1438 + var updatedData = e.data.value;
  1439 + // debugger;
  1440 + for (var i = 1; i <= updatedData.length; i++) {
1440 1441  
  1442 + var grayCanvasID = 'imageCanvas' +i;
  1443 + var grayCanvas = document.getElementById(grayCanvasID);
  1444 + var grayCanvasContext = grayCanvas.getContext("2d");
  1445 +
  1446 +
  1447 +
  1448 + grayCanvasContext.putImageData(updatedData[i], 0, 0);
  1449 + }
  1450 + //var upadteddata = e.data.value;
  1451 + //var bodyRegionId = e.data.bodyRegionId;
  1452 +
  1453 +
  1454 + //$scope.highLightBodyBasedOnIcolor = function (RGBColor) {
  1455 +
  1456 +
  1457 + // $rootScope.grayImageDataList[bodyRegionId - 1] = upadteddata;
1441 1458  
1442 1459 };
1443 1460 worker.onerror = function (e) {
... ... @@ -1452,6 +1469,8 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1452 1469 // $scope.previousSelectedTermList.length = 0;
1453 1470  
1454 1471 // var RGBColor = $scope.previousSelectedTermList[i];
  1472 + // $scope.machedTermNoLocation = [];
  1473 + // for (var i = 0; i < TermList.length; i++) {
1455 1474  
1456 1475 // //2. Find Actul Term No Based on Icolor.
1457 1476 // var ActualTermNo = $scope.getActualTermNumber(RGBColor);
... ... @@ -1460,27 +1479,45 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1460 1479 // var TermList = $scope.getTermNumberList(ActualTermNo);
1461 1480  
1462 1481 // if ($scope.previousSelectedTermList.length > 0) {
1463   -
  1482 + // 'cmd': 'abc',
  1483 + // 'value': termNumber
  1484 + // });
  1485 + // }
  1486 +
1464 1487 // var worker = new Worker('term-number-wp.js');
1465 1488  
  1489 + // var msg = e.data.msg1;
  1490 + // };
  1491 + // worker.onerror = function (e) {
  1492 + // alert('Error: Line ' + e.lineno + ' in ' + e.filename + ': ' + e.message);
  1493 + // };
  1494 + // }
  1495 + // else {
1466 1496  
1467 1497 // for (var i = 0; i < $scope.previousSelectedTermList.length; i++) {
1468 1498 // $scope.machedTermNoLocation = [];
1469 1499 // for (var i = 0; i < TermList.length; i++) {
1470   -
  1500 + // var termNumber = parseInt(TermList[i]._TermNumber);
  1501 +
1471 1502 // var termNumber = parseInt(TermList[i]._TermNumber);
1472 1503  
1473 1504 // // //Match Term No List in each bodyRegion
1474 1505 // // $scope.getLocationsForMatchedTermsInWholeBody(termNumber);
  1506 + // 'value': termNumber
  1507 + // });
1475 1508  
1476 1509 // worker.postMessage({
1477 1510 // 'cmd': 'abc',
1478 1511 // 'value': termNumber
1479 1512 // });
1480 1513 // }
1481   -
  1514 + // };
  1515 + // //Match Term No List in each bodyRegion
  1516 + // //$scope.getLocationsForMatchedTermsInWholeBody(termNumber);
1482 1517 // }
1483 1518  
  1519 + // }
  1520 +
1484 1521 // worker.onmessage = function (e) {
1485 1522 // var msg = e.data.msg1;
1486 1523 // };
... ... @@ -1494,8 +1531,10 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1494 1531 // for (var i = 0; i < TermList.length; i++) {
1495 1532  
1496 1533 // var termNumber = parseInt(TermList[i]._TermNumber);
1497   -
  1534 +
1498 1535 // var worker = new Worker('term-number-wp.js');
  1536 + {
  1537 + console.log('Start time taken in fillMatchedTerm: ' + new Date().toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/, "$1"));
1499 1538  
1500 1539 // //start the worker
1501 1540 // worker.postMessage({
... ... @@ -1513,14 +1552,14 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1513 1552 // //$scope.getLocationsForMatchedTermsInWholeBody(termNumber);
1514 1553 // }
1515 1554  
1516   -
  1555 +
1517 1556 // }
1518 1557 //}
1519 1558  
  1559 + // var coloredImg = $scope.ColoredImageSRC[x].SRC;
1520 1560  
1521 1561  
1522   - $scope.fillMatchedTerm = function (grayImageDataVar, BrId)
1523   - {
  1562 + $scope.fillMatchedTerm = function (grayImageDataVar, BrId) {
1524 1563 console.log('Start time taken in fillMatchedTerm: ' + new Date().toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/, "$1"));
1525 1564  
1526 1565 //for (var x = 0; x < $scope.ColoredImageSRC.length; x++) {
... ... @@ -1532,7 +1571,13 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1532 1571 // var scaledWidth = $scope.ColoredImageSRC[x].Width;
1533 1572 // var scaledHeight = $scope.ColoredImageSRC[x].Height;
1534 1573 // //var maskImg = $scope.ColoredImageSRC[x].SRC;
  1574 + // // maskCanvasID = 'imageCanvas' + bodyRegionId + '_MR_mci';
  1575 + // //}
  1576 + // //else {
  1577 + // // maskCanvasID = 'imageCanvas' + bodyRegionId + '_mci';
1535 1578  
  1579 + // //var maskCanvasContext = maskCanvas.getContext("2d");
  1580 + // //var maskImgData = maskCanvasContext.getImageData(0, 0, scaledWidth, scaledHeight);
1536 1581  
1537 1582 // var coloredImg = $scope.ColoredImageSRC[x].SRC;
1538 1583  
... ... @@ -1542,6 +1587,13 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1542 1587 // var scledX = $scope.ColoredImageSRC[x].x;
1543 1588 // var scledY = $scope.ColoredImageSRC[x].y;
1544 1589  
  1590 + // }
  1591 + // else {
  1592 + // coloredImageDataVar = $rootScope.coloredImageCanvasList[parseInt(bodyRegionId - 1)];
  1593 + // }
  1594 + // var grayImageDataVar;
  1595 + // var grayCanvas;
  1596 + // if ($scope.ColoredImageSRC[x].haveMirror == 'true') {
1545 1597  
1546 1598 // // 1. get mask canvas for this body region.
1547 1599 // //var maskCanvasID;
... ... @@ -1555,8 +1607,12 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1555 1607 // //var maskCanvas = document.getElementById(maskCanvasID);
1556 1608 // //var maskCanvasContext = maskCanvas.getContext("2d");
1557 1609 // //var maskImgData = maskCanvasContext.getImageData(0, 0, scaledWidth, scaledHeight);
  1610 + // var grayImageData = grayCanvasContext.getImageData(0, 0, scaledWidth, scaledHeight);
  1611 + // grayImageDataVar = grayImageData.data;
  1612 + // }
1558 1613  
1559 1614 // // 2. get coloured canvas for this body region.
  1615 + // var coloredImageDataMR
1560 1616  
1561 1617  
1562 1618 // var coloredImageDataVar;
... ... @@ -1604,7 +1660,7 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1604 1660 // for (var z = 0; z < dataForthisBR.length; z++)
1605 1661 // {
1606 1662 // var location = parseInt(dataForthisBR[z].location);
1607   -
  1663 +
1608 1664  
1609 1665 // var RED_coloredImage = coloredImageDataVar[location];
1610 1666  
... ... @@ -1622,29 +1678,27 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1622 1678 // grayImageDataVar[location + 3] = ALPHA_coloredImage;
1623 1679  
1624 1680 // }
1625   - var grayCanvasID = 'imageCanvas' + BrId;
1626   - var grayCanvas = document.getElementById(grayCanvasID);
1627   - var grayCanvasContext = grayCanvas.getContext("2d");
  1681 + var grayCanvasID = 'imageCanvas' + BrId;
  1682 + var grayCanvas = document.getElementById(grayCanvasID);
  1683 + var grayCanvasContext = grayCanvas.getContext("2d");
1628 1684  
1629 1685  
1630   - debugger;
1631   - var garyDatalength = grayImageDataVar.length;
1632   - var pixelData = new Uint8ClampedArray(garyDatalength);
1633   - for (var i = 0; i < garyDatalength; i++) {
1634   - pixelData[i] = grayImageDataVar[i];
  1686 + var garyDatalength = grayImageDataVar.length;
  1687 + var pixelData = new Uint8ClampedArray(garyDatalength);
  1688 + for (var i = 0; i < garyDatalength; i++) {
  1689 + pixelData[i] = grayImageDataVar[i];
1635 1690 }
1636   - var imgDta = grayCanvasContext.getImageData(0, 0, 348, 507);
1637   - imgDta.data.set
1638   - grayCanvasContext.putImageData(imgDta, 0, 0);
1639   - //}
  1691 + var imgDta = grayCanvasContext.getImageData(0, 0, 348, 507);
  1692 + imgDta.data.set
  1693 + grayCanvasContext.putImageData(imgDta, 0, 0);
  1694 + //}
1640 1695  
1641   - // }
  1696 + // }
1642 1697  
1643 1698 console.log('End time taken in fillMatchedTerm: ' + new Date().toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/, "$1"));
1644 1699 }
1645 1700  
1646 1701 $scope.GetRGBColor = function (maskCanvasContext, actulalX, actualY, x, y) {
1647   - debugger;
1648 1702 var pixelData = maskCanvasContext.getImageData(Math.round(actulalX - x), Math.round(actualY - y), 1, 1);
1649 1703  
1650 1704 pixelData.data[0] = pixelData.data[0] - 9;
... ... @@ -1847,15 +1901,15 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1847 1901 $scope.DisableProgressBar = function () {
1848 1902  
1849 1903 // alert('Disabled wait cursor is called');
1850   -
1851   -
  1904 +
  1905 +
1852 1906 if ($rootScope.isHighLight) {
1853 1907 //alert('isHighlight: ' + $scope.isHighLight);
1854 1908  
1855 1909 $('#btnHighLight').removeClass('btn btn-black');
1856 1910 $('#btnHighLight').addClass('btn-primary');
1857 1911  
1858   - $scope.highLightBody() ;
  1912 + $scope.highLightBody();
1859 1913  
1860 1914  
1861 1915  
... ... @@ -1943,7 +1997,7 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
1943 1997  
1944 1998 $(".com").css("display", "none");
1945 1999 $("#bord").css({ "width": "0px", "display": "none" });
1946   -
  2000 +
1947 2001 $('<div id="dot" style="position:absolute;height:15px;width:35px;display:none;border-top:2px solid #000;transform:rotate(40deg);-moz-transform:rotate(40deg);-o-transform:rotate(40deg);-ms-transform:rotate(40deg);-webkit-transform:rotate(40deg);"></div>'
1948 2002 + '<div id="sppeachBubble" style="height:auto!important;z-index:10000;margin-left:25px;border:1px solid #000;display:none;padding:5px 10px;width:200px;position:absolute;color:#000;text-align:left;font-size:12px;background-color:#fff;font-weight:bold;"><span>' + text + '</span>'
1949 2003 + '<span style="position:absolute;right:-4px;top:-4px;color:#ffffff;cursor:pointer;">'
... ... @@ -3011,7 +3065,7 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
3011 3065 $scope.getAnnotationForTransparencyBox = function (pixelData, pixelDataTrans, scope) {
3012 3066  
3013 3067  
3014   -
  3068 +
3015 3069 pixelData.data[0] = pixelData.data[0] - 9;
3016 3070 pixelData.data[1] = pixelData.data[1] - 9;
3017 3071 pixelData.data[2] = pixelData.data[2] - 9;
... ... @@ -3327,20 +3381,20 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
3327 3381  
3328 3382 $scope.enableHighlight = function () {
3329 3383  
3330   - if ($rootScope.isHighLight == true)
  3384 + if ($rootScope.isHighLight == true) {
3331 3385 {
3332 3386  
3333 3387 }
3334   - else
3335   - {
  3388 + else {
  3389 + $rootScope.isHighLight = true;
3336 3390 $rootScope.isHighLight = true;
3337   - $scope.highLightBody();
  3391 + $scope.highLightBody();
3338 3392 }
3339 3393  
3340 3394  
3341 3395 }
3342 3396  
3343   -
  3397 +
3344 3398 $scope.highLightBody = function () {
3345 3399  
3346 3400  
... ... @@ -3445,7 +3499,7 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
3445 3499 }
3446 3500 }
3447 3501  
3448   -
  3502 +
3449 3503  
3450 3504 $scope.applyGrayMatrix = function (img, context_gray) {
3451 3505 var DAData = new BitmapData(img.width, img.height);
... ... @@ -3713,7 +3767,7 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
3713 3767 function OnPaintCanvasMouseMove(event) {
3714 3768  
3715 3769 if ($rootScope.isDrawingToolSelected == true) {
3716   - // console.log('moving');
  3770 + // console.log('moving');
3717 3771 //var mousePos = $scope.getMousePos(event);
3718 3772 //var canvasDiv = document.getElementById('canvasDiv');
3719 3773 //var verticalScrollPosition = canvasDiv.scrollTop;
... ... @@ -3781,9 +3835,9 @@ function ($scope, $rootScope, $compile, $http, $log, $location, $timeout, DA, Mo
3781 3835 .from($rootScope.BodySystemData.BodySystem.BodySystemTerm)
3782 3836 .where('_SystemNumber == ' + event.currentTarget.id)
3783 3837 .select();
3784   -
  3838 +
3785 3839 //color the body gray
3786   - $rootScope.isHighLight =true
  3840 + $rootScope.isHighLight = true
3787 3841 $scope.highLightBody();
3788 3842 //now highlight the selected body system in whole body
3789 3843  
... ...
400-SOURCECODE/AIAHTML5.Web/match-pixel-wp.js
1   -๏ปฟ
2   -function getLocationsForMatchedTermsInWholeBody(msg)
  1 +๏ปฟpreviousGrayImageDataList = [];
  2 +
  3 +function updateGrayCanvasDataOnMatcghedLocation(termList, maskCanvasData, coloreImageData,
  4 + grayImageData, grayImageMRDataList, bodyRegionId)
3 5 {
4   - debugger;
  6 + console.log('updateGrayCanvasDataOnMatcghedLocation= ' + bodyRegionId)
  7 +
  8 +
  9 + var n = maskCanvasData.data.length;
  10 + var maskData = maskCanvasData.data;
  11 + for (var z = 0; z < termList.length; z++) {
  12 +
  13 + if (previousGrayImageDataList[parseInt(bodyRegionId - 1)] != null) {
  14 + grayImageData = previousGrayImageDataList[parseInt(bodyRegionId - 1)];
  15 +
  16 + }
  17 + var grayImageDataVar = grayImageData.data;
  18 + var coloredImageDataVar = coloreImageData.data;
  19 +
  20 + for (var i = 0; i < n; i += 4) {
  21 +
  22 +
  23 + var RED = maskData[i] - 9;
  24 + var GREEN = maskData[i + 1] - 9;
  25 + var BLUE = maskData[i + 2] - 9;
  26 +
  27 + var Red;
  28 + var Green;
  29 + var Blue;
  30 + var zero = "0";
  31 +
  32 + if ((RED).toString().length != 2) {
  33 + Red = zero.concat((RED).toString())
  34 + }
  35 + else {
  36 + Red = (RED).toString()
  37 + }
  38 + if ((GREEN).toString().length != 2) {
  39 + Green = zero.concat((GREEN).toString())
  40 + }
  41 + else {
  42 + Green = (GREEN).toString()
  43 +
  44 + }
  45 + if ((BLUE).toString().length != 2) {
  46 + Blue = zero.concat((BLUE).toString())
  47 + }
  48 + else {
  49 + Blue = (BLUE).toString()
  50 +
  51 + }
  52 +
  53 + var Icolor = (Red + Green + Blue);
  54 + // alert('Icolor: ' + Icolor)
  55 +
  56 + if (parseInt(termList[z]._TermNumber) == parseInt(Icolor)) {
  57 +
  58 +
  59 +
  60 +
  61 + // matchedRGBLocationInBodyRegion.push({ "BRId": bodyRegionId, "location": i });
  62 +
  63 +
  64 + // matched = true;
5 65  
6   - self.postMessage({ 'value': msg });
  66 + var RED_coloredImage = coloredImageDataVar[i];
  67 +
  68 + grayImageDataVar[i] = RED_coloredImage;
  69 +
  70 +
  71 + var GREEN_coloredImage = coloredImageDataVar[i + 1];
  72 + grayImageDataVar[i + 1] = GREEN_coloredImage;
  73 +
  74 + var BLUE_coloredImage = coloredImageDataVar[i + 2];
  75 + grayImageDataVar[i + 2] = BLUE_coloredImage;
  76 +
  77 +
  78 + var ALPHA_coloredImage = coloredImageDataVar[i + 3];
  79 + grayImageDataVar[i + 3] = ALPHA_coloredImage;
  80 +
  81 + }
  82 +
  83 +
  84 + }
  85 +
  86 + previousGrayImageDataList[parseInt(bodyRegionId - 1)] = grayImageData;
  87 +
  88 + // if (matched == true) {
  89 + self.postMessage({
  90 + 'bodyRegionId': bodyRegionId,
  91 + 'value': grayImageData,
  92 +
  93 +
  94 + });
  95 + // }
7 96  
8 97 }
  98 +
  99 +}
9 100  
10 101 self.onmessage = function (e) {
11   - getLocationsForMatchedTermsInWholeBody(e.data.candata);
12   -}
13 102 \ No newline at end of file
  103 + console.log('shd')
  104 + updateGrayCanvasDataOnMatcghedLocation(e.data.termList, e.data.maskCanvasData, e.data.coloreImageData,
  105 + e.data.grayImageData, e.data.grayImageMRDataList, e.data.bodyRegionId);
  106 +
  107 +}
  108 +
... ...
400-SOURCECODE/AIAHTML5.Web/term-number-wp.js
1   -๏ปฟfunction abc(msg) {
2   -
3   -
4   - var msg1 = msg;
5   -
6   - self.postMessage({
7   - 'cmd': 'getLocationForMatchedTermsInWholeBody',
8   - 'value': msg1
9   - });
10   -
11   -
12   -}
13   -
14   -getLocationForMatchedTermsInWholeBody = function (termNo, maskCanvasData, coloredImageCanvasList, coloredImageMRCanvasList, grayImageDataList, grayImageMRDataList)
15   -{
  1 +๏ปฟvar UpdatedGrayImageDataList = [];
  2 +var doneBRID = [];
  3 +var abc = 'hello';
16 4  
  5 +getLocationForMatchedTermsInWholeBody = function (termList, maskCanvasData, coloredImageCanvasList, coloredImageMRCanvasList, grayImageDataList, grayImageMRDataList) {
  6 + // console.log('for termNumer: ' + termNo + ', time: ' + new Date().toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/, "$1"))
17 7 var matchedRGBLocationInBodyRegion = [];
18   - for (var x = 0; x < maskCanvasData.length; x++) {
  8 + var matched;
  9 +
  10 + for (var x = 0; x < maskCanvasData.length; x++)
  11 + {
  12 +
  13 + matched = false;
19 14 // alert('called for bodyRegionId: ' + $scope.MaskImageSRC[x].bodyRegionId);
20 15 var bodyRegionId = maskCanvasData[x].bodyRegionId;
21 16 var canvasId = maskCanvasData[x].canvasId;
22 17 var maskData = maskCanvasData[x].maskData;
23 18  
24   - var coloredImageDataVar = coloredImageCanvasList[bodyRegionId -1];
25   - var grayImageDataVar = grayImageDataList[bodyRegionId-1];
26   -
27   -
28   - // {
29   - //var scaledWidth = $scope.ColoredImageSRC[x].Width;
30   - //var scaledHeight = $scope.ColoredImageSRC[x].Height;
31   - ////var maskImg = $scope.ColoredImageSRC[x].SRC;
32   -
33   -
34   - //var coloredImg = $scope.ColoredImageSRC[x].SRC;
35   -
36   - //var maskImg = $scope.GetMaskImageSource(coloredImg);
37   -
38   -
39   - //var scledX = $scope.ColoredImageSRC[x].x;
40   - //var scledY = $scope.ColoredImageSRC[x].y;
41   -
42   -
43   - //// 1. get mask canvas for this body region.
44   - //var maskCanvasID;
45   - //if ($scope.ColoredImageSRC[x].haveMirror == 'true') {
46   - // maskCanvasID = 'imageCanvas' + bodyRegionId + '_MR_mci';
47   - //}
48   - //else {
49   - // maskCanvasID = 'imageCanvas' + bodyRegionId + '_mci';
50   -
51   - //}
52   - //var maskCanvas = document.getElementById(maskCanvasID);
53   - //var maskCanvasContext = maskCanvas.getContext("2d");
54   - //var maskImgData = maskCanvasContext.getImageData(0, 0, scaledWidth, scaledHeight);
55   -
56   - //// 2. get coloured canvas for this body region.
57   -
58   -
59   - //var coloredImageDataVar;
60   - //var coloredImageDataMRVar
61   -
62   - //if ($scope.ColoredImageSRC[x].haveMirror == 'true') {
63   -
64   - // coloredImageDataVar = $rootScope.coloredImageMRCanvasList[parseInt(bodyRegionId)];
65   - //}
66   - //else {
67   - // coloredImageDataVar = $rootScope.coloredImageCanvasList[parseInt(bodyRegionId - 1)];
68   - //}
69   -
70   - //var grayImageDataVar;
71   - //var grayCanvas;
72   - //if ($scope.ColoredImageSRC[x].haveMirror == 'true') {
73   -
74   - // //// 3. get mask canvas for this body region._MR
75   - // var grayCanvasID = 'imageCanvas' + bodyRegionId + '_MR';
76   - // grayCanvas = document.getElementById(grayCanvasID);
77   - // var grayCanvasContext = grayCanvas.getContext("2d");
78   - // var grayImageData = grayCanvasContext.getImageData(0, 0, scaledWidth, scaledHeight);
79   - // grayImageDataVar = grayImageData.data;
80   - //}
81   -
82   - //else {
83   - // var grayCanvasID = 'imageCanvas' + bodyRegionId;
84   - // grayCanvas = document.getElementById(grayCanvasID);
85   - // var grayCanvasContext = grayCanvas.getContext("2d");
86   - // var grayImageData = grayCanvasContext.getImageData(0, 0, scaledWidth, scaledHeight);
87   - // grayImageDataVar = grayImageData.data;
88   - //}
89   -
90   - //var coloredImageDataVarMR;
91   - //var coloredImageDataMR
92   -
93   -
94   - var counter = 0;
95   -
96   - var imageDataVar = maskData.data;
97   -
98   - // var previousBRID;
99   -
100   - var counter = 0;
101   -
102   -
103   - var n = maskData.data.length;
104   -
105   - for (var i = 0; i < n; i += 4) {
106   -
107   -
108   - var RED = imageDataVar[i] - 9;
109   - var GREEN = imageDataVar[i + 1] - 9;
110   - var BLUE = imageDataVar[i + 2] - 9;
  19 + var coloredImageDataVar= coloredImageCanvasList[bodyRegionId - 1];
  20 + var grayImageDataVar = grayImageDataList[bodyRegionId - 1];
  21 +
  22 + //var coloredImageDataVar = coloredImageDataVar1.data;
  23 + //var grayImageDataVar = grayImageDataVar1.data;
111 24  
112   - var Red;
113   - var Green;
114   - var Blue;
115   - var zero = "0";
  25 + var counter = 0;
116 26  
117   - if ((RED).toString().length != 2) {
118   - Red = zero.concat((RED).toString())
119   - }
120   - else {
121   - Red = (RED).toString()
122   - }
123   - if ((GREEN).toString().length != 2) {
124   - Green = zero.concat((GREEN).toString())
125   - }
126   - else {
127   - Green = (GREEN).toString()
  27 + var imageDataVar = maskData.data;
128 28  
129   - }
130   - if ((BLUE).toString().length != 2) {
131   - Blue = zero.concat((BLUE).toString())
132   - }
133   - else {
134   - Blue = (BLUE).toString()
  29 + var machLocationWP = new Worker('match-pixel-wp.js');
  30 +
135 31  
136   - }
  32 + machLocationWP.postMessage({
137 33  
138   - var Icolor = (Red + Green + Blue);
139   - // alert('Icolor: ' + Icolor)
  34 + 'termList': termList,
  35 + 'maskCanvasData': maskData,
  36 + 'coloreImageData': coloredImageDataVar,
  37 + 'grayImageData': grayImageDataVar,
  38 + 'grayImageMRDataList': grayImageMRDataList,
  39 + 'bodyRegionId': bodyRegionId
140 40  
141   - if (parseInt(termNo) == parseInt(Icolor)) {
142   -
143   - counter++;
144   -
145   - //var obj = new Object();
146   - //obj.bodyRegionId = bodyRegionId;
147   - //obj.location = i;
148   -
149   - matchedRGBLocationInBodyRegion.push({ "BRId": bodyRegionId, "location": i });
150   -
151   -
152   -
153   -
154   - var RED_coloredImage = coloredImageDataVar[i];
155   -
156   - grayImageDataVar[i] = RED_coloredImage;
157   -
158   -
159   - var GREEN_coloredImage = coloredImageDataVar[i + 1];
160   - grayImageDataVar[i + 1] = GREEN_coloredImage;
161   -
162   - var BLUE_coloredImage = coloredImageDataVar[i + 2];
163   - grayImageDataVar[i + 2] = BLUE_coloredImage;
164   -
165   -
166   - var ALPHA_coloredImage = coloredImageDataVar[i + 3];
167   - grayImageDataVar[i + 3] = ALPHA_coloredImage;
168   -
169   -
170   -
171   -
172   -
173   -
174   - //// var have = machedIcolorInBodyRegion.indexOf(bodyRegionId);
175   -
176   -
177   - // //if (have == -1) {
178   - // // // machedIcolorInBodyRegion.push(bodyRegionId);
179   - // //}
180   - // //else {
181   -
182   - // //}
183   -
184   -
185   - // //previousGrayColoredData = i;
186   - // //if (coloredImageDataVar != null) {
187   -
188   -
189   - // // var RED_coloredImage = coloredImageDataVar[i];
190   -
191   - // // // grayImageDataVar[i] = RED_coloredImage;
192   -
193   -
194   - // // var GREEN_coloredImage = coloredImageDataVar[i + 1];
195   - // // /// grayImageDataVar[i + 1] = GREEN_coloredImage;
196   -
197   - // // var BLUE_coloredImage = coloredImageDataVar[i + 2];
198   - // // //grayImageDataVar[i + 2] = BLUE_coloredImage;
  41 + });
199 42  
  43 + machLocationWP.onmessage = function (e) {
  44 + console.log('callback: ' + e.data.value+', x='+x);
  45 +
  46 + //var upadteddata = e.data.value;
  47 + //var bodyRegionId = e.data.bodyRegionId;
200 48  
201   - // // var ALPHA_coloredImage = coloredImageDataVar[i + 3];
202   - // // // grayImageDataVar[i + 3] = ALPHA_coloredImage;
  49 + //var grayCanvasID = 'imageCanvas' + bodyRegionId;
  50 + //var grayCanvas = document.getElementById(grayCanvasID);
  51 + //var grayCanvasContext = grayCanvas.getContext("2d");
203 52  
204 53  
205   - // //}
  54 +
  55 + //grayCanvasContext.putImageData(upadteddata, 0, 0);
  56 + doneBRID.push(e.data.bodyRegionId);
  57 + UpdatedGrayImageDataList[e.data.bodyRegionId] = e.data.value
  58 +
  59 + console.log('UpdatedGrayImageDataList: '+ UpdatedGrayImageDataList);
206 60  
207   - }
208   -
  61 + console.log('doneBRID: ' + doneBRID.length);
209 62  
210   - // grayCanvasContext.putImageData(grayImageData, 0, 0);
  63 + if (doneBRID.length==9) {
  64 + console.log('before sending UpdatedGrayImageDataList= ' + UpdatedGrayImageDataList)
  65 + self.postMessage({
  66 + 'value': UpdatedGrayImageDataList,
  67 + 'name': 'Happy'
  68 + })
211 69 }
212   - self.postMessage({
213   -
214   - 'value': grayImageDataVar
215   - });
216 70  
217   - // grayCanvasContext.putImageData(grayImageData, 0, 0);
218   - //}
  71 + };
  72 + machLocationWP.onerror = function (e) {
  73 + console.log('Error: Line ' + e.lineno + ' in ' + e.filename + ': ' + e.message);
  74 + };
219 75  
220   -
  76 +
221 77 }
222 78  
223 79  
... ... @@ -226,25 +82,9 @@ getLocationForMatchedTermsInWholeBody = function (termNo, maskCanvasData, colore
226 82 }
227 83  
228 84 self.onmessage = function (e) {
229   - getLocationForMatchedTermsInWholeBody(e.data.termNumber, e.data.maskCanvasData,e.data.coloredImageCanvasList,
230   - e.data.coloredImageMRCanvasList,e.data.grayImageDataList,e.data.grayImageMRDataList);
  85 + getLocationForMatchedTermsInWholeBody(e.data.termList, e.data.maskCanvasData, e.data.coloredImageCanvasList,
  86 + e.data.coloredImageMRCanvasList, e.data.grayImageDataList, e.data.grayImageMRDataList);
231 87  
232 88 }
233 89  
234   -function launchMatchPixelWorkerProcess() {
235   -
236   - var worker = new Worker('match-pixel-wp.js');
237   -
238   - worker.onmessage = function (e) {
239   - var pixelLocation = e.data.msg;
240   -
241   - self.postMessage({ 'msg': pixelLocation });
242   - };
243   - worker.onerror = function (e) {
244   - alert('Error: Line ' + e.lineno + ' in ' + e.filename + ': ' + e.message);
245   - };
246   -
247   -
248   -
249   -}
250 90  
... ...