◆- Adobe插件与脚本区 主要讨论Adobe插件开发与软件脚本撰写

发表新主题 关闭主题
 
只看楼主 主题工具
旧 2019-12-10, 20:42     #1
songzongsen songzongsen 当前离线
正式会员
等级: 四袋长老
帅哥 级别:25 | 在线时长:738小时 | 升级还需:42小时级别:25 | 在线时长:738小时 | 升级还需:42小时级别:25 | 在线时长:738小时 | 升级还需:42小时级别:25 | 在线时长:738小时 | 升级还需:42小时
 
Uid: 569044
注册日期: 2017-06-17, 16:29
来自: 河北衡水
年龄: 35
帖子: 342
感谢: 23
24 个帖子获得 30 次感谢
现金: 450金币
资产: 470金币
声望: 10 songzongsen 向着好的方向发展
songzongsen songzongsen 当前离线
正式会员
等级: 四袋长老
帅哥 级别:25 | 在线时长:738小时 | 升级还需:42小时级别:25 | 在线时长:738小时 | 升级还需:42小时级别:25 | 在线时长:738小时 | 升级还需:42小时级别:25 | 在线时长:738小时 | 升级还需:42小时
 
Uid: 569044
注册日期: 2017-06-17, 16:29
来自: 河北衡水
年龄: 35
帖子: 342
感谢: 23
24 个帖子获得 30 次感谢
现金: 450金币
资产: 470金币
声望: 10 songzongsen 向着好的方向发展
默认 求助大神,AI有没有能把选择的多个对象,随机旋转不能角度的脚本,我这有一个,能修改一下也可,多谢   



这个脚本是统一旋转到一个角度的,就是最上面子图的那个对象的角度,能否修改一下,把所有对象都随机旋转一下角度,多谢
还有求助一下,有没有把对象改随机大小的脚本,保持比例
doc = app.activeDocument;
sel = doc.selection;

first = 1;
ang = 0;
for(i=0; i<sel.length; i++)
{
if(sel[i].typename == "GroupItem" || sel[i].typename == "PathItem" || sel[i].typename == "CompoundPathItem")
{
currGroup = sel[i];

getFP = FindFirstPath(currGroup);
currpath = getFP[1];

if(getFP[0] == 1)
{
p1 = currpath.pathPoints[0].anchor;
p2 = currpath.pathPoints[1].anchor;

deltax = p1[0]-p2[0];
deltay = p1[1]-p2[1];

currang = Math.atan(deltay/deltax);
if(deltax<0)
currang+=Math.PI;

if(first)
{
first = 0;

ang = currang;
}
else
{
currGroup.rotate((ang-currang)*180/Math.PI);
}
}
}
}

function FindFirstPath(workGroup)
{
if(workGroup.typename == "PathItem")
return [1, workGroup];

if(workGroup.typename == "CompoundPathItem")
return [1, workGroup.pathItems[0]];

nSubPathes = workGroup.pathItems.length;
if(nSubPathes > 0)
return [1, workGroup.pathItems[0]];

nSubPathes = workGroup.compoundPathItems.length;
if(nSubPathes > 0)
return [1, workGroup.compoundPathItems[0].pathItems[0]];

nSubGroups = workGroup.groupItems.length;
if(nSubGroups==0)
return [0, 0];
var currRet = [0, 0];
for(iGroup=0; iGroup<nSubGroups; iGroup++)
{
currRet = FindFirstPath(workGroup.groupItems[iGroup]);
if(currRet[0]==1)
break;
}
return currRet;
}
songzongsen 当前离线  
旧 2019-12-11, 08:42   只看该作者   #2
calvin530126 的头像
calvin530126 calvin530126 当前离线
VIP会员
等级: 七袋长老
级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时
 
Uid: 69149
注册日期: 2008-05-04, 09:57
帖子: 2843
感谢: 115
1677 个帖子获得 3902 次感谢
精华: 13
现金: 15585金币
资产: 17462金币
声望: 23 calvin530126 向着好的方向发展


calvin530126 calvin530126 当前离线
VIP会员
等级: 七袋长老
级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时
calvin530126 的头像
 
Uid: 69149
注册日期: 2008-05-04, 09:57
帖子: 2843
感谢: 115
1677 个帖子获得 3902 次感谢
精华: 13
现金: 15585金币
资产: 17462金币
声望: 23 calvin530126 向着好的方向发展


默认

