AFsoft World

AF日記。 コンピュータ・CAD・漫画・アニメ・ゲーム・スポーツ等についてのたわいもない話、などなど。

プログラミング

疲れた・・・

Delphi XE4 ・FMX(FireMonkey)にて
Jw_cad ビューワーの修正(特に文字関連)を行っていましたが
う〜ん
ようやく そこそこ綺麗に見えるようにはなったかな?

FMX(=DirectX=WindowsGDIではない)では
縦字フォント(@付フォント)が使えない
という訳で、通常フォントを90°傾けて って事になるのですが
Jw_cad での文字間隔=0.01=プロポーショナルフォント
というのが Ver.10 にて
Jw_cad での文字間隔=0.001~0.01=プロポーショナルフォント
に拡張され、且つ、
プロポーショナルフォント利用時は文字幅・文字高が文字単位で異なる状態となり、フォントの上下に大きい空白が付けられる、更に制御文字やら何だかんだで、超面倒臭い事にwww 縦字の場合は、Jw_cad 自身がマトモな表示をしてくれないwww
等もあって、まぁドタバタしてましたが
それなりに綺麗に見えるようにはなりましたw
ほっと一息です

Direct2Dも確かそうだったと思いますが
FMX=DirectX(Macやモバイルの場合は別)では
縦字フォント「@〜」が使えない、というのが
かなりの面倒臭さを発揮して、正直、
・・・萎えるぜ・・・
みたいな感じなんだけどw
ま、最終的には、Jw_cad 自身も綺麗に表示されていないんだから別にいいかw という事で私は落ち着きましたwww

あ〜〜〜〜!!! 制御文字 うぜぇぇぇえええ!!!
www
作者氏も、よくもまぁこんなの作ったなーw
面倒臭いったら ありゃしないwww

AutoCADのマルチテキストの書式んとこを作った人も まぁ 大変だったんだろうなぁ〜 と 改めて思うwww

あ、私が昔作ってたDOS版ドローソフトは、こゆ制御文字のようなものはありません だって 面倒臭いんだもんw 公差文字等は別文字データにしてたしー 重ね文字?考えた事もないw

プログラマの皆さま、ほんと、お疲れ様です

ODA FileConverter 27.1.0

久しぶりに ODAサイトに行ってみると
「ODA File Converter」のバージョンが
27.1.0 になっていましたので
ダウンロードしてインストールしました
https://www.opendesign.com/guestfiles/oda_file_converter

当方の「AFjww2dxf」「AFdxf2jww」では
この「ODA File Converter」を起動して DXF〜DWG変換を行うようになっていますので、インストールした場所(フォルダ)を変更した場合は、フォルダ名をキー入力で編集、或いは、[参照]ボタンを押して再設定する必要はありますが、軽く動作チェックしましたが別段問題無さそうです

[Pcata] 画面描画での文字描画の見直し

当方 Pcata サイトでの
以下の Jw_cad 外部変形の Ver.10対応版
画面描画を行うタイプにて
Ver.10.02.1 にて
・Unicode文字対応(サロゲートペア文字含む)
・文字間隔が 0.001mm〜0.01mm の場合は
 プロポーショナルフォント扱い
となっていますが、これになるべく沿って描画するよう修正しました

※埋め込み文字は展開するようにしていますが、外部変形では読み込めない情報については正確に表示されません(図面メモ、作図時間等)
※Jw_cad では半角文字の縦文字表現がおかしいですが、こちらでは文字が重ならないよう表示しています、が、その分、文字が長く表示されます
※一部のUnicode文字は「・」等に文字化け表示されます

p108_ペン入力?2
p118_塗りハッチ
p119_塗りハッチ2
p120_ゴミ探し
p121_文字探し
p141_隙間探し
p189_画像を探せ!
p190-手書き線
p191-手書き線2
p195-SXFユーザー線種を検索

[JWW] 文字間隔 0.001〜0.01時の制御文字

現在、当方の外部変形で
別画面に図面を表示させるタイプのものでの
文字描画のプログラムを修正中なのですが
・・・
プロポーショナルフォント使用の際には
文字間隔を 0.001〜0.01 にする
という Jw_cad でのお約束がありますが
その際
制御文字(^b、^B、^n、^o、^w)を使った際の
Jw_cad画面描画がかなり乱れるという問題がありますが
これは
同じように 乱れた状態を復元すべきなのか
それとも
想定通りの上手く表示される状態にすべきなのか
若干 悩み中ですw
(いや、普通に 後者パターンにしますけど)

