AutoCADでインフォボックス機能を作成したいと思います。Google Earthの一部の機能にカーソルを合わせると、画像付きのインフォボックスが表示されます。
パレットの使用を考えていましたが、インフォボックスのように調整する方法がわかりません。
.NEtプラグインを作成する予定です。
助言がありますか?
AutoCADでインフォボックス機能を作成したいと思います。Google Earthの一部の機能にカーソルを合わせると、画像付きのインフォボックスが表示されます。
パレットの使用を考えていましたが、インフォボックスのように調整する方法がわかりません。
.NEtプラグインを作成する予定です。
助言がありますか?
**そうですね、AutoCADのツールチップを使用するのが最善の方法だと思います。コードスニペットは次のとおりです。
Autodesk.Windows.ComponentManager.ToolTipOpened +=
(s, e) =>
{
Autodesk.Internal.Windows.ToolTip tooltip =
s as Autodesk.Internal.Windows.ToolTip;
if (tooltip != null)
{
var image = new System.Windows.Controls.Image();
var bitmapImage = new BitmapImage();
bitmapImage.BeginInit();
bitmapImage.UriSource = new Uri(@"C:/index.jpeg");
bitmapImage.EndInit();
image.Source = bitmapImage;
tooltip.Height = image.Height;
tooltip.Width = image.Width;
tooltip.Content = image;
}
};
今は元気そうです。:)**
以下のコメントで述べたように、ここにこのソリューションのスクリーンショットがあります
お気づきかもしれませんが、ツールチップがジオメトリの近くに配置されていないため、ピンクのツールチップを選択しました。それが私の最後の問題です。私のフローは、オブジェクトを選択すると、このエンティティに接続されたいくつかの画像ファイルを提供するwinフォームlistBoxを取得したことです。いずれかを選択すると、tootltipが開きますが、リストボックスダイアログに比較的関連しているようです。ツールチップの位置を手動で設定する方法を見つけることができませんでした。助言がありますか?
PointMonitorを使用して、マウスの動きを検出できます。http: //through-the-interface.typepad.com/through_the_interface/2009/07/pproving-information-on-autocad-objects-in-a-tooltip-using-net .html
また、画像を表示するには、パレットでWPFを使用できます:http://through-the-interface.typepad.com/through_the_interface/2009/08/hosting-wpf-content-inside-an-autocad-palette.html
PointMonitorを使用して、関心のあるエンティティがカーソル位置の下にあるかどうかを検出し、該当する場合は独自のウィンドウをポップアップして、リストボックスやコンボボックスなどに画像を保持する方が制御性と柔軟性が高くなります。ウィンドウは、選択したWPFまたはWinFormにすることができます。
それは間違いなく実行可能であり、一部のアプリケーションはすでにこれらの手法をかなり成熟して使用しています。ウィンドウピクセルからAutoCADディスプレイシステムまで、DCSからWCSまで、前後に、いくつかの調整変換要素を考慮する必要があります。
さて、残っているのはパフォーマンスだけかもしれません。次のヒントが少し役立つことを願っています。