サイトアイコン CAD日記

SXF複合曲線

SXFネタは久しぶりだ。

複合曲線=composite_curve

SFCやP21の中では、こう記述されている。

ハッチングの輪郭情報は、この複合曲線によって表現される。

複合図形に似ているけど、一線を画している。

複合曲線として登録可能な図形は、円弧、楕円弧、折線、

スプライン曲線に限られる。

線分、円、楕円がダメな理由がよくわからん。

円1個に対してハンチングを書いてある場合、

わざわざ円弧2個に分解してSXFに書き出さなきゃならん。

なんのこっちゃと嘆きつつ、コンバータを作ったのは記憶に新しいところだ。

たぶん、AP202だかのルールに従ったからなんだろーな。

それから「構成要素は、接続し閉じている必要があり、交差、重なりは許さない」

なんて仕様書に書いてあるんだけど、気の利かないCADから書き出された

SXFの場合、構成要素が繋がってる順番とは関係なくバラバラにくることがある。

最初の要素から、繋がる順に要素をソートするなんていう、

処理を入れたのは苦い思い出だ。

接続し、という状態もいろいろある。

座標がぴったりと合っているとは限らないので、ある程度許容誤差が必要になる。

円弧なんかだと、点を座標で持ってるわけじゃないから計算誤差が出るのよ。

中心点と半径と開始角から、開始点を求めるから。

そうすると、輪郭が繋がってないハッチングが出来て、

ハッチング線が輪郭からはみ出たりする。

そして、検定中止で不合格。

どんよりとした気持ちで検定会場を後にする。

そんなことを何度か経験した。

ハッチングには、4種類のタイプがある。

塗り、ユーザー定義、パターン、既定義。

塗りは単純、特定の色で塗り潰すってもの。

ユーザー定義は、線と線の間隔や線の角度を任意に指定できる。

パターンは、既定義シンボルをずらーっと並べたもの。

既定義シンボルは2個しかないから、大して意味ないかな。

(馬踏み、45度重ねあじろ)

いつか増やそうという意向でまず2個つくったんだろうけど、

その先が続かなかった。

既定義はV3でしか使えないもので、Area_controlとも呼ばれている。

属性付加機構において、空白の領域を定義するものなんだけど、

何に使うんだろうか。

複合曲線とは関係ないけど、もう1つ書いておこう。

#10 = pre_defined_colour_feature(¥’white¥’)

SFC内の記述を見ると、こんな風に書いてある。

既定義色の白が使われてるんだよってことなんだけど、

問題は、white の前後にある「¥’」(全角で書いたけど本当は半角) 。

C言語では、文字列としてシングルコーテーションそのものを表すのに

その前に¥マークを書くわけさ。

Cだったらそれいいけど、テキストファイルであるSXF内にそんな記述を

許しているあたり、何だかはずかしいね。

読み書きするのは、共通ライブラリだからそのフェーズさえ

合ってれば実害はないんだけどね。

なんかへんだよ。

こうでなければならない、という理由はないはずだからさ。

長く書いてしまったようだ。

今日、SXFとBLOGでググってみたら、けっこう上位になってたから、

そんじゃ、久しぶりにSXFネタいってみようってところ。

モバイルバージョンを終了