昔から、半角文字の縦文字表現が重なって表示されておかしい、ってのはありますけれども、それについては、文字全長が長くなってしまいますが、重ならないよう表示するようにしてます

ところで
Windowsでの「@」付の文字フォントって
半角文字の縦文字表現って、入ってないんですねー
いやー 気づきませんでしたw
仕方が無いので半角文字を全角文字に変換して幅を半分にする、みたいなコーディングをしましたが〜(ちなみに Jw_cad はもともと縦字作図の際、「@」付フォントを使用していないみたいですがー)

まぁそれはともかく
文字描画がそこそこ納得できる程度に描画出来るようになったら、また、Pcata のそのタイプの外部変形を順次変更作業していく予定です

JWクリボス 2.01

というわけで
Jw_cad Ver.10.x対応の「JWクリボス Ver.2.01」
をアップロードしました
当方のシェアウェアコーナーからどうぞ

ZIP圧縮していますので、ダウンロード後、
ZIP解凍(展開)を行って、
〜.exe ファイルをエクスプローラのプロパティで[ブロック解除]して
(Windows11の場合は、セキュリティ「□許可する」チェックを行い)
JWクリボスを入れているフォルダへ上書きコピーして下さい。

データ、キーDLL、その他は入ってません。

変更箇所は、<倍率・角度>を指示して、図形をクリックして貼り付ける際の作図の不具合を修正、です。但し、楕円の円環ソリッドの内径についてはうまく処理出来ていません。正直、どうやればうまく行くのかサッパリなので、円環ソリッドを倍率掛けてちゃんとコピペしたい場合は、Jw_cadの基本機能を利用して下さい。

Pcata 外部変形 Ver.10対応終了

当方 Pcataサイトにて公開している Jw_cad 外部変形ですが、本日にて、Ver.10対応の作業終了、という事で〜

結構な量があって時間は掛かりましたが〜

ところどころ怪しい所はあるかもしれませんがw

これで当分、外部変形プログラミング作業から離れます

ODA FileConverter 26.12.0

久しぶりに ODAサイトに行ってみると
「ODA File Converter」のバージョンが
26.12.0 になっていましたので
ダウンロードしてインストールしました
https://www.opendesign.com/guestfiles/oda_file_converter

当方の「AFjww2dxf」「AFdxf2jww」では
この「ODA File Converter」を起動して DXF〜DWG変換を行うようになっていますので、インストールした場所(フォルダ)を変更した場合は、[参照]ボタンを押して再設定する必要はありますが、軽く動作チェックしましたが別段問題無さそうです

本日のPcata作業

という訳で Pcata外部変形の Ver.10対応作業、
本日は
 p131・p132
を修正してアップロードしました

本日のPcata作業

という訳で Pcata外部変形の Ver.10対応作業、
本日は
 p129・p130
を修正してアップロードしました

p129 は、JWFファイルからレイヤ名の読み込みを出来るようにしています

本日のPcata作業

という訳で Pcata外部変形の Ver.10対応作業、
本日は
 p126・p127・p128
を修正してアップロードしました

なお、バッチファイルのファイル名を「p126.bat」等のように、以前とは違って内容名をカットしていますが、これは、外部変形一覧に内容名が表示されるから別にいいかな、という事と
https://afsoft.livedoor.blog/archives/52337806.html
の件で、バッチファイル名が長いとGCOM記述が難しくなる、という事が理由です

Pcata シェアウェア外部変形の Ver.10対応作業

という訳で日々、少しずつ作業をしていますが
取り合えず1か月の作業ですが
p100〜p125 のバージョンアップ対応作業が
終わったと思います(多分)

結構、思いのほか作業は捗ってません

出来た、と思ってアップロードしたあと
後になってミスに気付いて修正して
再度アップロード、という事が結構あります

1か月で 約1/4かぁ
終わるまで、あと3か月は掛かるかもしれません

単純なコピペではなくて
1つ1つ、かなりの修正作業を加えてますので
なかなか進みませんね〜w

[Pcata] Ver.10用外部変形にて(2)

Pcataサイトにて公開している
Jw_cad Ver.10 用の外部変形で
半角カナ文字が扱えないというバグがあり
シェアウェアのものを修正してアップロードしました
(p100〜p105)
 
※従来の 〜Ver.8.25a用のものは問題ありません

[Pcata] Ver.10用外部変形にて

Pcataサイトにて公開している
Jw_cad Ver.10 用の外部変形で
半角カナ文字が扱えないというバグがあり
フリーのものは修正してアップロードしました
 
シェアウェアの方はまだ作業出来ていませんが
順次 修正していきます

