円柱は、3 次元のシーンでよく使用されます。さまざまなグラフィックス処理アプリケーションでは、さまざまな種類の円柱を作成する必要がある場合があります。ここでは、さまざまな変換とバリエーションを持つさまざまな種類の 3 次元シリンダーを作成する方法について説明します。シアー ボトム、シアー トップ、シータの長さが異なるファン シリンダーを備えた 3D シリンダーを C# でプログラムによって作成する方法について説明します。
プログラムによる 3D 円柱の作成 – C# API のインストール
Aspose.3D for .NET API を使用して、3D シーンとオブジェクトを作成または操作できます。さらに、API を使用するために他の 3D 処理アプリケーションやツールをインストールする必要はありません。 New Releases ページから API をすばやく構成するか、以下の NuGet インストール コマンドを実行するだけです。
PM> Install-Package Aspose.3D
C# で円柱を作成する
次の手順に従って、3 次元シーンで円柱を作成できます。
- Scene クラスのオブジェクトを初期化します。
- 下辺のオフセットを変換する頂点を設定します。
- 円柱をシーンに追加します。
- 別の円柱を作成し、シアー ボトムをカスタマイズします。
- 円柱を追加し、出力シーンを保存します。
以下のコード スニペットは、これらの手順に従い、C# でプログラムによって円柱を作成する方法を示しています。
// シーンを作成する
Scene scene = new Scene();
// 円柱 1 を作成する
var cylinder1 = new Aspose.ThreeD.Entities.Cylinder(2, 2, 10, 20, 1, false);
// OffsetBottom を設定
cylinder1.OffsetBottom = new Aspose.ThreeD.Utilities.Vector3(5, 3, 0);
// ShearBottom なしでシリンダーをシーンに追加する
scene.RootNode.CreateChildNode(cylinder1);
// 円柱 2 を作成する
var cylinder2 = new Aspose.ThreeD.Entities.Cylinder(2, 2, 10, 20, 1, false);
// シリンダー 2 のカスタマイズされたシアー ボトム
cylinder2.ShearBottom = new Aspose.ThreeD.Utilities.Vector2(0, 0.83);
// シリンダー 2 をシーンに追加する
scene.RootNode.CreateChildNode(cylinder2).Transform.Translation = new Aspose.ThreeD.Utilities.Vector3(10, 0, 0);
// シーンを保存
scene.Save("CustomizedCylinder.obj", FileFormat.WavefrontOBJ);
さらに、次の画像は、上記のコード スニペットを使用して生成された出力画像を示しています。
C# でファン シリンダーを作成する
次の手順では、3D シーンでファン シリンダーを作成する方法について説明します。
- Scene クラス オブジェクトを作成します。
- 円柱を作成し、GenerateFanCylinder を true に設定します。
- theta の長さを設定し、子ノードを作成します。
- ファンのない円柱を作成し、上記の手順を繰り返します。
- 出力シーンを保存します。
次のコード スニペットは、C# でプログラムによってファン シリンダーを作成する方法を詳しく説明しています。
// シーンを作成する
Scene scene = new Scene();
// 円柱を作成する
var fan = new Aspose.ThreeD.Entities.Cylinder(2, 2, 10, 20, 1, false);
// GenerateGanCylinder を true に設定します
fan.GenerateFanCylinder = true;
// シータ長を設定
fan.ThetaLength = Aspose.ThreeD.Utilities.MathUtils.ToRadian(270);
// ChildNode の作成
scene.RootNode.CreateChildNode(fan).Transform.Translation = new Aspose.ThreeD.Utilities.Vector3(10, 0, 0);
// 円柱を作成する without a fan
var nonfan = new Aspose.ThreeD.Entities.Cylinder(2, 2, 10, 20, 1, false);
// GenerateGanCylinder を false に設定します
nonfan.GenerateFanCylinder = false;
// ThetaLengeth の設定
nonfan.ThetaLength = Aspose.ThreeD.Utilities.MathUtils.ToRadian(270);
// ChildNode の作成
scene.RootNode.CreateChildNode(nonfan);
// シーンを保存
scene.Save("FanCylinder.obj", FileFormat.WavefrontOBJ);
次のスクリーンショットは、このサンプル コードを使用して作成された出力シーンを示しています。
無料の一時ライセンスを取得する
無料の一時ライセンス をリクエストして、API を最大限にテストすることができます。
結論
この記事では、C# でプログラムによって 3D 円柱を作成する方法を学習しました。コード スニペットを変更してさまざまな円柱形状を作成する方法について説明します。さらに、ドキュメント セクションを参照することで、API の他の多くの機能を調べることができます。不明な点がある場合は、フォーラム までお問い合わせください。