問題タブ [ocean]

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 投票する
1 に答える
206 参照

c# - Ocean を使用してゾーンの属性を作成し、各ゾーンに値を設定する方法

ゾーンの属性を作成する方法がわかりません。

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

ocean - 古いカスタマイズされた Ocean オブジェクトを削除する方法

カスタマイズされた DataSource を実装中です。シリアライゼーション メカニズムに変更を加えているため、プロジェクトを再起動すると、入力データ ツリーに多くの古いオブジェクト エントリ (データ ソースからオブジェクトを読み取ることができませんでした) が表示されます。これらのオブジェクトを入力ツリーから削除するにはどうすればよいですか。通常の削除機能はこれらのオブジェクトに対して機能しません。

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

ocean - 断層の解釈とポリラインの交点の計算

ボアホールが断層を横切っているかどうかをテストできる機能を作成する予定です。私の最初のアイデアは、Borehole と Fault Interpretation を入力として取り、交差点の数を返すワークステップ コンポーネントを作成することでした。障害の解釈がサーフェスと交差しているかどうかを確認するワークステップを既に作成しました。この関数のコアは次のとおりです。

上記は正常に機能し、同じ線に沿って何かを作成して、ポリライン (井戸の軌跡) と断層の解釈を表すポリラインのコレクションから生成されたサーフェスとの交点を計算できると考えていました。重要な問題は、ポリラインのコレクションからサーフェスを取得/生成する方法があるかどうかです。断層の解釈はサーフェス (三角測量) として表示できます。このサーフェスは API からアクセスできますか? API から返されるサーフェスは、ISurfaceIntersectionService への引数として使用できるものである必要があります。これが Ocean api では不可能な場合、ユーザーが事前に障害の解釈を準備して、障害の解釈からサーフェスを作成する方法はありますか? あるいは、効率的な方法で上記を解決するための完全に異なるアプローチがあるのでしょうか?

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

.net - オーシャンユニットテスト

Ocean SDK からユニット テスト サンプルを実行しようとすると、NUnit.exe で dll を読み込もうとするとエラーが発生します。誰でも理由を教えてもらえますか?

以下の NUnit.exe からの例外:

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

ocean - モジュール登録時の Slb.License のエラー

Ocean2010 ライセンスの Slb.License を参照するプロジェクトがあります。私は Petrel 2010.1 に対してビルドしています。

>Petrel 2010.1 (2010.2.2) を実行しているマシンにプラグインをインストールした後、registermodule.exe を使用してモジュールを登録します。Slb.License への参照を持つライセンス モジュールを除いて、すべてのモジュールが正しく登録されます。

RegisterModule.exe で次のエラーが表示されます:「指定されたモジュールを読み込めません。理由: ファイルまたはアセンブリを読み込めませんでした」 . 見つかったアセンブリのマニフェスト定義がアセンブリ参照と一致しません. (HRESULT からの例外: 0x80131040)"

エラーのバージョン 2009.1.4.32700 は、私がビルドしている Petrel 2010.1 にパッケージされている Slb.License のバージョンです。Petrel 2010.2.2 に同梱されている Slb.License のバージョンは 2010.1.5.21635 です。

何かご意見は ?ライセンス モジュールを Petrel.exe.config に手動で追加すると、プラグインが正しく読み込まれ、正しく動作します。私が問題を抱えているそのRegisterModule.exe。

ありがとう。

編集
これは以前のビルドで機能していましたが、正確にはわかりません。

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

ocean - 相互作用するプラグインのデプロイ

共有アセンブリで宣言されたインターフェイスを介して相互作用するプラグインを実装したいと考えています。技術的には、いくつかのプラグインはエンティティを「メイン」プラグインに登録し(統合中)、次にこれらのエンティティを利用します(ペトレルセッション中)。

通常、各プラグインはストア上の個別の製品であるため、個別のPIPでインストールする必要があります。

プラグインは、共有アセンブリに関して下位互換性があります。

PIPインストーラーでこれを達成することは可能ですか?そしてどのように?

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

ocean - ドメインオブジェクトの「Changed」イベントが複数回発生しますか?

