Jsfl рдХрд╛ рдЪрдпрди

рдирдорд╕реНрдХрд╛рд░ рдкреНрд░рд┐рдп рдкрд╛рдардХреЛрдВред

рдпрд╣ рдлреНрд▓реИрд╢ рдЖрдИрдбреАрдИ рдореЗрдВ рдЖрдХрд╛рд░ рддрддреНрд╡реЛрдВ рдХреЛ рдЫрд╛рдирдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдЯрд┐рдкреНрдкрдгреА рд╣реИред рд▓рдЧрднрдЧ рд╣рд░ рдлреНрд▓реИрд╢рд░ рдореИрдиреБрдЕрд▓ рдХрд╛рдо рдореЗрдВ рд▓рдЧрд╛ рд╣реБрдЖ рд╣реИред рд╡рд┐рднрд┐рдиреНрди рд░реВрд╕реА рдФрд░ рдЕрдВрдЧреНрд░реЗрдЬреА-рднрд╛рд╖рд╛ рдордВрдЪреЛрдВ рдкрд░ рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░, рдлреНрд▓реИрд╢ рдЖрдИрдбреАрдИ рдореЗрдВ рдЪрдпрдирд┐рдд рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдиреЗ рдХреЗ рд╡рд┐рд╖рдп рдкрд░ рд╕рдордп-рд╕рдордп рдкрд░ рд╕рд╡рд╛рд▓ рдЙрдарддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд▓рдЧрднрдЧ рдХреЛрдИ рднреА рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИред рдореИрдВ рдЗрди рд╕рд╡рд╛рд▓реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рднреА рдЪрд┐рдВрддрд┐рдд рдерд╛, рдФрд░ рдореБрдЭреЗ рдлрд╝реНрд▓реИрд╢ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХрд╛ рдЙрддреНрддрд░ jsfl рднрд╛рд╖рд╛ рдореЗрдВ рдорд┐рд▓рд╛ред

рдореИрдВ рдЪрдпрдирд┐рдд рддрддреНрд╡реЛрдВ рдХреЗ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдЖрд╕рд╛рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ jsfl рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реВрдВ:


рдЙрд▓реНрд▓реЗрдЦрд┐рдд "рд╕рдореВрд╣" рдХрдИ рд╡рд╕реНрддреБрдУрдВ рдХрд╛ рдЪрдпрди рдХрд░рдХреЗ рдкреНрд░рд╛рдкреНрдд рдореЗрдиреВ рд╕рдореВрд╣реЛрдВ рдХреЗ рдлрд╝реНрд▓реИрд╢ рд╕рдореВрд╣ рд╣реИрдВ рдФрд░ рдореЗрдиреВ рдХреНрд░рд┐рдпрд╛ "рдЯреВрд▓-> рдЧреНрд░реБрдкрд┐рдВрдЧ" рдХрд░рддреЗ рд╣реИрдВред
"рдкреНрд░реАрдлреЗрдЯрд┐рдВрдЧ" рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛ рдореИрдВрдиреЗ рдСрдЯреЛрдХреИрдб рд╕реЗ рдЙрдзрд╛рд░ рд▓реА рдереА, рдЬрдм рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдЯреАрдо рд╕реЗ рдкрд╣рд▓реЗ рдЪреБрдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рдерд╛, рдФрд░ рдЯреАрдо рдкрд╣рд▓реЗ рдирд╣реАрдВ, рдлрд┐рд░ рдСрдмреНрдЬреЗрдХреНрдЯред

************************************************** ****************************
selectionOnlyGroup.jsfl
//      . //       . //  raw shape   . fl.outputPanel.clear(); var sel = fl.getDocumentDOM().selection; var arrSelectedOnlyGroups = new Array(); for(i=0;i<=sel.length-1;i++) { var str=""; if(sel[i].elementType=="shape") { str+="isGroup:"+sel[i].isGroup+", members.length="+sel[i].members.length; arrSelectedOnlyGroups.push(sel[i]); } fl.trace("i:"+i+" - "+sel[i].elementType+", "+str); } fl.getDocumentDOM().selectNone(); fl.getDocumentDOM().selection = arrSelectedOnlyGroups; fl.trace(" : "+fl.getDocumentDOM().selection.length); 