※従来の 〜Ver.8.25a用のものは問題ありません

ODA FileConverter 26.10.0

久しぶりに ODAサイトに行ってみると
「ODA File Converter」のバージョンが
26.10.0 になっていましたので
ダウンロードしてインストールしました
https://www.opendesign.com/guestfiles/oda_file_converter

当方の「AFjww2dxf」「AFdxf2jww」では
この「ODA File Converter」を起動して DXF〜DWG変換を行うようになっていますので、インストールした場所(フォルダ)を変更した場合は、[参照]ボタンを押して再設定する必要はありますが、軽く動作チェックしましたが別段問題無さそうです


[JWW] 自動保存フォルダ

外部変形を作っていて、気付いた事

自動保存フォルダの場所ですが
Jw_win.jwf で AutoSaveDir 指示をしている場合には
当然そのフォルダになりますが、
これをしていない場合や、Jw_win.jwf を作成していない場合は
図面ファイルを開いた場合はそのフォルダとなりますが

新規状態の場合は JWWフォルダになる・・・
と思っていましたが、外部変形を実行しっぱなしにしていると、自動保存フォルダは、その外部変形(バッチファイル)のあるフォルダになる様子ですね

となれば、色んな外部変形を利用してると、自動保存ファイルはあっちこっちに行ってしまう可能性があるので、やはり Jw_win.jwf で AutoSaveDir 指示をしないと管理しにくいですね

[メール] Re:JW10対応ソフトDLについて

先程、メールが届きました
内容は
当方業務にて図面作図しAFsoft様の「PaperSepa」を
多用しております。
当方にとっては無くてはならない外変です。
今後Ver8.25aで運用出来なくなった場合は何卒
DL出来る様お願い致します。
当方のソフトウェアを御利用頂き誠に有難うございます。

以前にも同様のメールがありましたが
https://afsoft.livedoor.blog/archives/52336713.html
先に書きましたように
https://afsoft.livedoor.blog/archives/52336304.html
この批判をされた方が発言の謝罪・撤回・追加発言をされない限り、プログラミングは行いますがダウンロードは出来ないまま、と思っています

という事で同上です。

Jw_cad Ver.10対応プログラム

先程、メールが届きました
内容は
Jw_cad Ver.10 対応 Delphiプログラム(フリーウェア)のリンクの件

最近、標記のjw_cad関連のプログラムを多く公開されていますから、楽しみにしています。ところで、紹介ページやダウンロードのリンクが違うようで開けません。(ダウンロードできません。)
との事です

先に書きましたように
https://afsoft.livedoor.blog/archives/52336304.html
この批判をされた方が発言の謝罪・撤回・追加発言をされない限り、プログラミングは行いますがダウンロードは出来ないまま、と思っています(先の発言で、プログラミングしないとか書いてますが、それだと何も進みませんので、思索試行プログラミングは行っています)

ま、シェアウェアが売れないと生活出来ないんで
シェアウェアを作るな=死ね と言われてるような
ものですから、ちょっとは抗うつもりですw

クリップボードにて

Jw_cad にてコピペをする際
なぜこんなに図形範囲がずれるんだ?
と思ったら・・・

あら、こんな所に
一時設定文字が・・・
前にチェックしたような気がするんだけど
・・・ま、いいか

今日も暑さで断念

今日も 行けたら釣りに行こうかな?
とか思ってましたが、いやぁ〜w

朝4時15分に暑くて目が覚めて
起き上がって水分補給をしつつ
う〜ん 15分オーバーかぁ〜
まだ眠いし、うん、寝ようw

という訳で今日も釣りに行かずw
先週も こんな事ばっかりだったけど
今週も そんな事ばっかりになるかもしれないw

で・・・
朝8時前に起きて、水やりしたあと
朝の運動をしてネット見て、という
いつもと同じシークエンス
プログラミングの修正の続きをしてるんですが
いやぁ〜
Jw_cad の 埋め込み文字うんたらかんたら
なんかもうマジで ヘルプ仕様外の事が多すぎて
滅茶苦茶 腹が立つwww
例えば
&fs1〜9 だけど
Jw_cad では、&fs10〜&fs99999 まで反応する
はぁ!??
そんなもん、反応せず、そのまんま表示しろや!!!
$J1〜9 も同じく
Jw_cad では、$J10〜&J999999 まで反応する
はぁぁぁあああ!!??
そんなもん、反応すんな!!!
そして
=gGE とか =gGEE とか
・・・同上・・・www

あー もー どうでもいい 知らん・・・