引用:
作者: songzongsen 查看帖子
这个脚本是统一旋转到一个角度的,就是最上面子图的那个对象的角度,能否修改一下,把所有对象都随机旋转一下角度,多谢
还有求助一下,有没有把对象改随机大小的脚本,保持比例
doc = app.activeDocument;
sel = doc.selection;

first = 1;
ang = 0;
for(i=0; i<sel.length; i++)
{
if(sel[i].typename == "GroupItem" || sel[i].typename == "PathItem" || sel[i].typename...
//随机缩放///////////////////////////////////////////////////////////
aDoc = app.activeDocument;
aSel = aDoc.selection;
nSel = aSel.length;

opMin = Number(prompt("最小缩小比 (0-1000%)", 0));
opMax = Number(prompt("最大放大比 (0-1000%)", 200));

if(opMin > opMax)
{
temp = opMin;
opMin = opMax;
opMax = temp;
}
if(opMin<0)
opMIn = 0;
if(opMax>1000)
opMax = 1000;

for(i=0; i<nSel; i++)
{
resScale = Math.floor(Math.random() * (opMax - opMin + 1)) + opMin;
aSel[i].resize(resScale, resScale);
}
//(END)随机缩放///////////////////////////////////////////////////////////


//随机不透明度///////////////////////////////////////////////////////////
aDoc = app.activeDocument;
aSel = aDoc.selection;
nSel = aSel.length;

opMin = Number(prompt("最小不透明度 (0-100)", 0));
opMax = Number(prompt("最大不透明度 (0-100)", 100));

if(opMin > opMax)
{
temp = opMin;
opMin = opMax;
opMax = temp;
}
if(opMin<0)
opMIn = 0;
if(opMax>100)
opMax = 100;

for(i=0; i<nSel; i++)
{
aSel[i].opacity = Math.floor(Math.random() * (opMax - opMin + 1)) + opMin;
}
//(END)随机不透明度///////////////////////////////////////////////////////////

//随机旋转///////////////////////////////////////////////////////////
aDoc = app.activeDocument;
aSel = aDoc.selection;
nSel = aSel.length;

opMin = Number(prompt("最小旋转角度 (0-180)", 0));
opMax = Number(prompt("最大旋转角度 (180-360)", 360));

if(opMin > opMax)
{
temp = opMin;
opMin = opMax;
opMax = temp;
}
if(opMin<0)
opMIn = 0;
if(opMax>1000)
opMax = 1000;

for(i=0; i<nSel; i++)
{
resRotate = Math.floor(Math.random() * (opMax - opMin + 1)) + opMin;
aSel[i].rotate(resRotate, resRotate);
}
//(END)随机旋转///////////////////////////////////////////////////////////
上传的附件
文件类型: zip random script.zip (2.7 KB, 34 次查看)
calvin530126 当前离线  
右列会员因为此帖价值甚高向 calvin530126 表示感谢:
songzongsen (2019-12-11)
旧 2019-12-11, 08:51   只看该作者   #3
songzongsen songzongsen 当前离线
正式会员
等级: 四袋长老
帅哥 级别:25 | 在线时长:738小时 | 升级还需:42小时级别:25 | 在线时长:738小时 | 升级还需:42小时级别:25 | 在线时长:738小时 | 升级还需:42小时级别:25 | 在线时长:738小时 | 升级还需:42小时
 
Uid: 569044
注册日期: 2017-06-17, 16:29
来自: 河北衡水
年龄: 35
帖子: 342
感谢: 23
24 个帖子获得 30 次感谢
现金: 450金币
资产: 470金币
声望: 10 songzongsen 向着好的方向发展
songzongsen songzongsen 当前离线
正式会员
等级: 四袋长老
帅哥 级别:25 | 在线时长:738小时 | 升级还需:42小时级别:25 | 在线时长:738小时 | 升级还需:42小时级别:25 | 在线时长:738小时 | 升级还需:42小时级别:25 | 在线时长:738小时 | 升级还需:42小时
 
Uid: 569044
注册日期: 2017-06-17, 16:29
来自: 河北衡水
年龄: 35
帖子: 342
感谢: 23
24 个帖子获得 30 次感谢
现金: 450金币
资产: 470金币
声望: 10 songzongsen 向着好的方向发展
默认

引用:
作者: calvin530126 查看帖子
//随机缩放///////////////////////////////////////////////////////////
aDoc = app.activeDocument;
aSel = aDoc.selection;
nSel = aSel.length;

opMin = Number(prompt("最小缩小比 (0-1000%)", 0));
opMax = Number(prompt("最大放大比 (0-1000%)", 200));

if(opMin > opMax)
{
temp = opMin;
opMin = opMax;
opMax = temp;
}
...
大神果然厉害,不知道画板内的随机摆放能不能实现?我现在的工作是有几百个画板,每个画板里有6-15个相同大小的图标,要求是每个画板里的图标随机放大缩小,随机旋转角度,画板内随机摆放……最后一步用脚本能不能实现?
songzongsen 当前离线  
旧 2019-12-11, 09:26   只看该作者   #4
calvin530126 的头像
calvin530126 calvin530126 当前离线
VIP会员
等级: 七袋长老
级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时
 
Uid: 69149
注册日期: 2008-05-04, 09:57
帖子: 2843
感谢: 115
1677 个帖子获得 3902 次感谢
精华: 13
现金: 15585金币
资产: 17462金币
声望: 23 calvin530126 向着好的方向发展


calvin530126 calvin530126 当前离线
VIP会员
等级: 七袋长老
级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时级别:144 | 在线时长:21397小时 | 升级还需:208小时
calvin530126 的头像
 
Uid: 69149
注册日期: 2008-05-04, 09:57
帖子: 2843
感谢: 115
1677 个帖子获得 3902 次感谢
精华: 13
现金: 15585金币
资产: 17462金币
声望: 23 calvin530126 向着好的方向发展


默认

引用:
作者: songzongsen 查看帖子
大神果然厉害,不知道画板内的随机摆放能不能实现?我现在的工作是有几百个画板,每个画板里有6-15个相同大小的图标,要求是每个画板里的图标随机放大缩小,随机旋转角度,画板内随机摆放……最后一步用脚本能不能实现?
这些脚本都是网络上搜寻的,
只是稍做汉化,
至于随机摆放,
可能就不是几行代码就能完事,
需考虑到不互相重叠,
不会跑到画板外..........................
calvin530126 当前离线  
旧 2019-12-11, 09:31   只看该作者   #5
songzongsen songzongsen 当前离线
正式会员
等级: 四袋长老
帅哥 级别:25 | 在线时长:738小时 | 升级还需:42小时级别:25 | 在线时长:738小时 | 升级还需:42小时级别:25 | 在线时长:738小时 | 升级还需:42小时级别:25 | 在线时长:738小时 | 升级还需:42小时
 
Uid: 569044
注册日期: 2017-06-17, 16:29
来自: 河北衡水
年龄: 35
帖子: 342
感谢: 23
24 个帖子获得 30 次感谢
现金: 450金币
资产: 470金币
声望: 10 songzongsen 向着好的方向发展
songzongsen songzongsen 当前离线
正式会员
等级: 四袋长老
帅哥 级别:25 | 在线时长:738小时 | 升级还需:42小时级别:25 | 在线时长:738小时 | 升级还需:42小时级别:25 | 在线时长:738小时 | 升级还需:42小时级别:25 | 在线时长:738小时 | 升级还需:42小时
 
Uid: 569044
注册日期: 2017-06-17, 16:29
来自: 河北衡水
年龄: 35
帖子: 342
感谢: 23
24 个帖子获得 30 次感谢
现金: 450金币
资产: 470金币
声望: 10 songzongsen 向着好的方向发展
默认

引用:
作者: calvin530126 查看帖子
这些脚本都是网络上搜寻的,
只是稍做汉化,
至于随机摆放,
可能就不是几行代码就能完事,
需考虑到不互相重叠,
不会跑到画板外..........................
好的,非常感谢,那就不搞了,我们上人就好了前面两个脚本已经省很多事了
songzongsen 当前离线  
发表新主题 关闭主题


发帖规则
不可以发表主题
不可以回复帖子
不可以上传附件
不可以编辑自己的帖子

论坛启用 vB 代码
论坛启用 表情图标
论坛启用 [IMG] 代码
论坛禁用 HTML 代码


律师声明:本站内容,均具有版权,未经书面授权,禁止转载,严禁镜像,违者承担一切后果!
论坛广告报价   广告联系及办理企业会员服务QQ:57880388 站务管理QQ:35529388


所有时间均为 +8, 现在的时间是 2025-01-04 15:49.

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions, Inc.
 
Copyright © 2004-2022