問題タブ [catia]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
997 参照

vba - vba/catvba クラスのインスタンス化

クラスをグローバルに宣言したい ここに私の例があります:

次のように見えるクラス clsIEError を使用したい:

そして、これがどのように機能するかです

しかし、私の問題は、それをグローバルに使用したいということです

パブリックデフォルトメソッドが機能しないのはなぜですか?

0 投票する
1 に答える
1521 参照

catia - Excel マクロを CATIA V6 と連携させるにはどうすればよいですか?

Excel データを使用して CATIA V5 でジオメトリを作成する Excel マクロを作成しました。現在、CATIA V6 で動作させる方法を見つけようとしています。CATIA で開いているパーツを検索するコマンドがわかりません。CATIA V6 マクロのサンプル コードを見つけることができませんでした。CATIA V6 マクロの例を見つける場所を知っている人はいますか?

0 投票する
3 に答える
5274 参照

vb.net - VB.Net で COM オブジェクトの特定のインスタンスを取得する

サードパーティの CAD/CAM ソフトウェア (この場合は CATIA) の実行中のすべてのインスタンスを一覧表示し、ユーザーがそのうちの 1 つを選択していくつかの自動化されたタスクを実行できるようにするために、.Net で Windows フォーム アプリケーションを作成しています。自動化されたタスクを実行するには、COM オブジェクトの特定のインスタンスを取得する必要があります。Getobject() では非特定の COM インスタンスが得られます。ウィンドウ ハンドルまたはその他の方法を使用して特定の COM インスタンスを取得する方法はありますか?

更新:レイモンドが言ったように、すべての COM オブジェクトに対する単一のソリューションはありません。ただし、次のコードを使用して CATIA COM オブジェクトを取得できました (ROT を使用して、すべての CATIA COM インスタンス名をリストに入力します)。

ただし、すべての CATIA インスタンスは、ロードされた最初の CATIA アプリケーションを参照します。理由がわからない、誰か?

0 投票する
0 に答える
516 参照

c# - Visual Studio 2010 VB と C# のデバッグ出力が同一の COM プロジェクトで異なるのはなぜですか?

この問題がすでに説明されている場合は申し訳ありませんが、検索しても理解できる答えが見つかりませんでした。私は何年も VB.Net を使用して、ライブラリを追加し、公開されているメソッドやプロパティなどを呼び出すことで CATIA を自動化しています。いくつかの基本的なコードを C#.Net に書きましたが、オブジェクトが同じ環境で公開されていないことに失望しました。 VB と同じように。つまり、デバッガーまたはウォッチ ウィンドウでオブジェクトを調べると、プロパティは C# では表示されませんが、VB では表示されます。これにより、C# で CATIA オートメーションをデバッグすることがほとんど不可能になり、正しくないように思えます。何かが欠けているに違いない。COM ライブラリをプロジェクトに追加し、ヘッダーに適切にインクルードしました。インテリセンスは機能しており、CATIA オブジェクトの基本的なメソッドはウォッチ/デバッグで表示されますが、すべてのメソッドとプロパティが表示されるわけではなく、デバッグで object.get_Name() などを手動で入力してそれらを調べることはできません。窓。同一コードの 2 つのウォッチ ウィンドウ結果の画像を添付しました。1 つ目は VB.Net からのもので、さらに多くの情報が利用可能であることがわかります。2 つ目は C#.Net からのもので、入手できる情報がいかに少ないかがわかります。COM 相互運用機能アセンブリの VB デバッガーに表示されるのと同じレベルの情報に C# デバッガーでアクセスするにはどうすればよいですか? ここで手がかりになる可能性があることに気付きました。VB には、C# の get_ メソッドとして登場する多くのオブジェクト プロパティがあるということです。たとえば、VB の Document.Name プロパティは、C# では Document.get_Name() として検出されます。

「少なくとも 10 の評判ポイントが必要」なので、このサイトでは画像を投稿できません。問題の説明が十分にあることを願っています。

0 投票する
3 に答える
1604 参照

vba - CATIA VBA は、パーツを移動するときに拘束を維持します

VBA で記述した CATIA V5 のマクロを使用して、仕様ツリー内のパーツを移動します。

しかし、そうすると、パーツ間の制約が失われます。その制約を守りたい。

ただし、制約オブジェクトを介して参照を検索すると、BREP が実際に属している部分に関する情報がなくても、BREP の名前しか取得できません。

私ができることに関するヒントはありますか?

0 投票する
0 に答える
555 参照

javascript - ポップアップを開く

一部のユーザーが便利な小さなインターフェースからスクリプト (実際には CATScript) を実行できるようにするポップアップを作成しました。スクリプトは Catia で実行され、ポップアップで提供される 32 個のリンクが必要です (醜いですが便利ですよね?)

正常に動作しますが、ポップアップは他のウィンドウによって隠され続けます。

だから私はこれを私のヘッダーに追加します(このウェブサイトにあります):

これは機能しますが、面倒です。ポップアップのリンクをクリックすると、フォーカスが維持され、ユーザーが他のプログラムにコメントを入力するのを防ぎます。

したがって、私の必要性は次のとおりです。ポップアップを「常に上に」前面に表示しますが、「フォーカス」はありません。それは可能ですか?

PS: 私の会社の制限とコードの実装により、これは IE でのみ実行されます (完全にブロックされており、他のブラウザーではアクセスできません)。

前もって感謝します!