ひょっとしてヘルプに記載されていない隠しコマンドがあるんじゃなかろうか?
と疑ってしまう
ユーザーなら それを探す楽しみとか
ウケで楽しめるんだろうけれども
ツールを作成する側としては、ヘルプ仕様外の事をされると ほんと 洒落にならない
うん
ヘルプに書かれてないんだから、もう、知らんwww

プログラマには、そゆ、一般ユーザーには分からない苦悩ってのは、やっぱり存在する


以前、DXF変換ソフトの話を他の会社の人と話してて
DXF変換ソフトの仕様(Fortran的なアレ)とか
出来ればやって欲しいんだけど〜 って言ったら
「AutoCADでちゃんと読めてるんだから
 何の問題があるんだ?
 おまえは他社に プログラミング修正しろと
 命令しているのか?(そういう立場なのか?)」
みたいに言われた事があるんだけど
ま、そういう風に言われたら もう
どーしよーもないんでwww
でもまそうやって、「DXF方言」が発生・拡散して
行ったのだろうなぁ〜と妙に納得したというかw

ちなみに
その会社とはそれ以来一度もアクセスしていないw
(前の前の職場での話だけどw)

ま、うちのツールなんて
使っている人は非常に少ないだろうから
基本的には どーでもいい話なんだろうなwww



2Fの布団でちょいゴロンとすると
ファン送風機の温度計は、37℃だった・・・w
暑いw
早晩、熱中症で死ぬかもしれんw

いやぁ参りました

Jw_cad Ver.10.x での Unicode対応による
当方ツールのサンプルプログラム作り、ですが
Delpphi XE4・FMX で作成しているプログラムですが
それを Delphi 10.3.3、10.4.2、11 に持っていくと
Unicodeがマトモに扱えないという・・・
うーん 何だコレ Delphi バージョンアップすると
使い物にならんぞコレw
特に サロゲートペアが全く使えない というか
WideStringOf がエラーしまくりでプログラミング出来ない
何だコレw
何らかの「おまじない」が必要なのだろうか?
うーむ さっぱり 分からないw

古いシステムの Delphi XE4 ではそこそこ思ったように動くのに、新しいシステムの Delphi 10,11 では動かない(私が 動かし方を知らないだけ という可能性も大)
まぁ現状、Delphi 10,11 でシェアウェアは作ってませんから実害は無いんですけど、この状態では、Android のビューワーとかも作れないなwww まぁ どうでもいいやwww


追記:
Delphi 10では、WideStringOf の引数(TBytes型)を1文字ずつ変換するようにしてやれば、エラーしなくなる事が分かりました それでも 変換できない文字もあるし、文字の上部分が横にずれたりする文字もあるし(→こんなもん、どーせーちゅーんじゃwww)Delphi と Unicode は・・・謎がまだまだ多いw

Delphi VCL での文字描画で

Delphi VCL での GDI での文字描画で
文字を回転して描画したいから
TLOGFONT を使用しているんですけれども
どうもやっぱり、Unicode文字がすんなり描画できないw
lfCharSet にキャラクタセットを指示するんですが
これまでは DEFAULT_CHARSET を指定してましたが
やっぱり Unicode文字が出ない場合がある
かといって、UNICODE_CHARSET みたいなのも無いし
一番 MAC_CHARSET が近いかな?と思ったけどダメ
文字によって
 ANSI_CHARSET
 BALTIC_CHARSET
 CHINESEBIG5_CHARSET
 EASTEUROPE_CHARSET
 GB2312_CHARSET
 GREEK_CHARSET
 HANGUL_CHARSET
 MAC_CHARSET
 RUSSIAN_CHARSET
 SHIFTJIS_CHARSET
 SYMBOL_CHARSET
 TURKISH_CHARSET
 VIETNAMESE_CHARSET
 JOHAB_CHARSET
 ARABIC_CHARSET
 HEBREW_CHARSET
 THAI_CHARSET
の中から自動選択・・・ってのも判別方法分かんないしw 文字コードから判別するとかでもマトモな結果が得られるとも限らないし、うん、結局、諦めましたwww (従来通り、DEFAULT_CHARSET ただ、サロゲートペア文字の場合は MAC_CHARSET を指示する事にしたw)

GDI+文字描画だとどうだろうか?
と少し試したけれども、同じように文字化け
キャラクタセット指示とか無いけど 文字化け
まぁ、GDI+は Windows98から使える技術だし無理?

取り合えずテスト3 for Jw_cad Ver.10

