chowe
http://chowe.blog106.fc2.com/
World Wide Weblog
スポンサーサイト
-------- -- --:--
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

別窓 | スポンサー広告 | top↑
EPSで結果の図を書き出しちゃう俺様が来ましたよ。
2010-09-14 Tue 00:21
マスタ時代のボスがやっぱりEPS出力してらしたんですけどね。
まあ彼は厳密計算した結果とか超ロバスト計算した結果とか扱ってましたんでね。
ラスタ表示ではいかんわけですが。
そういえば昔きれいでない出力の画像持ってったら怒られましたっけ。
今はちょっと進歩しました、いや、どうだろ。。


EPS出力なんて初めてです。
まさかVC使っててEPSで吐くことになるとは思わなんだ。
Webで拾い集めた知識なので正確さや一貫性はどうかと思いますが、貴重な時間と手間の結晶であることには変わりないのでとりあえずメモ。

---
* EPSはテキストである。
* えっとね、確か左上が原点(0,0)でしたよ。なのでプリミティブ描画の際は座標変換プリーズ。
* RGBでカラー指定して、円・直線を描くための書式。
* 多分ミニマム。何か抜けてるかも。とりあえず表示はできます。でも何の責任も負わない。
* C言語様式。

---
fprintf( fp, "%%!PS-Adobe-3.0 EPSF-3.0\n" ); // わかりません。おまじない的な。
fprintf( fp, "%%%%Title: %s\n", filename ); // titleってあるからにはほんとはタイトルにするべきなんでしょう
fprintf( fp, "%%%%Creator: createrName\n" ); // 作成者名でおねがいします
fprintf( fp, "%%%%Pages: 0 1\n" );
fprintf( fp, "%%%%BoundingBox: 0 0 %d %d\n", nx, ny ); // (x0, y0, x1, y1): 原点(x0, y0), 右下(x1, y1)
fprintf( fp, "%%%%EndComments\n" );

/* ここから描画 */
/* まずは僕円描きたい */
fprintf( fp, "%f %f %f setrgbcolor\n", R, G, B );
fprintf( fp, "%f %f %f 0 360 arc stroke\n", centerX, centerY, radius ); // 円弧を書くコマンドです。 0 360 は始点と終点の偏角

/* 次に直線 */
fprintf( fp, "%f %f %f setrgbcolor\n", R, G, B );
fprintf( fp, "%f %f moveto %f %f lineto stroke\n", pX, pY, qX, qY ); // ご存知始点と終点

fprintf( fp, "showpage\n" ); // 最後にこれをつけるんだそうです


---


最初に%がうざいくらいついてるのは、ほら、%って特殊文字だからさ。
特殊文字には\つけたら万事解決かと思いきやそうではなかった。
\には\を%には%を・・・!

あ~あぁ、何の図出してるのか同じ分野にいる(or いた)人には分かっちゃいますねぇ。
特に先日の、プロジェクト定例会にいた人たち。
これそのうちNAGOYAとかでお目にかかるんじゃないかと・・・、わかんないけど。
いやまだ出さないかな。


***
どうでもいいが今回のタイトルは特に下の弟に残念がられそうだ
別窓 | 研究 | コメント:0 | トラックバック:0 | top↑
<<フィナンシェ作りました | ―*暫定住居*― | バイオリン教室体験>>
この記事のコメント
コメントの投稿
 

管理者だけに閲覧
 

この記事のトラックバック
| ―*暫定住居*― |
copyright © 2006 ―*暫定住居*― all rights reserved. powered by FC2ブログ. template by [ALT DESIGN].
/
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。