************************************************** ****************************
selectionOnlyGroupsWithNoMembers.jsfl
 //   ,     . //         , //    shape      . //        (). //    ,    ,   //          . // ,          . //       ,     . fl.outputPanel.clear(); var sel = fl.getDocumentDOM().selection; var arrSelectedOnlyGroups = new Array(); for(i=0;i<=sel.length-1;i++) { var str=""; if(sel[i].elementType=="shape") { str+="isGroup:"+sel[i].isGroup+", members.length="+sel[i].members.length; if(sel[i].members.length==0) { arrSelectedOnlyGroups.push(sel[i]); } } fl.trace("i:"+i+" - "+sel[i].elementType+", "+str); } fl.getDocumentDOM().selectNone(); fl.getDocumentDOM().selection = arrSelectedOnlyGroups; fl.trace(" : "+fl.getDocumentDOM().selection.length); 


************************************************** ****************************
selectionOnlyGroupsWithMembers.jsfl:
 //   ,    . //         , //    shape      . //     . //        (). //     ,    //         . // ,      shape      . fl.outputPanel.clear(); var sel = fl.getDocumentDOM().selection; var arrSelectedOnlyGroups = new Array(); for(i=0;i<=sel.length-1;i++) { var str=""; if(sel[i].elementType=="shape") { str+="isGroup:"+sel[i].isGroup+", members.length="+sel[i].members.length; if(sel[i].members.length>0) { arrSelectedOnlyGroups.push(sel[i]); } } fl.trace("i:"+i+" - "+sel[i].elementType+", "+str); } fl.getDocumentDOM().selectNone(); fl.getDocumentDOM().selection = arrSelectedOnlyGroups; fl.trace(" : "+fl.getDocumentDOM().selection.length); 

************************************************** ****************************

рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдлреНрд▓реИрд╢ рдЖрдИрдбреАрдИ рдореЗрдВ рдирдореВрдирд╛рдХрд░рдг рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИ, рдпрд╛ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдпрд╣ рд▓рдЧрднрдЧ рдЕрд╕рдВрднрд╡ рд╣реИред рд╡рд╣ рд╕рдм рдЬреЛ рдлрд╝реНрд▓реИрд╢ рдЖрдкрдХреЛ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рд╡рд╣ рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рддрд░реАрдХреЛрдВ рд╕реЗ рдЪреБрдирдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИ (рдХреНрд▓рд┐рдХ, рд╢рд┐рдлреНрдЯ рдХреНрд▓рд┐рдХ, рдбрдмрд▓ рдХреНрд▓рд┐рдХ, рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХрд╛ рдлреНрд░реЗрдо рдЪрдпрди), рд▓реЗрдХрд┐рди рдЬрдм рдЖрдкрдиреЗ рдЗрд╕реЗ рдЪреБрдирдирд╛ рд╕рдорд╛рдкреНрдд рдХрд░ рд▓рд┐рдпрд╛ рд╣реИ, рддреЛ рдореЗрдиреВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕ рдЪрдпрди рд╕реЗ рддрддреНрд╡реЛрдВ рдХреЛ рдХрд┐рд╕реА рддрд░рд╣ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдирд╛ рд▓рдЧрднрдЧ рдЕрд╕рдВрднрд╡ рд╣реИред рдХреЗрд╡рд▓ рдореИрдиреБрдЕрд▓ рдЪрдпрди / рдЕрдЪрдпрдирд┐рдд рдХрд░реЗрдВред

рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдХреБрдЫ рдЙрджрд╛рд╣рд░рдг рдпрд╣рд╛рдВ рджрд┐рдП рдЧрдП рд╣реИрдВ:

1. рдкреНрд░рд╛рдердорд┐рдХ рдЪрдпрди рдорд╛рдЙрд╕ рдХреЗ рд╕рд╛рде рдЖрдпрддрд╛рдХрд╛рд░ рдЪрдпрди рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд╕рдореВрд╣реЛрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд▓рд╛рдЗрди рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдирдореВрдиреЗ рдореЗрдВ рдЧрд┐рд░ рдЧрдпрд╛:



2. рдЪрдпрди рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдЪрдпрди рдХрд░реЗрдВ



рдпрд╣ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд░реВрдк рд╕реЗ рдЪрдпрдирд┐рдд рд▓рд╛рдЗрди рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдирдореВрдиреЗ рд╕реЗ рдЧрд╛рдпрдм рд╣реЛ рдЧрдИ рдереАред

3. рддрддреНрд╡реЛрдВ рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░реЗрдВ-> рд╡рд┐рднрд╛рдЬрди:



рдпрд╣ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдХреБрдЫ рд╡рд╕реНрддреБрдУрдВ рдХреЛ "рд╣рдЯрд╛" рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреБрдЫ рд╡рд╕реНрддреБрдПрдВ "рдЬрд╛рд░реА" рд░рд╣рддреА рд╣реИрдВ рдФрд░ рд╕рдореВрд╣ рдореЗрдВ рджреГрдврд╝рддрд╛ рд╕реЗ рдмрдиреА рд░рд╣рддреА рд╣реИрдВред

4. рд╣рдо рд╕рд┐рд▓реЗрдХреНрд╢рди рд╕реЗ рдЧреНрд░рд╛рдлрд┐рдХ рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХреЛ рд╣рдЯрд╛рдиреЗ рдФрд░ рд╕рдмрдЧреНрд░реБрдкреНрд╕ рдХреЗ рд╕рд╛рде рдХреЗрд╡рд▓ рдЧреНрд░реБрдкреНрд╕ рдЫреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд┐рд▓реЗрдХреНрд╢рдиOnlyGroupsWithMembers.jsfl рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВ:



рдФрд░ рдлрд┐рд░ рд╕реЗ "рд╡рд┐рднрд╛рдЬрд┐рдд" рдЪрдпрдиред рд╣рдореЗрдВ рдЗрд╕рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдорд┐рд▓рддрд╛ рд╣реИ:



рдпрд╣ рд╣рд░ рдХрд┐рд╕реА рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИ ... рд▓реЗрдХрд┐рди рдХреЛрдИ рдкреВрд░реНрдг рдирд┐рд╢реНрдЪрд┐рддрддрд╛ рдирд╣реАрдВ рд╣реИред рдЙрдкрд▓рдмреНрдз рдЪрдпрди рдХреЗ рд╕рд╛рде рдЪрдпрди рдХрд░реЗрдВ CheckOnlyGroupsWithMembers.jsfl рд╕реНрдХреНрд░рд┐рдкреНрдЯ:



рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рдорди рдореЗрдВ рдХреНрдпрд╛ рд╣реИред рд╕рдм рдХреБрдЫ рдмрдбрд╝реЗ рдХрд░реАрдиреЗ рд╕реЗ "рдЯреВрдЯрд╛ рд╣реБрдЖ" рд╣реИред

рдореИрдВ рдЖрдкрдХреЛ рдпрд╛рдж рджрд┐рд▓рд╛рддрд╛ рд╣реВрдВ рдХрд┐ рд▓рдХреНрд╖реНрдп рд╡рд╕реНрддреБрдУрдВ рдХреЛ рддреЛрдбрд╝рдирд╛ рдирд╣реАрдВ рдерд╛, рдмрд▓реНрдХрд┐ рдЫрд╛рдирдиреЗ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдерд╛ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╡рд╕реНрддреБрдУрдВ рдХреЛ рддреЛрдбрд╝рд╛ рдирд╣реАрдВ рдЬрд╛ рд╕рдХрддрд╛ рдерд╛, рд▓реЗрдХрд┐рди рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рдерд╛ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ рдХреЗ рдЙрдкрдпреЛрдЧ рд╕реЗ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рдореБрдЦреНрдп рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╣реИред

рдЖрдкрдХрд╛ рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред

рдкреБрдирд╢реНрдЪ

рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, jsfl рд╡рд┐рд╖рдп рдХреЛ рдЕрд╡рд╛рдВрдЫрдиреАрдп рд░реВрдк рд╕реЗ рдЕрдирджреЗрдЦрд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдлреНрд▓реИрд╢ рдореЗрдВ рдПрдХ рдЫрд╡рд┐ рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдкреНрд░рддрд┐рдмрд┐рдВрдмрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рдХреЛрдИ рдореИрдиреБрдЕрд▓ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИред рдореЗрдиреВ рд╕реЗ рдкрд░реНрдпрд╛рдкреНрдд рд░реВрдк рд╕реЗ рдЙрдЪреНрдЪ-рд╕реНрддрд░реАрдп рд╡рд┐рдзрд┐рдпрд╛рдВ рд╡рд╕реНрддреБрдУрдВ рдХреА рдЖрдВрддрд░рд┐рдХ рд╕рдВрд░рдЪрдирд╛ рддрдХ рдкрд╣реБрдВрдЪ рдирд╣реАрдВ рджреЗрддреА рд╣реИрдВред

Source: https://habr.com/ru/post/In137101/


All Articles