Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in / Register
Toggle navigation
S
Scott
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Scott Sun
Scott
Commits
5458dacb
Commit
5458dacb
authored
4 years ago
by
Scott Sun
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
scott
parent
616dcdb3
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
68 additions
and
65 deletions
+68
-65
silkScreenOptimize.js
public_script/silkScreenOptimize.js
+68
-65
No files found.
public_script/silkScreenOptimize.js
View file @
5458dacb
...
...
@@ -641,6 +641,9 @@ function slBoxOptimize(){
GEN
.
selectByFilter
({
area_rect
:{
x1
:
layer_limits_tmp1
.
xmin
-
0.01
,
y1
:
layer_limits_tmp1
.
ymin
-
0.01
,
x2
:
layer_limits_tmp1
.
xmax
+
0.01
,
y2
:
layer_limits_tmp1
.
ymax
+
0.01
}});
GEN
.
selTransform
({
mode
:
'anchor'
,
oper
:
"rotate"
,
x_anchor
:
layer_limits_tmp
.
xc
,
y_anchor
:
layer_limits_tmp
.
yc
,
angle
:
angle
})
GEN
.
PAUSE
(
1
)
GEN
.
copyLayer
({
source_job
:
job
,
source_step
:
step
,
source_layer
:
tmp1
,
dest_layer
:
tmp2
,
mode
:
'replace'
,
invert
:
'no'
});
var
text_tmp
=
'tl_tmp_text'
;
GEN
.
copyLayer
({
source_job
:
job
,
source_step
:
step
,
source_layer
:
tmp1
,
dest_layer
:
text_tmp
,
mode
:
'replace'
,
invert
:
'no'
});
...
...
@@ -671,72 +674,72 @@ function slBoxOptimize(){
GEN
.
selTransform
({
mode
:
'anchor'
,
oper
:
'scale'
,
x_anchor
:
layer_limits_tmp
.
xc
,
y_anchor
:
layer_limits_tmp
.
yc
,
x_scale
:
scalex
,
y_scale
:
scaley
})
// {"mode":"anchor","oper":"scale","x_anchor":71.0066075,"y_anchor":85.50009625,"x_scale":1,"y_scale":1}
// 检查是否含单根线
var
tmp
=
'tl-'
+
tmp1
+
'tmp1++'
;
var
_tmp2
=
'tl-'
+
tmp1
+
'tmp2++'
;
var
tmp3
=
'tl-'
+
tmp1
+
'-alone'
;
var
cale_x
=
scalex
;
// ?
var
cale_y
=
scaley
;
// ?
GEN
.
createLayer
({
job
:
job
,
layer
:
tmp
,
context
:
'misc'
,
type
:
'document'
,
delete_exists
:
'yes'
});
GEN
.
createLayer
({
job
:
job
,
layer
:
tmp3
,
context
:
'misc'
,
type
:
'document'
,
delete_exists
:
'yes'
});
GEN
.
selCopyOther
({
target_layer
:
tmp
,
invert
:
'no'
});
GEN
.
affectedLayer
({
affected
:
'yes'
,
mode
:
'single'
,
layer
:
tmp
,
clear_before
:
'yes'
});
GEN
.
selContourize
();
GEN
.
DO_INFO
(
"-t layer -e "
+
job
+
"/"
+
step
+
"/"
+
tmp
+
" -d FEAT_HIST"
);
//
var tmp = 'tl-'+tmp1+'tmp1++';
//
var _tmp2 = 'tl-'+tmp1+'tmp2++';
//
var tmp3 = 'tl-'+tmp1+'-alone';
//
var cale_x = scalex; // ?
//
var cale_y = scaley; // ?
//
GEN.createLayer({job:job,layer:tmp,context:'misc',type:'document',delete_exists:'yes'});
//
GEN.createLayer({job:job,layer:tmp3,context:'misc',type:'document',delete_exists:'yes'});
//
GEN.selCopyOther({target_layer:tmp,invert:'no'});
//
GEN.affectedLayer({affected:'yes',mode:'single',layer:tmp,clear_before:'yes'});
//
GEN.selContourize();
//
GEN.DO_INFO("-t layer -e "+job+"/"+step+"/"+tmp+" -d FEAT_HIST");
if
(
GEN
.
INFO_RESULT
.
gFEAT_HISTsurf
>
0
)
{
for
(
var
i
=
1
;
i
<=
GEN
.
INFO_RESULT
.
gFEAT_HISTsurf
;
i
++
){
GEN
.
createLayer
({
job
:
job
,
layer
:
_tmp2
,
context
:
'misc'
,
type
:
'document'
,
delete_exists
:
'yes'
});
GEN
.
affectedLayer
({
affected
:
'yes'
,
mode
:
'single'
,
layer
:
tmp
,
clear_before
:
'yes'
});
GEN
.
COM
(
'sel_layer_feat'
,{
operation
:
'select'
,
layer
:
tmp
,
index
:
i
});
GEN
.
selCopyOther
({
target_layer
:
_tmp2
,
invert
:
'no'
});
GEN
.
affectedLayer
({
affected
:
'yes'
,
mode
:
'single'
,
layer
:
_tmp2
,
clear_before
:
'yes'
});
GEN
.
COM
(
'sel_surf2outline'
,{
width
:
1
});
GEN
.
COM
(
'filter_reset'
,{
filter_name
:
'popup'
});
GEN
.
selectByFilter
({
feat_types
:
'arc'
,
polarity
:
'positive'
,
profile
:
'all'
});
if
(
GEN
.
getSelectCount
()
>
0
)
{
GEN
.
selDelete
()
}
;
var
feat
=
GEN
.
getFeatures
({
job
:
job
,
step
:
step
,
layer
:
_tmp2
});
var
hash
=
{};
for
(
var
i
=
0
;
i
<
feat
;
i
++
){
for
(
var
k
=
i
+
1
;
k
<
feat
;
k
++
){
if
((
feat
[
i
].
xs
==
feat
[
k
].
xs
&&
feat
[
i
].
ys
==
feat
[
k
].
ys
)
||
(
feat
[
i
].
xs
==
feat
[
k
].
xe
&&
feat
[
i
].
ys
==
feat
[
k
].
ye
)
){
if
(
!
hash
[
i
+
'star'
]){
hash
[
i
+
'star'
]
=
{}}
hash
[
i
+
'star'
][
x
]
=
feat
[
i
].
xs
;
hash
[
i
+
'star'
][
y
]
=
feat
[
i
].
ys
;
}
if
((
feat
[
i
].
xe
==
feat
[
k
].
xs
&&
feat
[
i
].
ye
==
feat
[
k
].
ys
)
||
(
feat
[
i
].
xe
==
feat
[
k
].
xe
&&
feat
[
i
].
ye
==
feat
[
k
].
ye
))
{
if
(
!
hash
[
i
+
'end'
]){
hash
[
i
+
'end'
]
=
{}}
hash
[
i
+
'end'
][
x
]
=
feat
[
i
].
xe
;
hash
[
i
+
'end'
][
y
]
=
feat
[
i
].
ye
;
}
}
}
if
(
Object
.
keys
(
hash
).
length
==
0
)
{
GEN
.
affectedLayer
({
affected
:
'yes'
,
mode
:
'single'
,
layer
:
tmp1
,
clear_before
:
'yes'
});
GEN
.
selRefFeat
({
layers
:
_tmp2
,
use
:
'filter'
,
mode
:
'touch'
});
if
(
GEN
.
getSelectCount
()
>
0
){
GEN
.
COM
(
'sel_move_other'
,{
target_layer
:
tmp3
,
invert
:
'no'
,
dx
:
0
,
dy
:
0
,
size
:
0
,
x_anchor
:
0
,
y_anchor
:
0
,
rotation
:
0
,
mirror
:
'none'
});
var
change_scal_x
=
(
1
/
cale_x
).
toFixed
(
3
)
-
0
;
var
change_scal_y
=
(
1
/
cale_y
).
toFixed
(
3
)
-
0
;
GEN
.
affectedLayer
({
affected
:
'yes'
,
mode
:
'single'
,
layer
:
tmp3
,
clear_before
:
'yes'
});
GEN
.
selTransform
({
mode
:
'axis'
,
oper
:
'scale'
,
x_anchor
:
0
,
y_anchor
:
0
,
x_scale
:
change_scal_x
,
y_scale
:
change_scal_y
});
// {"mode":"axis","oper":"scale","x_anchor":0,"y_anchor":0,"x_scale":1,"y_scale":1}
GEN
.
COM
(
'sel_move_other'
,{
target_layer
:
tmp1
,
invert
:
'no'
,
dx
:
0
,
dy
:
0
,
size
:
0
,
x_anchor
:
0
,
y_anchor
:
0
,
rotation
:
0
,
mirror
:
'none'
});
GEN
.
deleteLayer
({
job
:
job
,
layer
:
tmp3
,
step
:
step
});
}
}
}
GEN
.
deleteLayer
({
job
:
job
,
layer
:
_tmp2
,
step
:
step
});
GEN
.
deleteLayer
({
job
:
job
,
layer
:
tmp
,
step
:
step
});
}
else
{
GEN
.
deleteLayer
({
job
:
job
,
layer
:
tmp
,
step
:
step
});
if
(
GEN
.
isLayerEmpty
({
job
:
job
,
step
:
step
,
layer
:
tmp3
}))
{
GEN
.
deleteLayer
({
job
:
job
,
layer
:
tmp3
,
step
:
step
});
}
}
//
if (GEN.INFO_RESULT.gFEAT_HISTsurf > 0) {
//
for(var i=1;i <= GEN.INFO_RESULT.gFEAT_HISTsurf;i++){
//
GEN.createLayer({job:job,layer:_tmp2,context:'misc',type:'document',delete_exists:'yes'});
//
GEN.affectedLayer({affected:'yes',mode:'single',layer:tmp,clear_before:'yes'});
//
GEN.COM('sel_layer_feat',{operation:'select',layer:tmp,index:i});
//
GEN.selCopyOther({target_layer:_tmp2,invert:'no'});
//
GEN.affectedLayer({affected:'yes',mode:'single',layer:_tmp2,clear_before:'yes'});
//
GEN.COM('sel_surf2outline',{width:1});
//
GEN.COM('filter_reset',{filter_name:'popup'});
//
GEN.selectByFilter({feat_types:'arc',polarity:'positive',profile:'all'});
//
if (GEN.getSelectCount() > 0) {GEN.selDelete() } ;
//
var feat = GEN.getFeatures({job:job,step:step,layer:_tmp2});
//
var hash = {};
//
for(var i=0;i < feat;i++){
// for(var k = i+1;k < feat.length
; k++){
//
if ((feat[i].xs == feat[k].xs && feat[i].ys == feat[k].ys) ||
//
(feat[i].xs == feat[k].xe && feat[i].ys == feat[k].ye) ){
//
if(!hash[i+'star']){hash[i+'star'] = {}}
//
hash[i+'star'][x] = feat[i].xs;
//
hash[i+'star'][y] = feat[i].ys;
//
}
//
if ((feat[i].xe == feat[k].xs && feat[i].ye == feat[k].ys) ||
//
(feat[i].xe == feat[k].xe && feat[i].ye == feat[k].ye)) {
//
if(!hash[i+'end']){hash[i+'end'] = {}}
//
hash[i+'end'][x] = feat[i].xe;
//
hash[i+'end'][y] = feat[i].ye;
//
}
//
}
//
}
//
if (Object.keys(hash).length == 0) {
//
GEN.affectedLayer({affected:'yes',mode:'single',layer:tmp1,clear_before:'yes'});
//
GEN.selRefFeat({layers:_tmp2,use:'filter',mode:'touch'});
//
if ( GEN.getSelectCount() > 0 ){
//
GEN.COM('sel_move_other',{target_layer:tmp3,invert:'no',dx:0,dy:0,size:0,x_anchor:0,y_anchor:0,rotation:0,mirror:'none'});
//
var change_scal_x = (1 / cale_x).toFixed(3) - 0;
//
var change_scal_y = (1 / cale_y).toFixed(3) - 0;
//
GEN.affectedLayer({affected:'yes',mode:'single',layer:tmp3,clear_before:'yes'});
//
GEN.selTransform({mode:'axis',oper:'scale',x_anchor:0,y_anchor:0,x_scale:change_scal_x,y_scale:change_scal_y});
//
// {"mode":"axis","oper":"scale","x_anchor":0,"y_anchor":0,"x_scale":1,"y_scale":1}
//
GEN.COM('sel_move_other',{target_layer:tmp1,invert:'no',dx:0,dy:0,size:0,x_anchor:0,y_anchor:0,rotation:0,mirror:'none'});
//
GEN.deleteLayer({job:job,layer:tmp3,step:step});
//
}
//
}
//
}
//
GEN.deleteLayer({job:job,layer:_tmp2,step:step});
//
GEN.deleteLayer({job:job,layer:tmp,step:step});
//
}else{
//
GEN.deleteLayer({job:job,layer:tmp,step:step});
//
if (GEN.isLayerEmpty({job:job,step:step,layer:tmp3})) {
//
GEN.deleteLayer({job:job,layer:tmp3,step:step});
//
}
//
}
// 转回去
...
...
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment