2017年2月15日水曜日

SVGファイル出力

SVGファイル出力が出来るようになりました。

Scalable Vector Graphics
スケーラブル・ベクター・グラフィックス

直線なら
<path d="M 64.843,0 L 9.794,47.25">
円弧なら
<path d="M 52.059,24.288 A 15.513,15.513 0 0,0 21.033,24.288">

シンプルな出力構成

SVG化したい要素を選択すると、
全ての要素を見た目通りに分解し、
保存先指定でSVGが出来ます。

保存後元通りの要素に戻す。

今のところ、線種は全て実線となります。

元画像

変換先画像

2017年1月1日日曜日

2017


2017年 あけましておめでとうございます。


朝起きて驚き。

とても良い天気。

まずは写真を一枚。

良い一年になりますように、

2016年11月28日月曜日

ステーによって支えられる板

ボイラ構造規格
「ステー及びステーによって支えられる板」
上図で示されている赤矢印の円
・曲がりの始まる線,円からステーの中心の円
・曲がりの始まる線,円からステーの中心に接する円の中心の軌跡
を lisp化してみた。

ns-menu では コマンド(ns_hsb0)または(ns_hsb)
------------------------------------------------- 
(ns_hsb0)起動
1.曲がりの始まる線を選択(下図で緑の要素)
2.ステー管の位置(下図で紫の点)を順番に指定→決定
3.中心の円と円の中心の軌跡(下図で黄色)
が、自動で出来ます。
●例A.曲がりの始まる線の時

●例B.曲がりの始まる円の時 
---------------------------------------------
これを手作業ですると大変な時間が掛かる作業です。
煩雑なので自動化して作業効率UPです。
この業界に携わってない人は、全く使い道が無いかも。

2016年8月17日水曜日

スピログラフ

スピログラフ


昔、歯車がついた定規がありました。
その定規で、下の紙が破れるまでグルグル回した記憶があります。

これをAutolispで作成。意外と簡単な命令なんですね。
ノーマルな命令しか使っていないので、自由に改造、
例えば色を付けるとか、挑戦してみて下さい。

------------この下から---------
(defun c:sg (/ CH KA P0 P2 P3 P4 P5 PP R1 R2 R3 R4 R5 ST TB)
 ;spirograph スピログラフ by nsmaster 2016/08/17
 (setq p0 (getpoint "\n[スピログラフ] 作図点:"))
 (setq r1 (getreal  "\n[スピログラフ] 大半径:"))
 (setq r2 (getreal  "\n[スピログラフ] 小半径:"))
 (setq r3 (getreal  "\n[スピログラフ] 変芯量:"))
 ;////諸計算////
 (setq pp 1.0 st (* pi (/ pp 180.0)));作図精度(deg,rad)
 (setq r4 (- r1 r2));大半径-小半径の差
 (setq tb (/ r1 r2));大半径/小半径の比率
 ;////情報表示/////
 (command ".undo" "be")
 (entmake (list '(0 . "POINT")(append '(10) p0)))
 (setq r5  (+ (- r1 r2) r3));最大半径の計算
 (setq p5 (polar p0 (* pi 1.25) (* r5 (sqrt 2.0))));左下の角点
 (entmake (list '(0 . "TEXT")(append '(10) p5)(append '(11) p5)
   (cons 1 (strcat "R1:" (rtos r1 2 3) " R2:" (rtos r2 2 3) " R3:" (rtos r3 2 3)))
   (cons 71 0)(cons 72 0)(cons 73 1)(cons 41 0.8)(cons 40 (/ r1 50.0))
   );入力値作図
  )
 ;////作図計算////
 (setq ka 0.0);作図開始角度(rad)
 (setq p2 (polar (polar p0 ka r4) (* ka tb) r3) p4 p2);最初の位置計算
 (setq ch 0)
 (while (= ch 0)
  (setq ka (+ ka st));角度増値
  (setq p3 (polar (polar p0 ka r4) (* ka tb) r3));座標計算
  (entmake (list '(0 . "LINE") (append '(10) p2)(append '(11) p3)));作図
  (if (< (distance p4 p3) 0.0001)(setq ch 1)(setq p2 p3));最初の位置になったか?
  )
 (command ".undo" "e")
 (princ)
 )
------------この上までをコピーして、sg.lsp の名前で保存

ツール→Autolisp→アプリケーションのロード→
先ほどの sg.lsp を読み込み
コマンドラインで sg リターン


線の容量は半端なく増えますが、仕事の息抜きにどうぞ。

2012年2月29日水曜日

単純な疑問

Autocad に 至るまでには
何種類かの汎用Cadを使ってきました。
Autocad を使ってみると 使いにくい事ばかり、、
経験のある汎用CADの操作性の良いところ?の
アイデアをこの"ns-menu"に詰め込みました。

単純な疑問[書き切れない程あるね。抜粋]

※文字編集になぜ履歴が簡単に出ないのか
※コピー作業した後に"P"選択したら何故に最初の選択要素なのか?
※"p"選択が最後の要素なら、連続動作が出来る。
※簡単にコピーの連続ができないのか?
※移動量とかに何故に小数点計算が入力ができないのか?60.5/2は→605/20と入れる
※寸法記入時に何故に寸法間隔の補助線が出ないのか?
※LEADERって切断できないの?延長できないの?
※jointで繋がらない要素が多すぎ。
※fillet値0でR取で繋ぐのね?わざわざ0に変えないとイケナイ
※円弧は円に戻せない。
※切取複写って出来ないの?
※コマンド入力時に、いつもRETキーを入力が面倒である。
※円弧状に文字記入が出来ないのか?
※文字や寸法にoffset出来ないの?
※文字や寸法に中心線引けないの?
※スライド寸法をもっと簡単に書けないの?
※基点コピーを増やしたい。
※選択した要素にsolid押出が簡単に引けない。
※ARC,CIRCLEから線を引き出したい時は円中心に補正できないの?
※OSNAP値を変えるのが煩わしい。
※選択した要素に対する極角度が付くと便利なんだけどなぁ。。
※コマンドラインの文字スクロールが多くて窓が広くなる。ムダ。
※Yes/noはマウス右左で対応できないの?
※よく使う定数を入力ししたい。
※画面再作図ってもう少し早くならないの?
※線種が見え辛い。
※マルチレイアウトの図面が書きにくい。
※レイアウトのviewの枠をモデルに反映したい。
※寸法文字の連続変更出来ないの?
※選択要素の交点、延長交点をintersだけでは取得できない要素が多すぎ。
※マウスの軌道に沿って文字や記号がgrread出来ないの?
今日はこの辺りで、書き出したらキリがない。
作図機能のUPもですが、基本的な操作の簡単化に取り組みました。

-------------------------------------------------------
※ 全ての機能が使えます。期限は有りませんが、
※ 未登録はコマンド起動時バージョン情報が表示されます。
-------------------------------------------------------

実際の操作画面については順次載せようかと思っています。

[ただ、CAD使える環境の人であれば、直感的に動かせるでしょう。