問題タブ [opencascade]
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.
import - OpenCascade からのエクスポート、OpenSceneGraph へのインポート
OCC を使用したモデリング ツールと、OSG を使用した 3D エディタがあります。私がやりたいことは、最初のツールからモデルをエクスポートし、2 番目のツールにインポートすることです。何日も Web を検索していますが、解決策が見つかりません。
私の問題を解決できるのは次の 3 つです。
- OCC が OSG でサポートされている形式 (.ive、.osg など) にエクスポートするためのエクスポーター。
- OSG が OCC でサポートされている形式 (.stp、.step、.igs、.iges、.brp、.brep) からインポートするためのインポーター、
- OCC がサポートする形式と OSG がサポートする形式の 2 つの形式を変換するための変換ツールです。
誰かがこれを以前に行ったことがありますか、または役立つことを知っていますか?
OCC 用のカスタム エクスポーターを作成しないようにしています。
c++ - メモリリークの多いサードパーティ DLL のサンドボックス化について
私が使用しなければならない漏れのある DLL の症状を少なくとも治す方法を探しています。ライブラリ(OpenCascade)はメモリマネージャーを提供すると主張していますが、割り当てられたメモリを解放することはまだできていません。
OCC モジュールが実行されていない間にアプリケーションがメモリを失わないようにするために、少なくともこのモジュールへの呼び出しを「サンドボックス」に入れたいと思います。
私の質問は次のとおりです。これを行うのは UGLY HACK (TM) になることは承知していますが、ライブラリによって特に使用されるメモリのストレッチを事前に割り当てたり、その周りに何らかのサンドボックスを構築したりして、私が終わったときに自分でそれらを解放するために使用したメモリの領域を追跡しますか?
または、それは醜いハックであり、そうでなければ問題を解決しようとする必要がありますか?
linux - マルチスレッド: ベクトルにデータが取り込まれている間に、ベクトル内のデータを処理する方法は?
並列にしたいシングルスレッドのLinuxアプリがあります。データ ファイルを読み取り、オブジェクトを作成し、それらをベクトルに配置します。次に、各オブジェクトで計算集約型のメソッド (0.5 秒以上) を呼び出します。オブジェクト作成と並行してメソッドを呼び出したい。私は qt と tbb を見てきましたが、他の選択肢も受け入れています。
ベクトルが空のときにスレッドを開始する予定でした。それぞれがmakeSolids
(下記) を呼び出します。これには、interpDone==true まで実行され、ベクター内のすべてのオブジェクトが処理されるまで実行される while ループがあります。ただし、私はスレッド化に関しては無頓着であり、既製のソリューションを探していました。
QtConcurrent::map(Iter begin,Iter end,function())
非常に簡単に見えますが、サイズが変化するベクターには使用できませんよね? さらにデータを待つようにするにはどうすればよいでしょうか。
intel の tbb も見ましたが、parallel_for
orを使用するとメインスレッドが停止するように見えましparallel_while
た。彼らのメモリマネージャーが推奨されていたので、それは悪臭を放ちます(オープンカスケードの mmgt はマルチスレッド化するとパフォーマンスが低下します)。
編集: 要約すると、メイン スレッドがベクターにデータを入力すると同時にベクターを処理する最も簡単な方法は何ですか?
geometry - Gコードを生成 | B スプラインを円形セクションに分解する
B スプラインを一連の円定義に分解しようとしています。G コードを生成しようとしています。ここでの考え方は、b スプラインをいくつかの円形補間に分割することです [ G02 ]。PythonOCC を使用すると、b スプラインを多数のベジエ曲線に分割できますが、ベジエを円形セクションに変換する方法がわかりません。
ありがとう
visual-c++ - [名前を付けて保存] ダイアログ ボックスにファイルが既に存在することを確認する - c++、opencascade
その形状の各面が face1、face 2 などの異なるパッチ名を持つ特定の形状の .stl ファイルを作成したいと考えています。これは、opencascade で StlAPI_Writer および RWStl クラスをオーバーライドすることによって行いました。そのために、file.Build メソッドの代わりに file.Append メソッドを使用しました。しかし、既存のファイルに .stl ファイルを保存すると問題が発生します。既存のファイルに誤ったデータが追加されます。ファイル内の既存のデータを削除し、特定の形状に面ごとに新しいデータを追加したいと考えています。
これについて私を助けてください。
visual-c++ - opencascade プロジェクトのメモリを増やす
私の opencascade プロジェクトは、Visual C++ 環境でビルドされています。私の問題は、プログラムを実行しようとすると、「グラフィックの初期化で致命的なエラーが発生しました」というエラーが発生することです。Bat ファイルを使用して、それを使用してメモリ割り当てを設定できますか? 私を助けてください。
ありがとう。
cocoa - Cocoa に X11 ウィジェットを埋め込む
OpenCasCade API を pythonic の方法で公開する pythonocc に取り組んでいます。OCC は、Windows または X11 GUI 環境に結合されています。これは OSX ではやや問題があります。Cocoa ではなく X11 用の [Py]Qt4 をビルドする必要があるため、配布が必要以上に難しくなります。したがって、次の質問です。Cocoa に X11 ウィジェットを埋め込むことは可能ですか? これにより、Cocoa に PyQt4 / PySide を使用できるようになり、作業がずっと簡単になります。
opengl - GUI での複雑な形状の 3D 視覚化
(構造化された) メッシュ生成ソフトウェア ( Gmeshに似ています) と、場合によっては 3D の前/後処理 ( Salomeなど)用の小さなクロスプラットフォームを開発したいと思います。
物事を簡単にするために、既に作成されているライブラリを使用して、必要なものの開発により集中したいと考えています。
1. 幾何学的モデリング機能
2. GUI
3. 3D ビジュアライゼーション
が必要です。
私は周りを見回してきましたが、ワークフロー全体が少しぼやけています。pyGTKとGLADEは私にとって良い選択
だと思います(コミュニティとpyQtに関する非常にオープンなライセンスのため)。
モデリング部分は
Cascade (できればpythonOCC ) を開きますが、pyGTK ウィジェットでの視覚化については、どうすればよいかわかりません。openGL ( PyGtkGLExt
)
を使おうと思っていたのですが、OpenGL が低レベルすぎることがわかりました。FreeCAD (http://goo.gl/V4FCW) は、この理由でCoin3D (おそらくpyvyを使用できます) を使用しますが、 GmeshのようなソフトウェアはOpenGLを直接使用します。その上、科学的な視覚化にはおそらくVTKの方が優れていることがわかりましたが、それが OpenGL に基づいているかどうかはわかりません。私の意見では、OpenGL は、ソフトウェア全体を高速化するグラフィック カード ドライバーによってサポートされているため、優れています。
pythonOCC によって構築されたジオメトリを pyGTK ウィジェットにレンダリングできるはずですが、どの種類のライブラリを使用するのがよいでしょうか? OpenGL だけで (おそらくプログラムが複雑になる?) OpenGL の使用を高速化するための Coin3D (または類似)
VTKだけ?VTK と OpenGL の組み合わせ?
他の組み合わせおよび/またはライブラリ?
この種のソフトウェアの経験はありますか?
それについて提案はありますか?これらのライブラリを組み合わせて使用する方法が説明されているチュートリアルを知っていますか?
macos - MAC (Mountain Lion) で OpenCASCADE をビルドする方法
Mac で OpenCASCADE をビルドしようとしていますが、うまくいきません。
Github から tar.gz でダウンロードしましたが、Mac は初めてで、行き詰まっています。
次のステップを説明できる人はいますか?
(使用すべきいくつかの端末コマンドを見つけましたが、それらに慣れていません。したがって、Mac で OpenCASCADE をビルドする正しい方法である場合は、端末コマンドを詳細に書き留めてください。ありがとう!)
編集:
以下のリンクからコマンドラインコマンドを理解しました。私も以前にそれを理解していましたが、私の主な問題はgccがインストールされていなかったため、間違っていました(XCodeはgccを自動的にインストールしません...)。とにかく、ようやくcmakeコマンドを実行できるようになりました。それは始まりますが、これで終わります:
/Applications/CMake 2.8-9.app/Contents/share/cmake-2.8/Modules/FindX11.cmake:420 での CMake エラー (メッセージ): X11 コール スタックが見つかりませんでした (最新の呼び出しが最初): CMakeLists.txt:313 (FIND_PACKAGE)
誰が何をすべきか考えていますか?ここでもこれを検索しようとしましたが、グーグル...そしていくつかの「解決策」を見つけましたが、それらはうまくいきませんでした。
編集 編集:
最後の編集の解決策は、Mountain Lion が X11 をインストールしないことです。X11 または Xquartz を使用するアプリを開くと、自動的にインストールされます。
残念ながら、それはまだ機能しません。次のエラー メッセージは、ターミナルでの make コマンドの後の次のとおりです。
/Users/davidbirkas/Documents/tpaviot-oce-6c9a06a/src/AlienImage/AlienImage_X11XWDAlienData.cxx:14 から含まれるファイル: /Users/davidbirkas/Documents/tpaviot-oce-6c9a06a/inc/Aspect_XWD.hxx:5:12:致命的なエラー: 'X11/XWDFile.h' ファイルが見つかりません # include ^ 1 エラーが生成されました。make[2]: * [adm/cmake/TKService/CMakeFiles/TKService.dir/_ / _/__/src/AlienImage/AlienImage_X11XWDAlienData.cxx.o] エラー 1 make 1 : [adm/cmake/TKService/CMakeFiles/TKService.dir/all] エラー 2 make: * * [all] エラー 2
これを修正する方法はありますか?