という訳で取り合えず
Delphi XE4 FMX にて
Jw_cad Ver.10.01〜での JWW/JWSデータを見るってだけのテストツールを作ってみました
https://afsoft.jp/test/jwwv.zip
の更新版です

JWWファイル 又は JWSファイルを指示して
中身を文字情報として読み取るだけのテストプログラムです
で、バージョンと文字コードを指示して
ファイルを保存する機能を追加しました
※JWWファイルをJWSとして保存、及び
 JWSファイルをJWWとして保存、
 という事は出来ません

興味ある人だけどーぞw

取り合えずテスト2 for Jw_cad Ver.10

という訳で取り合えず
Delphi XE4 FMX にて
Jw_cad Ver.10.01 での JWWデータを見るってだけのテストツールを作ってみました
https://afsoft.jp/test/jwwv.zip
の更新版です

JWWファイル 又は JWSファイルを指示して
中身を文字情報として読み取るだけのテストプログラムです

まだファイルを保存する機能はありません

興味ある人だけどーぞw

ちなみに、ヘッダページ内にある「文字コード」は、文字が無い場合=デフォルト状態は「ANSI(Shift-JIS)」になってます

Ver.10.01 の文字データかぁ・・・

取り合えず メモ内容に関しては
取得出来たと思うw
まぁ、超長い文字列には対応してないけど(64K以上)
そんな超長い文字列は元々入力出来ないので
多分問題は無いでしょう

掲示板で サロゲートペア つまり
Unicode が 010000H〜 の場合、2文字分になる
って話だろうと思うけど
Jw_cad は それに対応してると思う
画面に表示出来ていないだけでw
(データ化はしてる)

まぁ長時間ランニングテストをした訳ではないけど

昔作った最初のテストプログラムはもう古すぎて
そのまま編集という事が出来ず
テストプログラムを1から作り直さないといけないw

あと
Delphi FMX で作業しているので
クリップボードデータを扱う事は出来ません
(Delphi FMX で 任意データのクリップボードのアクセス方法というのが全く不明な為)
という訳で
「JWクリボス」等、JWWクリップボードを扱うプログラムは今後も、Ver.10〜では対応出来ませんので御了承の程をよろしくお願いします

ソフトウェアの仕様書

ソフトウェアの仕様書は、一般的に、
ソフトウェアを作成するにあたって
どういう動作環境で
どのような内容の事を
どのようなインターフェイス、アルゴリズム、データ等で
どのように入力・処理・出力するのかを
明確に記述したもので
それによって、作成するまでの工程・工数・費用算出・見積書作成を行い、システム構築を行うかどうかの決定をする(予算、納期等を含む)というもので、仕様書はSE(システムエンジニア)等が顧客と協議の上で作成するが、顧客から後から仕様追加・変更が為される場合も多く、その際には別途料金・納期延長となっていくのが通例

JW_CAD(DOS版) の場合は、もともとは 作者氏が、作者自身のために作成したものであるから、明確な仕様書というのは存在しないかもしれない が それ以前に使用していたCADソフトと同じような画面・操作・内容は出来るように、プラスアルファで こういう事がしたい、というのはあったであろう 作成したものをネット上にアップし、それを使ったユーザーからの意見を参考にして、仕様や機能の追加変更を行っていき、Ver.2.22H で完結

Jw_cad(Windows版)の場合は、DOSからWindowsへの移行が本格化し、作者氏もWindows版を作成しようという気持ちになって、おそらくは、同じものを作っても仕方が無いので新しい物にしたい、という意味合いで、新しい画面・新しいインターフェイスで、旧来の JW_CAD にプラスアルファの仕様と機能を、という事で開発スタートされたのであろう

「Jw_cad for Windows 徹底解説リファレンス編」という書籍では、「JW_CADの特徴 〜DOS版からWindows版へ」という最初のくだりでは
・マウスの左右ボタンの使い分け
・ドラッグ操作とクロックメニュー
・ズーム操作
・パラメトリックな建具オプション
・包絡処理
・線記号変形
・日影図
・2.5D
・外部変形
・画像ファイルの表示
という項目がピックアップされています

また、「Jw_cad for Windows 徹底解説(操作解説編)2012-2013」という書籍では、Ver.7.11 のCD-ROMが添付されていて、冒頭の「Jw_cadの新機能と特徴」という章では
1.SPEEDフォーマットデータの読み込み
2.DXFファイル書き出し時に3DSフォーマットデータも同時書き出し
3.画像ファイルの表示
4.日影図
5.天空図
6.図面情報のコピーと起動オプション・タグジャンプでの利用
7.2.5D
8.ブロック編集とブロックツリー
9.画面ズーム操作
10.マウスの左右ボタンの使い分け
11.クロックメニュー
12.包絡処理
13.パラメトリックな建具コマンド
14.線記号変形
15.外部変形
16.SXF対応
という項目がピックアップされています