入力ツリーからさまざまなオブジェクトを表示するカスタム ウィンドウがあります。入力ツリーでオブジェクトがチェックされ、ウィンドウに表示されたら、オブジェクトの「Changed」イベントをサブスクライブします。私は、イベントに複数回登録していないことを絶対に確信しています。私が見ている問題は、色などのオブジェクトに変更を加えると、イベントが 3 回発生することです。

疑似コード:

編集:
何も変更せずに設定を開いて「OK」をクリックすると、3つのイベントが発生することに気付きました。したがって、実際には色の変更とは何の関係もないと思います。

私もDomainObjectChangeEventArgs PropertyNamesプロパティをチェックしようとしましたが、それは常に空です。

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

visual-studio-2012 - Visual Studio 11 Beta を使用した Ocean 2011 プラグインのビルド - InventorNet.dll の問題

Ocean 2011 プラグインをビルドするための VS11 ベータ版のテストを開始しました。非常にうまく機能しているようで、毎日の仕事に使用することを検討している十分な利点があります. (もちろん、Schlumberger が推奨する前に VS11 を使用して製品ビルドを作成することはありません。)

ただし、ブロッキングの問題が 1 つあります。

InventorNet.dll に依存するプロジェクトはビルドに失敗し、次のメッセージが表示されます。

C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(1546,5): 警告 MSB3270: ビルドされているプロジェクトのプロセッサ アーキテクチャ "MSIL" とのプロセッサ アーキテクチャの間に不一致がありましたリファレンス「InventorNet」、「AMD64」。この不一致により、ランタイム エラーが発生する可能性があります。構成マネージャーを使用してプロジェクトのターゲット プロセッサ アーキテクチャを変更し、プロジェクトと参照の間でプロセッサ アーキテクチャを調整するか、プロジェクトのターゲット プロセッサ アーキテクチャと一致するプロセッサ アーキテクチャの参照に依存することを検討してください。

CSC : 致命的なエラー CS0008: ファイル 'c:\Program Files\Schlumberger\Petrel 2011\InventorNet.dll' からメタデータを読み取り中に予期しないエラーが発生しました -- 'インデックスが見つかりません'*

他の依存関係から同様の警告が発行されるため、最初の警告は無害だと思いますが、エラーメッセージ (太字) を通過できません。どちらもおそらく、MSBuild で使用される .NET 4.5 (ベータ版) のより厳密なアセンブリ検証に由来します。私たちのプロジェクトは .NET 3.5 をターゲットにしています。

何らかの設定やその他のトリックでエラーを修正できるかどうか、またはシュルンベルジェから更新されたアセンブリが必要かどうかを誰かが知っていますか? (Google 検索では、VS2010 に関連するいくつかの同様のケースが見つかり、アセンブリ プロバイダーが問題を修正するためにアセンブリを再構築する必要があることを示しています。)

あるいは、この問題が Ocean 2012 によって修正されるかどうかを誰かが示すことができますか?

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

ocean - OceanWorkstep派生クラスのリファクタリング/名前変更

Ocean Workstep派生クラスが本番環境にリリースされると(そしてクライアントによって使用されると)、その名前、名前空間、およびアセンブリ名は、将来の更新のために効果的にロックされるようです(下位互換性を確保するため)。

Petrelプロジェクトが保存されると、ワークステップ参照はバイナリファイルClasses.ptd内にフルタイプ名(名前空間、クラス、厳密なアセンブリ名)として保存されます。ロード中に、正確なタイプ名(アセンブリバージョンが無視されているように見える)を解決できない場合、ワークフローエディターにワークステップが「ワークステップが利用できません」と表示されます。

私たちが遭遇したバイナリシリアル化の他のインスタンスでは、PetrelはSerializationBinder登録済みを利用PetrelSystem.ProjectSerializationServiceします-Workstepインスタンスではそうではありません。

Workstepクラス/名前空間/アセンブリの名前変更を容易にする他の方法はありますか?

なぜこの振る舞いは(もしあったとしても)あまり文書化されていないのですか?私たちは何かを誤解しましたか?