** CAD (Computer-Aided Design) 図面は通常、CADソフトウェアプログラムを使用して建築計画とモデルを作成するために使用されます。よく知られているAutoCADファイル形式には、 DWG、DXF、DGN、DWF**があります。別の記事でJavaを使用したCAD図面の表示について説明しました。今日、この記事では、.NETアプリケーション内でC#を使用してCADファイルをプログラムで表示する方法について説明します。

以下のトピックについて簡単に説明します。

.NET CAD Viewer API – DWG、DXF、DWF、DGN

この記事では、GroupDocs.Viewer for .NETを使用して、.NETアプリケーション内でDWGなどのCADファイルをPDF、JPG、PNG、およびHTMLにプログラムでレンダリングできるようにします。 DWGに加えて、APIはDWF、DGN、DWT、DXF、IFC、STL、プロッタードキュメント、およびその他をサポートします。

CADファイル形式を除いて、APIは、ワードプロセッシングドキュメント、スプレッドシート、プレゼンテーション、Webページ、画像、ベクター、eBook、Visio図面、さまざまなプログラミング言語の多くのソースコードファイルに対して同じレンダリング機能を提供します。

ダウンロードセクションからDLLまたはMSIインストーラーをダウンロードするか、NuGetを介して.NETアプリケーションにAPIをインストールします。

PM> Install-Package GroupDocs.Viewer

CAD図面をC#でHTML、PNG、JPG、またはPDFとして表示するように変換します

この記事では、例を使用して他の形式への変換とレンダリングにDWG形式のみを使用しています。 DWGデザインファイルを変換して、C#を使用した外部リソースオプションが埋め込まれたHTMLとしてレンダリングすることから始めましょう。

DWGをC#の埋め込みリソースを使用してHTMLに変換する

以下は、DWGファイルをHTMLとしてレンダリングするように変換する方法の手順です。

  • Viewerクラスを使用してDWGファイルをロードします。
  • _ forEmbeddedResources_メソッドを使用してHtmlViewOptionsを作成します。
  • _ View_メソッドを使用して.dwgをHTMLにレンダリングします。

次のソースコードは、DWGファイルを変換し、C#を使用してリソースが埋め込まれたHTMLとしてレンダリングします。

// DWG CAD図面をレンダリングして、C#を使用してリソースが埋め込まれたHTMLとして表示します
using (Viewer viewer = new Viewer("drawing.dwg"))
{
    HtmlViewOptions viewOptions = HtmlViewOptions.ForEmbeddedResources("page_{0}.html");
    viewer.View(viewOptions);
}

C#で外部リソースを使用してDWGをHTMLに変換する

以下は、DWGファイルを変換し、外部リソースを使用してHTMLファイルとしてレンダリングするための手順です。

  • Viewerクラスを使用してDWGファイルをロードします。
  • _ forExternalResources_メソッドを使用してHtmlViewOptionsを作成します。
  • _ View_メソッドを使用して.dwgをHTMLとしてレンダリングします。

次のソースコードは、DWGファイルをC#の外部リソースを含むHTMLとしてレンダリングします。

// C#CAD図面をレンダリングして、C#を使用して外部リソースを含むHTMLとして表示します
using (Viewer viewer = new Viewer("drawing.dwg"))
{
    HtmlViewOptions viewOptions = HtmlViewOptions.ForExternalResources(
        "page_{0}.html","page_{0}/resource_{1}","page_{0}/resources");

    viewer.View(viewOptions);
}

C#でDWGをPDF、JPG、PNGに変換する

HTML形式への変換と同様に、DWGファイルは次のようにそれぞれのViewOptionsを使用してPDF、PNG、およびJPG形式としてレンダリングできます。

C#でDWGのレイアウトとレイヤーを取得する

CADファイルには複数のレイアウトとレイヤーを含めることができます。次の手順を使用して、これらのレイアウトとレイヤーを取得できます。

  • Viewerクラスを使用してDWGファイルをロードします。
  • HTMLビューレンダリング用のViewInfoOptionsを作成します。
  • Viewerを使用して、レイアウトのあるCadViewInfoを取得します。
  • CadViewInfoからレイアウトを取得し、それらを繰り返し処理します。
  • 同様に、CadViewInfoからレイヤーを取得し、それらを反復処理します。

次のコードは、C#を使用してاDWGファイルのレイアウトとレイヤーを取得する方法を示しています。

// C#でDWGCAD図面のレイアウトとレイヤーを取得する
using (Viewer viewer = new Viewer("drawing.dwg"))
{
    ViewInfoOptions viewInfoOptions = ViewInfoOptions.ForHtmlView();
    CadViewInfo viewInfo = viewer.GetViewInfo(viewInfoOptions) as CadViewInfo;

    Console.WriteLine("File type: " + viewInfo.FileType);
    Console.WriteLine("Pages count: " + viewInfo.Pages.Count);

    foreach (Layout layout in viewInfo.Layouts)
        Console.WriteLine(layout);

    foreach (Layer layer in viewInfo.Layers)
        Console.WriteLine(layer);
}

C#でDWGファイルのCADレイヤーをレンダリングする

すべてのレイヤーをレンダリングするのではなく、DWGの特定のレイヤーのみをレンダリングする場合は、レイヤー名を設定することでレンダリングできます。

  • Viewerクラスを使用してDWG図面をロードします。
  • 表示オプションを作成します。
  • 表示オプションにCADレイヤーを追加します
  • _ View_メソッドを使用してDWGをHTMLにレンダリングします。

次のコードは、DWG形式のCADファイルのレイヤーをC#でレンダリングします。

// C#で.dwgCAD図面のレイヤーをレンダリングする
using (Viewer viewer = new Viewer("drawing.dwg"))
{
    HtmlViewOptions viewOptions = HtmlViewOptions.ForEmbeddedResources();
    viewOptions.CadOptions.Layers = new List<Layer>
    {
        new Layer("Walls"),
        new Layer("Windows")
    };
    viewer.View(viewOptions);
}

C#でDWGファイルのCADレイアウトをレンダリングする

デフォルトでは、CADファイルをレンダリングするときにのみモデルプレゼンテーションを取得します。モデルとともに空でないすべてのレイアウトをレンダリングするプロパティを設定できます。

  • Viewerクラスを使用してDWG図面をロードします。
  • 表示オプションを作成します。
  • RenderLayoutsプロパティをtrueに設定します。
  • _ View_メソッドを使用してDWGをHTMLにレンダリングします。

次のコードは、空でないすべてのレイアウトを、C#のDWG形式のCAD図面のモデルとともにレンダリングします。

// C#で.dwgCAD図面のレイアウトをレンダリングする
using (Viewer viewer = new Viewer("drawing.dwg"))
{
   HtmlViewOptions viewOptions = HtmlViewOptions.ForEmbeddedResources();
   viewOptions.CadOptions.RenderLayouts = true;
   viewer.View(viewOptions);
}

無料のAPIライセンスを取得する

評価の制限なしにAPIを使用するために、無料の一時ライセンスを取得できます。

結論

結論として、.NETアプリケーション内でC#でCADファイルを表示する方法を学習したことを願っています。さらに、アプリケーション内でCADファイルのモデル、レイアウト、およびレイヤーを取得して表示する方法を見てきました。 C#を使用して独自のCADビューアを構築することに自信を持っている必要があります。 オンラインアプリケーションを体験して、任意のファイルを表示することができます。これらは、GroupDocs.Viewerを使用して構築されます。

ドキュメントを使用して、GroupDocs.Viewerfor.NETの詳細を確認できます。ご不明な点がございましたら、フォーラムからお気軽にお問い合わせください。

関連項目