Sketchup Ruby外部ライブラリをロードする - ruby​​、sketchup

Sketchupで外部ライブラリの読み込みに問題があります

元の幅と高さを知りたい画像。しかし、Sketchup APIで見つけられませんでした。したがって、fastimageをダウンロードすると、ライブラリで実行できます(https://github.com/sdsykes/fastimage)。コマンドを使用してインストールしました。

gems install fastimage

この新しいgemは、C:Ruby186librubygems1.8にインストールされます。次に、スクリプトでそれを必要とします(上記のリンクのturorialに従って)。

require "fastimage"

しかし、エラーが発生しました:そのようなファイルはロードできません-fastimage

次に、このリンクで1つの解決策を見つけました:http://sketchucation.com/forums/viewtopic.php?t=29412#p257058。 loadpathスクリプトを作成し、リンクを作成します外部ライブラリへ。このスクリプトを作成したら、それらをSketchupのプラグインフォルダーに入れ、Sketchupを再度実行します。しかし、私はまだエラーが発生します:そのようなファイルはロードできません。

私のルビーのバージョンは1.8です。6、およびコマンドを入力すると、Sketchup ruby​​コンソールにRUBY_VERSIONを配置します。その出力は1.8.6です(私のrubyと同じバージョン)。なぜ新しい宝石が必要ないのか理解できません。手伝ってください、ありがとう。

回答:

回答№1は1

あなたが使用しているので , your should specify require "rubygems" 実行可能ファイルの前にあるので:

require "rubygems"
require "fastimage"

必要な場合 エラーをスローします。つまり、 現在のシステムにインストールされていない 、たとえば次のようにインストールします。

apt-get install rubygems

回答№2の場合は0

画像のピクセル幅と高さを取得するには、 image_width そして image_height の方法 Texture 特定のオブジェクト Materialhttp://www.sketchup.com/intl/en/developer/docs/ourdoc/texture.php#image_width

これは、SketchUpのコンテキストで「画像」と言うとき、テクスチャを意味すると仮定します。 Image 使用するインスタンス Image.pixelwidth そして Image.pixelheighthttp://www.sketchup.com/intl/en/developer/docs/ourdoc/image.php#pixelwidth

一方、もしあなたが「調べたいならSketchUpには標準ライブラリではなくRuby 1.8コアが付属しているため、「SketchUpに読み込まれていない」ビットマップのサイズはより困難です。 Ruby C拡張機能を作成し、Cで作業を行うことができます。


関連する質問
メニュー
最も人気のある