Ver.8 では、ヘルプにて
◆Version 8.00 (2015/01/12)
・画面表示にDirect2Dを使用するようにした。
・Windows8 のタッチ操作に 対応した。
(ピンチまたはストレッチによるズーム、スライドによるスクロール)
・Shift+両ボタン(または左ボタ ン)ドラッグで、画面がスライ ドするようにした。
(基本設定→[一般(2)] で左ボ タンドラッグによるスライドを指定したときは、包絡コマンドの[Shift+左ボタン]による中間線消去は使用できない)
・ファイル選択にコモンダイアログを使用できるようにした。
(基本設定→[一般(1)] )
・建具(平面、断面、立面)でソリッド図形と楕円を使用できるようにした。
(フォルダー「変更建具データ」内の「JW_OPT1.DAT」、「JW_OPT3.DAT」のデータ説明参照)
・記号のソリッド図形に一部機能を追加した。
(フォルダー「変更建具データ」内の「JW_OPT4.DAT」のデータ説明参照)
・ファイル名の部分表示を追加し、印刷時に使用 できるようにした。
&fsn (n=1〜9):半角スペースで区切られたファイル名の左から数えてn個目の文字列
  例:ファイル名が「A-1001 2階平面 詳細図3」のとき
   「&fs1」→「A-1001」、
   「&fs2」→「2階平面」、
   「&fs3」→「詳細図3」
・AUTO以外で[消去]を2回選択すると連続範囲選択消去、[寸法]を2回選択すると寸法角度が 90°と 0°の切換えになるようにした・
 (環境設定ファイル「S_COMM_9」の 4 を参照)
・FILE選択ダイアログの画面最大分割数を32まで設定できるようにした。
 (環境設定ファイル「S_COMM_0」の 10 を参照)
・環境設定ファイルの「文字入力ダイアログの縦サイズ」の標準値を変更した。
(環境設定ファイル「MSET」の 5 を参照)
・包絡に「建具線端点と包絡」を追加した。
・分割コマンドに円全周分割を追加した。
(分割数入力→右クリックで分割始点指示→分割する円を右クリックで指示)
・DXF出力の際、線種名が空の線が出力されエラーとなる現象を回避した。
・3DS出力を廃止した。
・インストーラーに InstallShield を使用するようにした。
とあるようにバージョンアップによって機能追加・変更・削除が行われています

現行、Ver.8.25a ですが
「Jw_win.txt」より
-----------------------------------------------------------------
【ソフト名】 2次元汎用CAD Jw_cad Version 8.25a
【登 録 名】 Jww82453.exe Jw_cad Version 8.25a
【動作環境】 Windows 8, 10 ,11
【著作権者】 Jiro Shimizu & Yoshifumi Tanaka
【使用言語】 Microsoft Visual C++ in Visual Studio Community 2019
【掲載月日】 2022/04/10
-----------------------------------------------------------------
開発環境を Visual Studio 2013 からVisual Studio 2019 に変更しました。それに伴い、インストーラーの生成を、InstallShield から Inno Setup に変更しました。そのため、インストールの細かい雰囲気が変わっていると思います。
とあるように、動作環境は Ver.6.21a までの
「Windows95, 98, Me/ NT4.0, 2000, XP, Vista」
とは大きく変わっています

「Windows 8, 10 ,11」とありますが
Windows Vista、7、8.1 でも動作しています

動作PCは、日本・日本語環境である必要があります

Jw_cad は 32bitアプリケーションであり、64bitアプリケーションではありません
そのため、PCにメモリ16GBを入れていたとしても、Jw_cadで扱えるメモリは最大 3.2GBとなります

それでは Jw_cad のデータ仕様について見ていきましょう
https://www.jwcad.net/jwdatafmt.txt

文字コード:ANSI(ShiftJIS)
 すべてにおいて Unicode文字は使えません
図面用紙サイズ
 A0〜A4、2A、3A、4A、5A、10m、50m、100m
 縦向き無し ユーザー任意指定無し
