
いつもお世話になっております。
以下のようなスクリプトを書いて、
Illustratorの図形の面積を求めようと思っています。
レイヤごとに、中にあるパスアイテムの面積を総計したものを、
エクセルのシートに書き出すスクリプトです。
一応、動作はするのですが、以下の2点について、
よくわからない挙動をします。
1. 面積が約2倍になってでてくる。
テストで、10 mm × 10 mm の四角形を作り、
その面積を測ったのですが、約200になりました。
何故か、約2倍になってしまいます。
2. 多角形の面積がマイナスで出てくる。
面積を測りたい実際の図形が多角形です。
スクリプティング・ガイドは読んだのですが、
PathItem の Area の「四角形~」というのがよくわかりません。
上の、2点について、回答頂けますよう、
よろしくお願い致します。
Sub レイヤごとのパスアイテムの面積_作成中()
Dim illApp As New Illustrator.Application
Dim myDoc As Illustrator.Document
Dim mm As Single, areaVal As Single
Dim i As Integer
Dim p As PathItem
Dim l As Layer
Set myDoc = illApp.ActiveDocument
mm = 2.834645
i = 1
For Each l In myDoc.Layers
areaVal = 0
If l.PathItems.Count <> 0 Then
For Each p In l.PathItems
areaVal = areaVal + p.Area
Next p
Range("A" & i).Value = l.Name
Range("B" & i).Value = areaVal / mm / mm
i = i + 1
End If
Next l
End Sub
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
だいぶ時間が空いてしまいましたが……
ご使用のIllustratorのバージョンは何でしょうか?
私の場合は、Windows の 9 と 10 で試していて、やはり PathItem.Area が期待の2倍の値になってしまってました。ところが、最近機会があって Windows の CS2 で試したところ、全く同じコードで期待通りの値が返ってきました。
バージョンによって返る値が違うことについての情報・文献が見つからないので、中途半端ですみませんが、参考までに。
No.1
- 回答日時:
この辺りは参考になりませんか?
上記回答ではPathItemsの個数にCountでなくLengthを使っているけど、その辺りの問題は?
非表示のレイヤをスキップしていないけど、非表示レイヤに何か残ってませんか?
ありがとうございます。
上記回答を参考に、スクリプトを組みました。
(最初から明記するべきでした、すいません。)
Countについては、関係ないと思います。
レイヤについては、一つだけですし、存在するパスアイテムもひとつだけです。
(テスト用に、レイヤがひとつ、パスアイテムもひとつというファイルをつくって試してみています。)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
google earth pro をPCで使って...
-
フォトショ、または、イラレで...
-
jww レイヤーグループバーの「...
-
Illustratorのサイズを指定する...
-
オカメインコの羽に黒い線がある
-
グーグルマップに謎の線が出ます
-
Yahooの 画面サイズの変更
-
in Designで一部のページにのみ...
-
Illustratorの文字がバラバラに...
-
AutoCADで電気配線を簡単に描き...
-
円弧の線上にスナップしたい
-
youtubeの下の方のメニュー表示...
-
google spread sheet で拡大表...
-
AutoCadで配管図作成支援のアド...
-
Illustratorで描いた線をでこぼ...
-
jwcadで図形を簡単に水平にする...
-
Auto CAD 2002 弧の長さを指定して
-
HICADのズームイン・ズームアウ...
-
AutoCADで太い線の端を角張らせ...
-
ペンツールで書いた線が印刷さ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
jww レイヤーグループバーの「...
-
Photohopの「ガイド」はコピー...
-
フォトショ、または、イラレで...
-
google earth pro をPCで使って...
-
Illustratorで作成した画像の面...
-
写真の色を薄くする方法
-
マルチキャストが使えるスイッ...
-
Google Earthで写真マークを消...
-
フォトショップエレメンツのツール
-
Illustratorの操作が難しいです...
-
【Illustrator】ファイルを開い...
-
フォトショップとパワートーン
-
G.CREW
-
JWcadのレイヤーグループ表示に...
-
vectorworksでの印刷方法
-
このような白くモヤモヤがつい...
-
グーグルアースで線がいっぱい...
-
設計用語の意味を教えてください。
-
formZから3dsmaxへデータを渡す...
-
Vector Works グレー表示を濃く...
おすすめ情報