You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							120 lines
						
					
					
						
							2.9 KiB
						
					
					
				
			
		
		
	
	
							120 lines
						
					
					
						
							2.9 KiB
						
					
					
				| #include "y_JSExtensions.jsx";
 | |
| function sortNumber(a,b){
 | |
| return a - b;
 | |
| }
 | |
| function pad(n,i){ //pad n with ceroes up to i places.
 | |
|     if (String(n).length>=i){
 | |
|         return String(n)
 | |
|     }else{
 | |
|         dif = i- (String(n)).length;
 | |
|         padding = "";
 | |
|         for (p=0;p<dif;p++){
 | |
|             padding = padding+"0"
 | |
|             }
 | |
|         return padding+String(n)
 | |
| }
 | |
| }
 | |
| function yUniStr(str){
 | |
|     if (app.project.activeItem != null) {
 | |
|         myLayers = app.project.activeItem.layers;
 | |
|         //myLayerNames = [];
 | |
|         nameMatches = [];
 | |
|         for (i=1;i<=myLayers.length;i++){
 | |
|             if(getBaseName(myLayers[i].name) == getBaseName(str)){
 | |
|                 nameMatches.push(getN(myLayers[i].name))
 | |
|             }
 | |
|        
 | |
|         }
 | |
|     
 | |
|     newN = getFirstGap(nameMatches);
 | |
|     if(nameMatches.length == 0 | (newN==0)){
 | |
|             return str
 | |
|         }else{
 | |
|             return str+' '+newN
 | |
|         }
 | |
|     }else{
 | |
|         alert('E01 : No Comp is ACTIVE')
 | |
|     }
 | |
| }
 | |
| function getN(str){
 | |
|     lastChunk = str.substr(str.lastIndexOf(' '),str.length);
 | |
|    if(lastChunk == parseInt(lastChunk)){
 | |
|        return parseInt(lastChunk);
 | |
|        }else{
 | |
|            return 0;
 | |
|            };
 | |
|     }
 | |
| function getBaseName(str){
 | |
|     lastChunk = str.substr(str.lastIndexOf(' '),str.length);
 | |
|    if(lastChunk == parseInt(lastChunk)){
 | |
|        return str.substr(0,str.lastIndexOf(' '));
 | |
|        }else{
 | |
|            return str;
 | |
|            };
 | |
|     }
 | |
| function getFirstGap(array){
 | |
|     length = array.length
 | |
|     array.sort(function sortNumber(a,b){return a-b})
 | |
|     max = array[array.length-1]
 | |
|     for (n=0;n<=max;n++){
 | |
|         entry = array.getOne(n);
 | |
|         if (entry == -1){
 | |
|             return n
 | |
|             }
 | |
|         }
 | |
|       return max+1
 | |
|    return array[0];
 | |
| }
 | |
| function yReplace(inputSTR,replaceSTR,replacementSTR){
 | |
|     tmpArray = inputSTR.split(replaceSTR);
 | |
|     tmpSTR = '';
 | |
|     for(i=0;i<tmpArray.length;i++){
 | |
|         tmpSTR = tmpSTR+tmpArray[i]
 | |
|         if(i<tmpArray.length-1){
 | |
|         tmpSTR = tmpSTR+replacementSTR;
 | |
|         }
 | |
|         }
 | |
|     return tmpSTR;
 | |
|     }
 | |
| function genStamp(args){
 | |
|     d = new Date();
 | |
|     //alert(d.getMonth());
 | |
|     y =  String(d.getFullYear()).substring(2,4);
 | |
|     m = pad(d.getMonth()+1,2);
 | |
|     d =  pad(d.getUTCDate(),2);
 | |
|     str = String(m)+String(d)+String(y); 
 | |
| return str
 | |
| }
 | |
| function mergeMultiLine(_str){
 | |
|     var re = new RegExp('[\n\r]');
 | |
|     _lines = _str.split(re);
 | |
|     newStr = '';
 | |
| 
 | |
|     if(_lines.length>1){
 | |
|         for(L=0;L<_lines.length;L++){
 | |
|             alert(_lines[L]);
 | |
|             if(L==_lines.length-1||_lines[L]==''){
 | |
|                 dash = '';
 | |
|             }else{
 | |
|                 dash = '.';
 | |
|             }
 | |
|         if(_lines[L]!=''){
 | |
|                 newStr = newStr+_lines[L]+dash;
 | |
|             }else{
 | |
|                 newStr = newStr;
 | |
|             }
 | |
|         }
 | |
|     }else{
 | |
|         newStr = _str;
 | |
|     }
 | |
|     return newStr;
 | |
| }
 | |
| function yFactor(n,f){
 | |
|     if((typeof(n)=='number'&&typeof(f)=='number')&&(n>f)){
 | |
|         value = n - (n%f);
 | |
|         return(value);
 | |
|     }else{
 | |
|         alert('error');
 | |
|     }
 | |
| }
 |