Skip to content

Commit

Permalink
Issue #27: fixed
Browse files Browse the repository at this point in the history
  • Loading branch information
sharma-subendra-kr committed Jul 22, 2020
1 parent 1e9c870 commit 2987a62
Showing 1 changed file with 24 additions and 18 deletions.
42 changes: 24 additions & 18 deletions src/libs/arrange/arrange.js
Original file line number Diff line number Diff line change
Expand Up @@ -192,7 +192,7 @@ export const arrangeMove = async (
assignAdjacentRects(freeRectsItY);

// DEBUG:
// printUnmergedFreeRects(freeRectsArr.map((o) => o.d));
// printUnmergedFreeRects(context, freeRectsArr.map((o) => o.d));

const { mergedRects, idCount: lastId2 } = await mergeFreeRects(
freeRectsArr,
Expand All @@ -201,12 +201,12 @@ export const arrangeMove = async (
idCount.idCount = lastId2;

// DEBUG:
// printMergedFreeRects(mergedRects.map((o) => o.d));
// printMergedFreeRects(context, mergedRects.map((o) => o.d));

const { overlappedRects } = findOverlapped(mergedRects);

// DEBUG:
// printMergedFreeRects(overlappedRects.map((o) => o.d));
// printMergedFreeRects(context, overlappedRects.map((o) => o.d));

const {
arranged: _arranged,
Expand Down Expand Up @@ -410,8 +410,6 @@ export const arrangeResize = async (
let arrangedCount = 0;
let workSpaceResizeCount = 0;

let DEBUG_COUNT = 0;

while (arrangedCount !== iToALen) {
let freeRectsItY;
if (passCount === 0) {
Expand Down Expand Up @@ -442,7 +440,7 @@ export const arrangeResize = async (
);
itemsInCombinedWorkSpace = _itemsInCombinedWorkSpace;
itemsToArrange = updatedItemsToArrange;
iToALen = updatedItemsToArrange.length;
iToALen = updatedItemsToArrange.length + arrangedCount;
passCount++;
continue;
} else if (passCount >= 2) {
Expand All @@ -466,7 +464,10 @@ export const arrangeResize = async (
assignAdjacentRects(freeRectsItY);

// DEBUG:
// printUnmergedFreeRects(freeRectsArr.map((o) => o.d));
// printUnmergedFreeRects(
// context,
// freeRectsArr.map((o) => o.d)
// );

const { mergedRects, idCount: lastId2 } = await mergeFreeRects(
freeRectsArr,
Expand All @@ -475,12 +476,18 @@ export const arrangeResize = async (
idCount.idCount = lastId2;

// DEBUG:
// printMergedFreeRects(mergedRects.map((o) => o.d));
// printMergedFreeRects(
// context,
// mergedRects.map((o) => o.d)
// );

const { overlappedRects } = findOverlapped(mergedRects);

// DEBUG:
// printMergedFreeRects(overlappedRects.map((o) => o.d));
// printMergedFreeRects(
// context,
// overlappedRects.map((o) => o.d)
// );

const { arranged: _arranged, idCount: lastId3 } = await arrange(
context,
Expand Down Expand Up @@ -511,8 +518,7 @@ export const arrangeResize = async (

passCount++;

DEBUG_COUNT++;
if (DEBUG_COUNT > 50) {
if (passCount > 50) {
throw "Arrange time out";
}
}
Expand Down Expand Up @@ -602,7 +608,7 @@ export const arrangeFromHeight = async (context, itemsToArrange, height) => {
assignAdjacentRects(freeRectsItY);

// DEBUG:
// printUnmergedFreeRects(freeRectsArr.map((o) => o.d));
// printUnmergedFreeRects(context, freeRectsArr.map((o) => o.d));

const { mergedRects, idCount: lastId2 } = await mergeFreeRects(
freeRectsArr,
Expand All @@ -611,12 +617,12 @@ export const arrangeFromHeight = async (context, itemsToArrange, height) => {
idCount.idCount = lastId2;

// DEBUG:
// printMergedFreeRects(mergedRects.map((o) => o.d));
// printMergedFreeRects(context, mergedRects.map((o) => o.d));

const { overlappedRects } = findOverlapped(mergedRects);

// DEBUG:
// printMergedFreeRects(overlappedRects.map((o) => o.d));
// printMergedFreeRects(context, overlappedRects.map((o) => o.d));

const { arranged: _arranged, idCount: lastId3 } = await arrange(
context,
Expand Down Expand Up @@ -1157,7 +1163,7 @@ export const arrange = async (
}

// DEBUG:
// printMergedFreeRects(wCBST.getDataInArray().map((o) => o.d));
// printMergedFreeRects(context, wCBST.getDataInArray().map((o) => o.d));

const { result, idCount: lastId1 } = await arrangeCleanUp(
context,
Expand All @@ -1174,7 +1180,7 @@ export const arrange = async (
wCBST.insert(result[i]);
}
// DEBUG:
// printMergedFreeRects(wCBST.getDataInArray().map((o) => o.d));
// printMergedFreeRects(context, wCBST.getDataInArray().map((o) => o.d));
}

return {
Expand Down Expand Up @@ -1281,7 +1287,7 @@ export const arrangeCleanUp = async (context, aItem, pm, wCBST, lastId) => {
}

// now merge the rects in diff stack and put the merged rects in wCBST tree
// printUnmergedFreeRects(diffStack.getData().map((o) => o.d));
// printUnmergedFreeRects(context, diffStack.getData().map((o) => o.d));
const diffStackData = diffStack.getData();
const diffStackDataLen = diffStackData.length;
const it = new IntervalTreesIterative();
Expand Down Expand Up @@ -1320,7 +1326,7 @@ export const arrangeCleanUp = async (context, aItem, pm, wCBST, lastId) => {

const filteredOverlappedRects = filter(overlappedRects);

// printMergedFreeRects(filteredOverlappedRects.map((o) => o.d));
// printMergedFreeRects(context, filteredOverlappedRects.map((o) => o.d));

return { result: filteredOverlappedRects, idCount: lastId1 };
};

0 comments on commit 2987a62

Please sign in to comment.