2008年07月30日

sketchup ruby api 非表示

選択したものを非表示にします。 i.hidden = true で非表示となります。
posted by 3D at 21:07| Comment(0) | TrackBack(0) | 日記

2008年07月29日

sketchup ruby 選択したもの

選択したものはmodel.selectionで、得ることができる。

サンプル

def puts_area()

model = Sketchup.active_model
ss = model.selection
if( ss.empty? )
return nil
end

for ent in ss
if( ent.is_a? Sketchup::Face )
puts ent.area
end
end
end

では、ssに選択したものをいれ、それが面(Sketchup::Face)
なら面積をコンソールに表示している。

エッジなら
Sketchup::Edge
円弧なら
Sketchup::ArcCurve
で判断する。
posted by 3D at 06:13| Comment(0) | TrackBack(0) | 日記

2008年07月28日

sketchup ruby apiのサンプルコードのある場所

SketchUp Ruby API
http://download.sketchup.com/OnlineDoc/gsu6_ruby/Docs/ruby-classes.html
に、
Example Code: animationtests.rb
等、書いてあるけどリンクが切れている。

実は、以下にあります。

http://download.sketchup.com/downloads/downloads/rubyscripts/RubyTests.zip

posted by 3D at 06:29| Comment(0) | TrackBack(0) | 日記

2008年07月27日

sketchup rubyスクリプトの実行

rubyで書いたスクリプトを拡張子をrbにして
C:\Program Files\Google\Google SketchUp 6\Plugins
に置くと、sketchup起動時に読み込まれ、実行されます。

デバッグ時は
ウィンドウメニューのRubyコンソールを開いておきます。

load "ファイル名"
でファイルをロードできます。

メソッド名を入力して、実行します。

カーソルの上キーで、過去の入力が再表示されいますので、繰り返し入力するときは
便利です。

rubyスクリプトでputsで、rubyコンソールに出力できます。

posted by 3D at 06:26| Comment(0) | TrackBack(0) | 日記

2008年07月26日

SketchUpのWebDialog rubyとの連携

SketchUpのWebDialogでrubyと連携ができます。


WebDialog classは以下の特徴があります。

htmlでダイアログボックスを記述できる。
htmlの要素にrubyからアクセスできる。
rubyからhtml内のjavascriptの関数を実行できる。
htmlのjavascriptからrubyのメソッドを実行できる。


詳しくはこちら

SketchUp Ruby API Reference

http://download.sketchup.com/OnlineDoc/gsu6_ruby/Docs/ruby-webdialog.html

手順
(1)

test.html

ダイアログに表示したい内容をhtmlで用意します。
-------------------------------------------------
<html>
<head>
<script language="javascript">
<!--
function onOK()
{
window.location='skp:on_ok';
}

function ruby(msg)
{
document.getElementById("result").innerHTML = msg;
}

-->
</script>
</head>
<body>
<h1 id="result">h1</h1>
<div id="message">
This is a test.<br>
</div>
<input type=text id="myTextInput">
<input onClick="onOK()" type="button" size="100" value="Continue">
<input onClick="ruby('call from html')" type="button" size="100" value="ruby">

</body>
</htm>
-------------------------------------------------


window.location='skp:on_ok';でrubyのメソッドを呼び出します。

<input type=text id="myTextInput">
のようにidを付けておけばrubyから値を取り出せます。


(2)
ruby スクリプトはこんな感じ。
-------------------------------------------------
def web
dlg = UI::WebDialog.new("WEBDialog", true, "WEBDialog", 739, 641, 150, 150, true)

dlg.add_action_callback("on_ok") {|d,p|
t = d.get_element_value("myTextInput")
puts t
d.execute_script("ruby('call from ruby')");
}

html = File.dirname(__FILE__) +"/test.html"

dlg.set_file html

dlg.show

end
-------------------------------------------------

UI::WebDialog.newで新しくWebDialogを作ります。

dlg.add_action_callback("on_ok") でjavascriptからの呼び出しを受けます。

d.get_element_value("myTextInput") で、htmlの要素の値を取り出せます。

d.execute_script("ruby('call from ruby')")でjavascriptの関数を実行できます。

dlg.set_file htmlでhtmlをセットします。

dlg.showでhtmlを表示します。

サンプルの画像は飾りも無く、さびしいですが、htmlなので、好きなデザインにしてください。

インターネット上のファイルも表示できるので、いろいろ使えそうです。

sketchupのwebdialog
クリックで拡大します。
posted by 3D at 09:08| Comment(0) | TrackBack(0) | 日記

2008年07月25日

スケッチアップのショートカット

sketchupのキーボードショートカット

選択 - Space バー
線 - L
移動 - M
長方形 - R
プッシュ/プル - P
消しゴム ー E
円 - C
回転 - Q
尺度 - S
メジャー - T
オービット - O
ズーム - Z
ペイント - B
円弧 - A
オフセット - F
パン - H

線を引いていて、終わるときはスペースキーを
押すと良い。
posted by 3D at 07:17| Comment(0) | TrackBack(0) | 日記

2008年07月24日

sketchup ボーナスパック

sketchup ボーナスパック

http://sketchup.google.co.jp/bonuspacks.html

建築 建設 映画と舞台製作 景観設計 機械設計 人物 記号 交通
のコンポーネントが多数ダウンロードできます。
また
マテリアルも多数あります。
posted by 3D at 07:25| Comment(0) | TrackBack(0) | 日記

2008年07月22日

Windowsムービーメーカーで動画を作る

posted by 3D at 22:26| Comment(0) | TrackBack(0) | 日記

2008年07月21日

今度はやきそば

1時間並んで食べました。
おいしかったです。
写真を撮って、スケッチアップで3Dにしました。
PIC_0044.JPG


にこにこ動画
posted by 3D at 21:51| Comment(0) | TrackBack(0) | 日記

2008年07月20日

中国料理チャンピオン


no-title



高速道路のサービスエリアで
こんな写真を撮ってきたので
google sketchup スケッチアップで遊んでみた。


no-title

ニコニコ動画に投稿しました。
posted by 3D at 21:30| Comment(0) | TrackBack(0) | 日記

2008年07月19日

星を描くsketchupのruby スクリプト

googleが無料で配布している3Dソフトのsketchupでは
rubyでスクリプトを組めます。

外径、内径、角の数を入力すると、
星を描くスクリプトを作ってみました。

star.jpg



以下の
sketchupのrubysスクリプトをPluginのディレクトリに置いて、sketchupを起動してください。
Pluginsのメニューにstarという項目が現れます。


star.rb
posted by 3D at 08:05| Comment(0) | TrackBack(0) | 日記