Advertisement
Guest User

Untitled

a guest
Jan 22nd, 2018
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.     function SetFreeWorktop(presets,objects,spaces,form)
  2.     {
  3.         var workTop = GetWorktopInPresets(presets);
  4.         var idealFreeWorkTop = workTop * 0.5;
  5.  
  6.         var allPossibleHighCombinations = HighMUEsTreeCreator(presets.length,[]);
  7.         allPossibleHighCombinations.splice(0, 0, []);
  8.         var numberOfPossibleHighCombinations = allPossibleHighCombinations.length;
  9.  
  10.         var freeWorkTopSpaces = [];
  11.  
  12.         for(var iCombination = 0 ; iCombination < numberOfPossibleHighCombinations ; iCombination++ )
  13.         {
  14.             var freeWorkTopSpace = 0;
  15.             //console.log(allPossibleHighCombinations[iCombination]);
  16.             for(var iPreset = 0 ; iPreset < presets.length ; iPreset++)
  17.             {
  18.                 var isIn = false;
  19.                 for(var iResolution = 0 ; iResolution < allPossibleHighCombinations[iCombination].length ; iResolution++)
  20.                     if(iPreset == allPossibleHighCombinations[iCombination][iResolution]-1) isIn = true;
  21.                 if(isIn) freeWorkTopSpace += GetFreeWorktopInPresetIfLow(presets[iPreset].preset);
  22.                 else freeWorkTopSpace += GetFreeWorktopInPreset(presets[iPreset].preset);
  23.             }
  24.             freeWorkTopSpaces.push(freeWorkTopSpace);
  25.         }
  26.  
  27.        
  28.         var differences = [];
  29.         for(var iFreeWorkTopSpace = 0 ; iFreeWorkTopSpace < freeWorkTopSpaces.length ; iFreeWorkTopSpace++)
  30.             differences.push(Math.abs(idealFreeWorkTop - freeWorkTopSpaces[iFreeWorkTopSpace]));
  31.  
  32.         var min = 9999;
  33.         var index = 0;
  34.         for(var iDifference = 0 ; iDifference < differences.length ; iDifference++)
  35.         {
  36.                 if(differences[iDifference] < min)
  37.                 {
  38.                     min = differences[iDifference];
  39.                     index = iDifference;
  40.                 }
  41.         }
  42.         for(var iResolution = 0 ; iResolution < allPossibleHighCombinations[index].length ; iResolution++)
  43.         {
  44.             var presetNum = allPossibleHighCombinations[index][iResolution]-1;
  45.             DeleteInternalLATsInPreset(presets[presetNum]);
  46.             var numElements = presets[presetNum].preset.length;
  47.             presets[presetNum].preset = RelocateFRIandHOR(presets[presetNum].preset,spaces[presetNum]);
  48.             var possible_positions = [];
  49.             for(iElement = 0; iElement < numElements ; iElement++)
  50.             {
  51.                 if(presets[presetNum].preset[iElement].type == "STO_COL_L" || presets[presetNum].preset[iElement].type == "STO_COL")
  52.                     presets[presetNum].preset[iElement] = objects[presets[presetNum].preset[iElement].low_object];
  53.             }
  54.             AddInternatLATsInPreset(presets[presetNum],objects['LAT'],spaces[presetNum]);
  55.         }
  56.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement