クリエイター手抜きプロジェクト[477]Adobe Illustrator CS6〜CC 2015編 囲まれた四角形内にある図形などを選択する/古籏一浩

投稿:  著者:  読了時間:6分(本文:約2,600文字)



今回は、囲まれた四角形内にある図形などを選択する、Illustrator用のスクリプトです。

以下のスクリプトは、選択した四角形内にあるすべての図形を選択します。四角形は複数選択することもできます。





// 囲まれた四角形内にある図形などを選択する(四角形の選択解除なし)
(function (){
var selObj = app.activeDocument.selection;
for(var i=0; i<selObj.length; i++){
var gb = selObj[i].geometricBounds;
var x1 = gb[0];
var y1 = gb[1];
var x2 = gb[2];
var y2 = gb[3];
// 内包されてるか全ての図形を調べる
var pObj = app.activeDocument.pageItems;
for(var j=0; j<pObj.length; j++){
var gb = pObj[j].geometricBounds;
var px1 = gb[0];
var py1 = gb[1];
var px2 = gb[2];
var py2 = gb[3];
if ((px1>=x1) && (py1<=y1) && (px2<=x2) && (py2 >=y2)){
pObj[j].selected = true;
}
}
}
})();


上記のスクリプトは、最初に選択した四角形が選択されたままになります。最初に選択した四角形の選択を解除するスクリプトは、以下のようになります。

// 囲まれた四角形内にある図形などを選択する(四角形の選択解除なし)
(function (){
var selObj = app.activeDocument.selection;
for(var i=0; i<selObj.length; i++){
var gb = selObj[i].geometricBounds;
var x1 = gb[0];
var y1 = gb[1];
var x2 = gb[2];
var y2 = gb[3];
// 内包されてるか全ての図形を調べる
var pObj = app.activeDocument.pageItems;
for(var j=0; j<pObj.length; j++){
var gb = pObj[j].geometricBounds;
var px1 = gb[0];
var py1 = gb[1];
var px2 = gb[2];
var py2 = gb[3];
if ((px1>=x1) && (py1<=y1) && (px2<=x2) && (py2 >=y2)){
pObj[j].selected = true;
}
}
selObj[i].selected = false;
}
})();

ちなみに、四角形を選択しなくても、他の図形を選択しても動作はします。ただし、そのパス全体を囲むバウンディングボックス内にあるすべての図形が選択されます。


【古籏一浩】openspc@alpha.ocn.ne.jp
http://www.openspc2.org/

NHKの連ドラ「とと姉ちゃん」が終わった。当初予想していた話とは違っていた。番組名からして、きっとこれは貧乏になった三姉妹が一発逆転をかけてtoto BIGを購入し、6億円を獲得する話かと。

億万長者になったら、爆食いして体型がトドになりトド姉ちゃんと呼ばれると。しかし、6億円をあっという間に使い果たし生活はどん底に。だが、そんなことではめげない博打三姉妹が、復活をかけて再度toto BIGを購入し、何と再び6億円を獲得しウハウハな生活に戻るのであった……。

という話じゃなかったようだ。やはり心を入れ替えて働くのがいいかなあ、と。しかし、男女の心を入れ替えるだけで100億円だからなあ……と思ってしまう
(君の名は。)

米国の大統領候補トランプ氏とヒラリー氏の心が入れ替わっても、ほとんど変わらない気がする……。編集長と濱村さんの心が入れ替わったらどうなるのか……。

・IchigoLatteを楽しもう
http://www.openspc2.org/reibun/IchigoLatte/1.0.0/

IchigoLatte、ようやく1.0.0β4まできました。ハードウェアの第一階層にJavaScript OSが搭載されているのでFirefox OSのような低速なことはありません。なお、限定版のIchigoLatte基板も販売されています。(数量限定)

興味のある方はぜひどうぞ。

http://ichigolatte.shizentai.jp/

レトロゲーマーなら知ってると思いますが、懐かしのファミコンが手のひらサイズで復活。ゼビウスがないけど、アイスクライマーとエキサイトバイク、ギャラガがあれば十分かなあ。気晴らしにグラディウスといった感じで。

それにしても、ニンテンドークラシックミニも、IchigoLamなど小型できたのはUSBからの電源供給(MicroUSB)があるからだと思います。これもiPhone/Androidなどスマートフォンが普及したおかげです。

・ニンテンドークラシックミニ(FAMILY COMPUTER)
https://www.nintendo.co.jp/clv/index.html

・みんなのIchigoJam入門 BASICで楽しむゲーム作りと電子工作
http://www.amazon.co.jp/dp/4865940332/

・Premiere Pro & Media Encoder自動化サンプル集
http://www.amazon.co.jp/dp/4802090471/

・JavaScriptによるデータビジュアライゼーション入門
http://www.amazon.co.jp/dp/4873117461/

・Photoshop自動化基本編
http://www.amazon.co.jp/dp/B00W952JQW/

・Illustrator自動化基本編
http://www.amazon.co.jp/dp/B00R5MZ1PA/

・Adobe JavaScriptリファレンス
http://www.amazon.co.jp/dp/B00FZEK6J6/

・4K/ハイビジョン映像素材集
http://www.openspc2.org/HDTV/

・クリエイター手抜きプロジェクト
http://www.openspc2.org/projectX/