データ種別
 直線
 円弧(全円、楕円、楕円弧、含む)
 点(仮点、点マーカ含む)
 文字(画像参照文字列により画像表示も可)
 ※フォントは TrueType/OpenType和文フォント使用可
 ※プロポーショナルフォント使用時は文字間隔に0.01指示
 ※縦文字可能 但し半角文字の使用には注意
 ※文字種1〜10+任意サイズ文字 での設定
 寸法図形
 ※直線寸法のみ(直線+文字) 寸法グループ化有
 ※SXFファイル読込時のみ、
  端点矢印引出線も含む特殊な寸法図形が扱える
 ソリッド図形(線形、三角、四角、円周、全円、扇形、
        弓形、円外側、円環)
 ブロック図形(ブロック図形内にブロック図形も可能)
 ※マイナス倍率も指定可能
 ※AutoCADのような配列指定不可
 ※AutoCADのようなByBlock指定は不可

 ※データ数に制限無し(メモリの許す限り)
 ※画像の種類は標準でBMPのみ
  Susieプラグインにより JPEG、TIFF、GIF、PNG等も可
  画像の透過(特定1色を透明扱い)可能 α値指定ではない
 ※画像のJWW図面ファイルへの同梱も可
  但しBMP化された上で gz圧縮される
 ※画像データは内部キャッシュメモリに入れられるがその最大容量は不明、ファイル数が多かったり巨大サイズなものがあると画面に表示出来ない場合が有り得る
レイヤー数:最大256
 レイヤグループ16 × レイヤ16
 レイヤグループ内にレイヤがあるというイメージです
 レイヤグループ、レイヤには名前が付けられます
 (最大254半角文字) 
 レイヤグループ毎に縮尺指定可能(1000/1〜1/3000000)
 ※AutoCADのようなByLayer指定は不可
線色
 通常線色8色(画面要素色、プリンタ出力要素色)
 補助線色1色(線色内容は図面データに含まれない)
 SXF対応拡張線色256色(既定義16色、ユーザー240色)
 ソリッド図形のみ任意色(フルカラー)使用可能
線種
 通常線種8種、補助線種1種
 ランダム線種5種、倍長線種4種
 SXF対応拡張線種31種(既定義15種、ユーザー16種)
線幅
 線色と対応
 データ毎に指定可能
 ( 0指示:標準幅=線色対応、
  1/100単位で1〜30000指示(0.01mm〜300mm) )
その他属性
 ハッチ属性、寸法属性、建具属性、図形属性、曲線属性

画面描画機能
 WindowsGDI、又は、Direct2D

コマンド体系
 メニューから実行、ツールバーから実行
 クロックメニューから実行
 KEY設定によりキー実行、Autoモードから実行
ファイル入出力
 図面データ
  JWW形式(旧バージョン保存可能)
  JWC形式(DOS版JW_CADデータ)
  DXF形式(R12形式+α)
  SXF形式(SFC、P21形式 レベル2、Ver.3.1)
   ※内部データがレベル2ネイティブ対応ではない為
    直線、円弧等に分解される
  SPEED形式(読み込みのみ)
 図形データ
  JWS形式(設定や画像そのものは入らないので注意)
  JWK形式(DOS版JW_CADの図形データ)
 その他
  建具データ(JW_OPT1〜3x.DAT)
  線記号変形データ(JW_OPT4x.DAT)
  座標ファイル(TXT形式)
  2.5Dからの3D-DXF出力
印刷
 Windowsプリンター
 (Windowsプリンタードライバーによる出力)
入力デバイス
 キーボード
 2ボタンマウスデバイス
 3ボタン以上のマウス(ホイール利用可能)
 タッチパネル(長押し右クリック処理は使えないので注意)
 SirfaceDial
 ※wintab、DirectXのDirectInput、Xinput等には未対応

ユーザーカスタマイズ
 建具データ(JW_OPT1〜3x.DAT)
 線記号変形データ(JW_OPT4x.DAT)
 外部変形機能(バッチファイル・座標ファイル)
 ※SDK、API、コマンドマクロ、OLE等は無し

SVGか〜

取り合えず、Jw_cad から SVG出力出来る外部変形といえば
kojimaさんの
「外部変形でEMFファイル/SVGファイル/Canvas作成」
でしょうか
https://www.farchi.jp/downloads/index.php/file_61bf1dd987b6d

SVG仕様
https://www.w3.org/TR/SVG2/
https://triple-underscore.github.io/svg-misc-ja.html

そういえばニュートン社の「ImageKit」でも
SVG対応とか言ってたっけ・・・
https://www.newtone.co.jp/productik1000vcl.html
うちのは大分古いけど
(Delphi FMX では動かないという事と、Delphi FMX では標準で JPEG/PNG/GIF/TIFFが扱えるという事で、バージョンアップしてないです、ボンビーだし)
でも
SVGには余り興味も持ってなくて全然調べた事がないです

