トップページ › フォーラム(掲示板) › 製品外 › icAPI/CRXの開発 › icAPIの開発に関する質問
- This topic has 40 replies, 2 voices, and was last updated 7 months, 2 weeks ago by
soushi.maki.
-
AuthorPosts
-
2025年6月6日 at 6:36 PM #1644
GetActiveDocはAddin.csに定義されています。中身は以下になっています。
private IZDoc GetActiveDoc()
{
if (this.IronCADApp != null)
{
return this.IronCADApp.ActiveDoc;
}
return null;
}作成されているWindowsFormの引数にIZBaseApp ironcadAppを加えて
引数として渡してあげるといいと思います。
(SampleSceneTreeではIZDocを渡していますがIZBaseAppを同じように引数として渡す感じです)2025年6月14日 at 9:49 PM #1645あれから頑張ってみたのですが、どうしてもうまくいきません。
質問1
「WindowsFormの引数にIZBaseApp ironcadAppを加えて引数として渡して」
というのは下の太斜体部分であってますでしょうか?
public SampleTransformMatrix(IZBaseApp app, IZDoc izDoc, IZBaseApp ironcadApp)
質問2
下記プログラムを書いてみました。Addin.csに書かれているGetActiveDocは見つけたのですが、どのように取り込むのかわかりませんでした。Cとかだとinclude した覚えがあるのですがc#にinclude ってない感じですか?
public partial class SampleTransformMatrix : Form
{
private IZBaseApp _baseApp;
private IZDoc _doc;
private IZSceneDoc _sceneDoc;
private IZBaseApp ironcadApp = null;/// <summary>
/// コンストラクタ
/// </summary>
/// <param name=”app”></param>
/// <param name=”izDoc”></param>
public SampleTransformMatrix(IZBaseApp app, IZDoc izDoc, IZBaseApp ironcadApp)
{
InitializeComponent();
this._baseApp = app;
this._doc = izDoc;
this._sceneDoc = izDoc as IZSceneDoc;IZDoc iZDoc = GetActiveDoc(); /* 中身はthis.IronCADApp.ActiveDoc */
string DirectoryName = Path.GetDirectoryName(iZDoc.Name);
string FileName = Path.GetFileName(iZDoc.Name);
textBox1.Text = DirectoryName;}
2025年6月15日 at 10:17 PM #1646すみません。説明が分かりづらかったですね。
サンプルを作成しましたので添付します。現在のシーンのファイル名を取得する関数:getCurrentFileName()と
現在のシーンのファイルパスを取得する関数:getCurrentScenePath()を
追加しています。
呼び出しのサンプルはbuttonGetCurrentMatrix_Clickに記載しています。
この方法でいかがでしょうか?-
This reply was modified 8 months ago by
yokomichi.
Attachments:
2025年6月30日 at 11:09 AM #1651また質問で申し訳ないのですが現在CADのシーンのツリーから「X」「Y」「Z」「A」「B」「C」をマウスで選択しているのですが、これは呼出したデータの中に一つだけしか定義されていないユニークな名前です。
アドイン側からユーザー名を指定(例えば Y)して選択状態とすることは可能でしょうか?
「MATRIXを取得」して「軸を選択」「原点設定」の操作に手間がかかる。
2025年6月30日 at 12:51 PM #1652名前からツリーを選択するには、シーンブラウザ(ツリー)をすべて検索して
IZElementを特定します。
IZElementが特定されたらSelectionManagerで選択することが可能です。
ちょっと説明が難しいのでサンプルを追加しました。こちらは一度シーンブラウザ(ツリー)すべてリスト化したものから選択できるようにしたものです。
こちら参考になりませんでしょうか?
https://github.com/ic-jp-community/ironcad-addin-sample-cs/releases/tag/v0.0.0.5
2025年7月1日 at 7:43 PM #1653早々の回答ありがとうございます。
VisualStudio2015 Communityでビルドは問題なく進むのですがsetupを起動すると
最後に 「 Error1001 install utllib.dll Unknown error」が出ます。
関係ないかもしれませんが0.004の時に「icAPI_Sample_CS_SetupのUxTheme.dllは除外」
は除外とありますが、 icAPI_Sample_CS_Setupの下は添付図のようになってました?
Attachments:
2025年7月1日 at 10:30 PM #1655私の環境では以下のようになっています。(VisualStudio2022+Windows11です)
ネットの情報では.Net Framework3.5をインストールすると解決したとの情報がありました。
windowsの機能の有効化または無効化からインストールできます。(とはいえ、私の環境には3.5は入っていません。)v0.0.0.4はビルドできてインストールできますでしょうか?
Release v0.0.0.4 · ic-jp-community/ironcad-addin-sample-cs · GitHub

2025年7月2日 at 3:19 PM #16562台のパソコンで試してみました。どちらもWindows11 でVisualSTUDIO2015 Communityです。
Release0.0.0.4 リビルド 問題なし インストール完了
Release0.0.0.5 リビルド 問題なし インストール不可
2台とも同じ結果でした。
.Net Framework3.5は添付のようにインストールされていました。
下のHTTPアクティブ化と非HTTPアクティブ化は両方チェックして試してみましたが残念ながら
最後に 「 Error1001 install utllib.dll Unknown error」が出ます。
VisualStudio2022をインストールしてみようかと思っています。
Attachments:
2025年7月2日 at 4:55 PM #1658私のほうもVisualStudio2015 Communityを入れてv0.0.0.5を試してみました。
おっしゃる通り同じエラーが発生しました。v0.0.0.4はOKでしたので、v0.0.0.4をベースにv0.0.0.5を入れて2015でエラーなく
ビルド・インストールができるv0.0.0.6を作成しました。
こちらを試してみていただきたいです。https://github.com/ic-jp-community/ironcad-addin-sample-cs/releases/tag/v0.0.0.6
2025年7月2日 at 8:32 PM #1659v0.0.0.6無事インストール完了しました。
検索めちゃ速くて超感動です。ありがとうございました。前のサンプルで試したときは忘れたときに表示されていたので手でシーンを選択したほうが早いと思い現在のインターフェースを使っていたのですが、今回ので自動選択できそうです。
ちなみに試したデータは93MB 3200シーンデータ に2秒でした。
-
This reply was modified 8 months ago by
-
AuthorPosts
- You must be logged in to reply to this topic.







