나는 종종 직선으로, 중심점을 중심으로 회전하거나, 경로를 따라 각을 이루는 객체의 배열을 만들어야 할 필요성을 느낀다. 순간 나는 조금 머리 수학 한 번에 보통 그것을 할 일을 다른없이 의심 바보 같은 모든 종류의 방법을 사용하고 팔레트 - 변환 내가있어 알고 그것을 할 수있는 바보 같은 방법입니다. Illustrator에서 불가능한 경우 올바른 방법이나 플러그인을 알려주는 사람이 있습니까?
나는 종종 직선으로, 중심점을 중심으로 회전하거나, 경로를 따라 각을 이루는 객체의 배열을 만들어야 할 필요성을 느낀다. 순간 나는 조금 머리 수학 한 번에 보통 그것을 할 일을 다른없이 의심 바보 같은 모든 종류의 방법을 사용하고 팔레트 - 변환 내가있어 알고 그것을 할 수있는 바보 같은 방법입니다. Illustrator에서 불가능한 경우 올바른 방법이나 플러그인을 알려주는 사람이 있습니까?
답변:
Effects-> Distort / Trasnform-> Transform ...으로 이동하십시오. 원하는 사본을 추가하고 배열 컨트롤로 재생하십시오.
이것을 달성하는 몇 가지 방법이 있습니다 ...
가장 빠른 방법은 객체를 복제하는 동안 객체를 이동, 크기 조정 또는 회전하는 것입니다. Windows에서 객체를 복제하려면 'alt'키를 누르고 있습니다 *. 그런 다음 CTRL + D를 눌러 변환 및 복제를 반복 할 수 있습니다.
정밀도를 높이려면 도구 상자에서 변환 도구를 선택하고 Enter를 누르십시오. 그러면 숫자 값을 입력 할 수있는 대화 상자가 나타나고 '복사'버튼이 있습니다. 다시 대화가 끝나면 CTRL + D를 눌러 반복 할 수 있습니다.
블렌드 도구는 객체를 '단계'할 수 있으며, 경로와 일치하도록 객체를 회전시키는 옵션도 있습니다.
'액션'팔레트는 여러 변환을 기록하고 재생할 수 있습니다.
Illustrator는 다양한 언어의 스크립팅을 지원하며, 가장 유연한 솔루션을 제공하지만 일반적으로 배우고 설정하는 데 시간이 더 걸립니다.
* Mac 키 조합은 약간 다를 수 있습니다.
스크립팅을 사용할 수도 있습니다. 예를 들어, 중심에서 임의의 회전 및 위치를 사용하여 20 개의 경로 항목을 만드는 방법입니다.
// creating a document
var doc = app.documents.add();
// adding a new layer
var layer = doc.layers.add();
// variable declarations
var i, ray, displacement, dx, dy;
// creating 20 path items in a loop and setting their parameters
for (i = 0; i < 20; i++) {
// adding a path item and saving it to the "ray" variable
ray = layer.pathItems.add();
// defining path points
ray.setEntirePath([ [0, 0], [0, 10]]);
// generating a random angle for rotation
// note: rotation in Illustrator is counter-clockwise
ray.rotation = Math.round(Math.random() * 360);
// applying rotation to the path, using its bottom as the origin point
ray.rotate(ray.rotation, true, true, true, true, Transformation.BOTTOM);
// moving the path away from the center of the document by "displacement" amount
displacement = 10 + Math.random() * 10;
// calculating x and y coordinates from "displacement"
// (which is basically a hypotenuse)
dx = displacement * Math.sin( (180 + ray.rotation) * Math.PI / 180 );
dy = - displacement * Math.cos( (180 + ray.rotation) * Math.PI / 180 );
// translating the path
ray.translate(dx, dy);
}
그런 다음이 파일을 "somefile.js"로 저장하고 File-> Scripts-> Other script ...로 실행하거나 ExtendScript 툴킷에 붙여 넣은 다음 실행할 수 있습니다.