トップページ フォーラム(掲示板) 製品外 icAPI/CRXの開発 icAPIの開発に関する質問

Viewing 10 posts - 31 through 40 (of 40 total)
  • Author
    Posts
  • #1644
    yokomichi
    Keymaster

      GetActiveDocはAddin.csに定義されています。中身は以下になっています。
      private IZDoc GetActiveDoc()
      {
      if (this.IronCADApp != null)
      {
      return this.IronCADApp.ActiveDoc;
      }
      return null;
      }

      作成されているWindowsFormの引数にIZBaseApp ironcadAppを加えて
      引数として渡してあげるといいと思います。
      (SampleSceneTreeではIZDocを渡していますがIZBaseAppを同じように引数として渡す感じです)

       

      #1645
      soushi.maki
      Participant

        あれから頑張ってみたのですが、どうしてもうまくいきません。

        質問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;

        }

        #1646
        yokomichi
        Keymaster

          すみません。説明が分かりづらかったですね。
          サンプルを作成しましたので添付します。

          現在のシーンのファイル名を取得する関数:getCurrentFileName()と
          現在のシーンのファイルパスを取得する関数:getCurrentScenePath()を
          追加しています。
          呼び出しのサンプルはbuttonGetCurrentMatrix_Clickに記載しています。
          この方法でいかがでしょうか?

          • This reply was modified 8 months ago by yokomichi.
          #1651
          soushi.maki
          Participant

            また質問で申し訳ないのですが現在CADのシーンのツリーから「X」「Y」「Z」「A」「B」「C」をマウスで選択しているのですが、これは呼出したデータの中に一つだけしか定義されていないユニークな名前です。

            アドイン側からユーザー名を指定(例えば Y)して選択状態とすることは可能でしょうか?

            「MATRIXを取得」して「軸を選択」「原点設定」の操作に手間がかかる。

            #1652
            yokomichi
            Keymaster

              名前からツリーを選択するには、シーンブラウザ(ツリー)をすべて検索して
              IZElementを特定します。
              IZElementが特定されたらSelectionManagerで選択することが可能です。
              ちょっと説明が難しいのでサンプルを追加しました。

              こちらは一度シーンブラウザ(ツリー)すべてリスト化したものから選択できるようにしたものです。
              こちら参考になりませんでしょうか?
              https://github.com/ic-jp-community/ironcad-addin-sample-cs/releases/tag/v0.0.0.5

               

              #1653
              soushi.maki
              Participant

                早々の回答ありがとうございます。

                VisualStudio2015 Communityでビルドは問題なく進むのですがsetupを起動すると

                最後に 「 Error1001 install utllib.dll Unknown error」が出ます。

                関係ないかもしれませんが0.004の時に「icAPI_Sample_CS_SetupのUxTheme.dllは除外」

                は除外とありますが、 icAPI_Sample_CS_Setupの下は添付図のようになってました?

                 

                Attachments:
                #1655
                yokomichi
                Keymaster

                  私の環境では以下のようになっています。(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

                  #1656
                  soushi.maki
                  Participant

                    2台のパソコンで試してみました。どちらも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:
                    #1658
                    yokomichi
                    Keymaster

                      私のほうも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

                      #1659
                      soushi.maki
                      Participant

                        v0.0.0.6無事インストール完了しました。

                        検索めちゃ速くて超感動です。ありがとうございました。前のサンプルで試したときは忘れたときに表示されていたので手でシーンを選択したほうが早いと思い現在のインターフェースを使っていたのですが、今回ので自動選択できそうです。

                        ちなみに試したデータは93MB 3200シーンデータ に2秒でした。

                      Viewing 10 posts - 31 through 40 (of 40 total)
                      • You must be logged in to reply to this topic.