ファーム書き込みジグを作ってみる。CADデータ編

FreeCADとInkscape、Illustratorの連携でちょっと腑に落ちない点があったので調べてみました。

ちなみに使用しているソフトのバージョンは以下のとおりです。

  • FreeCAD: 0.17.13541
  • Inkscape: 0.92.3
  • Illustrator CC: 2018 22.1 (64-bit)

まず、Inkscapeで面付けしたデータをエディタで見てみます。

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->

<svg
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:cc="http://creativecommons.org/ns#"
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:svg="http://www.w3.org/2000/svg"
   xmlns="http://www.w3.org/2000/svg"
   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
   width="320mm"
   height="180mm"
   viewBox="0 0 320 180"
   version="1.1"
   id="svg8"
   inkscape:version="0.92.3 (2405546, 2018-03-11)"
   sodipodi:docname="ProgStage.svg">

最初の部分にアプリの情報とワークサイズが指定されています。

次にデータ部分を見てみると、

<path
       inkscape:connector-curvature="0"
       style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:0.00035278;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
       d="M 157.055,206.73217 H 41.054987 v 0 z"
       id="Cut055_f0000" />

ちょっと右の方に長いですが、この中で "stroke-width" というのが線幅の指定のようです。かなり細かい数値になっていますが、調べてみると 1pt=25.4/72 (mm) = 0.35277777777777775 mm という値をベースとして、0.001ptなのでその1000分の1という数値になっているようです。

次にこのSVGファイルをIllustrator CCで読み込んで、別のSVGファイルとして保存して中身を見てみます。

<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 22.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
<svg version="1.1"
  id="svg8" inkscape:version="0.92.3 (2405546, 2018-03-11)" sodipodi:docname="ProgStage.svg" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:svg="http://www.w3.org/2000/svg"
  xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 907.1 510.2"
  style="enable-background:new 0 0 907.1 510.2;" xml:space="preserve">
<style type="text/css">
 .st0{fill:#FFFFFF;stroke:#000000;stroke-width:3.527800e-04;}
 .st1{fill:#FF0000;stroke:#FF0000;stroke-width:3.527800e-04;}
 .st2{fill:#FF0000;stroke:#FF0000;stroke-width:3.527800e-04;stroke-opacity:0.7067;}
</style>

同じファイル形式なのにずいぶんと違っていますが、styleのところを見ると、.st0が黒の線、.st1が赤の線、.st2が赤の線らしいことがわかります。
そして実際のデータは、

<path id="Cut055_f0000" inkscape:connector-curvature="0" class="st0" d="M445.2,371.4H116.4l0,0H445.2z"/>

と、class="st0" が指定されていることがわかります。多分これは黒線でしょう。その他のデータをよく見ると、赤の円が2つはst1、1つがst2で指定されていることがわかりました。なんでこんなことになっているのかは不明ですが。
そしてすべてのオブジェクトは必ずclass指定があって、st0~st2の値がつけられていました。

Inkscapeで出力したSVGファイルをIllustratorで読み込むと、アピアランスに表示される線幅が0になっているように見えたのですが、どうやらデータとしては残っているようです。一応安心です。

追記:
ところで、試用版を使っていたAdobe Illustrator CCですが、試用期間終了のお知らせが来ました。
今すぐご購入を、というので価格を見てみると、単体プランで年一括26,160円。仕事や趣味で毎日使うならありかもしれませんが…年に数えるほどしか使わないレベルだと、この価格は正直ありえません。なのでさくっとアンインストールすることにしました。

0 件のコメント:

コメントを投稿

Vimの補完プラグインをインストール。その4

Vimの補完プラグインをインストール。その3 で、 ddc-tabnine が使えそうです、などと書いたのですが、早速やってみました。 まず、tabnineのバイナリを用意しないといけません。がどうにもTabNineのサイトがわかりにくいので、 tabnine-nvim にあるダ...