Answers:
看起来好像没有一种方法可以永久更改对象的旋转点。您可以使用“旋转”工具或“自由变换”来临时更改它,但是一旦更改为其他工具,它将重置为对象的中心。
如果仅使用选择工具而不是“旋转”或“变换每个”进行简单的旋转,它将使用边界框。否则,您将陷入对象的计算中心。
有与方式旋转工具(R)
准备好后,按“复制”按钮,然后按Ctrl+ D所需的transform again
次数。
编辑:
理解对象应同时旋转和移动(或缩放)。如何添加“隐藏”(无线无填充)图稿以变换边界框,使中心位于您想要的位置呢?然后,您可以transform each
按照自己喜欢的任何方式来分组。
如果您不喜欢隐藏的艺术品,则可以将带有隐藏对象的对象作为符号。然后,您可以对其进行变换/旋转/缩放,最后编辑该符号。这样,所有实例都会得到相应更新。但是,这可能会更改每个实例的位置。
我意识到我对此有点迟了,但是如果其他人想知道,有一种解决方法可能会有所帮助。我可以创建一个单点对象(例如,只需使用钢笔工具单击),然后将其与我希望能够控制旋转中心的对象组合在一起。现在,新组在原始对象和“单点”对象之间有一个中心,因此我可以控制它的位置。我只是在操纵组而不是对象。
请注意,除了使对象只有一个点之外,还可以创建常规形状并使它不可见。
transform-each
,我将使用直接选择工具(A
)选择一个绿色矩形,然后select > same > fill color
将其全部删除。使清理变得容易,并且意味着之后无需取消分组,也可以避免意外取消分组的风险。
您可以编写脚本。三角形的中心是重心坐标,仅是矢量平均值。所以:
#target illustrator
// CC BY SA Janne Ojala 2014
function rotate_around_vertex_average(obj, ang) {
var points = obj.pathPoints;
var x = 0;
var y = 0;
for(var i=0; i < points.length; i++){
point = points[i];
x += point.anchor[0];
y += point.anchor[1];
}
var x_c = x/points.length;
var y_c = y/points.length;
var rot = getRotationMatrix(15);
var mov = getTranslationMatrix(x_c, y_c);
var inv = invertMatrix(mov);
var mtx = concatenateMatrix(inv, rot);
var mtx = concatenateMatrix(mtx, mov);
obj.transform(mtx, 1, 1, 1, 1, 1, Transformation.DOCUMENTORIGIN);
}
objs = app.selection;
for(var i in objs){
obj = objs[i];
rotate_around_vertex_average(obj, 15);
}
在Illustrator CC 2014中:
选择对象
按R键
移动参考点
(使用“旋转工具”而不是“对象”>“变换”>“旋转或自由变换”)
https://helpx.adobe.com/illustrator/using/rotating-reflecting-objects.html#rotate_objects
我找到了一种方法。Adobe确实需要像Flash或Animate中的旋转一样使此操作更容易。我需要从中心点旋转一些元素。我无法将它们分组在一起,因为我想相互依赖地旋转它们并设置自定义中心点。
在执行任何操作之前,请选择要旋转的矢量形状,将其复制到另一层中并使其具有另一种颜色,以便您可以轻松看到它们。锁定此层。
现在以我为例,我有两个要旋转的元素。选择每个,将其拖到“符号”面板中并命名。单独对所有形状执行此操作。
双击画板上的符号以编辑符号定义,您将在洋葱皮状视图中看到它。放置它,使黑色十字准线位于您希望自定义中心点所在的位置。
现在,通过单击后退箭头退出此模式,然后轻推图稿,使其位于您要复制的位置。
删除复制层。
Adobe需要这样做,以便您可以轻松使用旋转工具并永久更改矢量插图的中心点,以便在取消选择某些内容时不会将其重置为中心。