WMF/EMF は Delphi VCL で昔から普通に保存出来ますし
HTML5 Canvas の本は、古いけど一応持ってます
PDFの本(Adobe の PDFリファレンス)は一応持ってますけど、それ見て線やベジェ線を出力してみたけど取り合えずスルーしてw Delphi の RAVEコンポーネントや FastReportコンポーネントでも PDF出力が出来るのは確認したけど(フォントの問題はあったような気がしたけど)取り合えず興味は無いです 必要性も無かったので…
以前、ホームページ上で絵を描くって事で、HTML5 Canvas の勉強はざっとだけやったんですが結局、php で GD 使いました

[Pcata] p197_連続複線 追加

Pcata サイトに
シェアウェア「p197_連続複線」の追加を行いました
http://afsoft.jp/p-cata/jwwgapp/p197.html

ブロック図形や曲線属性が使えないとか 外部変形ならではの機能制約はありますが、取り合えず 作ってみました

[Pcata] p196_連続複写 追加

Pcata サイトに
シェアウェア「p196_連続複写」の追加を行いました
http://afsoft.jp/p-cata/jwwgapp/p196.html

ブロック図形や曲線属性が使えないとか 外部変形ならではの機能制約はありますが、取り合えず 作ってみました

Jw_cad 2.5D の勉強

現在作成中のプログラム、ようやく
2.5Dで作成した図が表現出来るようになったっぽい
・・・
で・・・COLLADA (dae) 出力をくっつけて・・・
(※COLLADA出力は、かなり昔から
  Script!3D、AFWord2などで対応済)

よく分からんけどコレでいいやwww

しかし、この開発用PCに昔に入れた
SketchUp7J でインポートすると
何やら 変なメッセージが出る・・・
ん? 今までこんなの あったっけ?
OKボタンを押すと先に進むんだけど
ファイル確認しても 別段おかしい所は無さそうだし
以前 Script!3DやAFWord2の時に検証したデータをインポートをしても、当時は出てなかったのに、今は同じメッセージが出るようになってた・・・何だこれ?・・・PCの調子がおかしくなってきてるのかもしれない それ以外の検証用ツールが無い あ
Delphi XE4・FMXの TModelコンポーネントが Collada対応してたよな それで試しにやってみると うん 問題無さそう

おっと、もうこんな時間だ
夕食作って 夕食にしないとなー
続きはまた明日

Jw_cad 2.5Dの管

現在作成中のプログラム、ようやく
2.5Dの管が・・・
・・・
全く 分からんwww

何やねんコレwww

仕様が全く分からんのでプログラミング出来ない
先は まだまだまだまだ長い



水平線を描いて始点に2.5D文字「0,2,1,30D」を描いて
文字コマンドの右クリック複写で それを終点にも作図すると
フツーに
直方体が作図出来る訳だけど
2.5Dコマンドで普通にクリックした場合のように
180°回転したような文字だと
フツーに
ねじれた直方体になる
文字の角度が 90°〜270°の場合は、ねじれた直方体になる

え? 文字の角度を取得して判定しなければいけないのか?
それは 仕様なのか? バグなのか?

標準添付「Test6.jww」では、終点側の2.5D文字は
「0,2,1,-30D」になっていて 180°回転になっている
これで普通に直方体になるんだけれども
これが仕様なのか?

その文字を0°にすると当然、長方形はねじれる事になる

それでは
2本の線の連続線を描いて 2.5D文字で「0,2,1,30D」で
3点指示して作図させる(3点目は文字がひっくり返る)
当然ながら、1本目の線は直方体に
2本目の線はねじれた直方体になる
仕様通り
・・・
これが本当に、仕様なのか? バグなのか?

標準添付「Test6.jww」での「0,2,1,-30D」は、
普通の直方体のサンプルなのか?
それとも、ひねりを加えた直方体のサンプルなのか?

はい、全く、分かりませんw

2.5Dでの文字の付加は、クリックの仕方で文字の角度がころころ変わるから、基本的に、2.5D文字の角度は無関係であるべきだと思っていたんだけれども、実のところは、そうじゃない、って事なんだろうか?
それとも、管だけがイレギュラーで、管だけは2.5D文字の角度を考慮せねばならない/2.5D文字内容を逐次気にしつつ作図せよって事なのか、では、四角形の4点に 2.5D文字を作図する場合は一体どうせよという事なのか(そもそも、そういう作図はするなって事なのか)

・・・

はい、全く、分かりませんw
Recent Comments