Cylindry są powszechnie stosowane w scenach trójwymiarowych. W różnych aplikacjach do przetwarzania grafiki może być konieczne utworzenie różnych typów cylindrów. Tutaj omówimy, jak wykonać różne rodzaje trójwymiarowych cylindrów z różnymi transformacjami i wariacjami. Wyjaśnia, jak programowo w języku C# utworzyć cylinder 3D z dnem ścinania, górą ścinania i cylindrem wentylatora o różnych długościach theta.

Twórz cylindry 3D programowo — instalacja C# API

Aspose.3D for .NET API może służyć do tworzenia lub manipulowania scenami i obiektami 3D. Co więcej, nie musisz instalować żadnych innych aplikacji ani narzędzi do przetwarzania 3D, aby pracować z interfejsem API. Wystarczy szybko skonfigurować interfejs API ze strony New Releases lub uruchomić poniższe polecenie instalacyjne NuGet:

PM> Install-Package Aspose.3D

Zrób cylinder w C#

Możesz zrobić cylinder w trójwymiarowej scenie, wykonując poniższe czynności:

  1. Zainicjuj obiekt klasy Scene.
  2. Ustaw wierzchołki, aby przekształcić odsunięcie dolnej strony.
  3. Dodaj cylinder do sceny.
  4. Utwórz kolejny cylinder i dostosuj dno ścinania.
  5. Dodaj cylinder i Save wyjściową scenę.

Poniższy fragment kodu pokazuje, jak wykonać następujące kroki i programowo utworzyć cylinder w języku C#:

// Utwórz scenę
Scene scene = new Scene();

// Utwórz cylinder 1
var cylinder1 = new Aspose.ThreeD.Entities.Cylinder(2, 2, 10, 20, 1, false);

// Ustaw odsunięcie dna
cylinder1.OffsetBottom = new Aspose.ThreeD.Utilities.Vector3(5, 3, 0);

// Dodaj cylinder bez ShearBottom do sceny
scene.RootNode.CreateChildNode(cylinder1);

// Utwórz cylinder 2
var cylinder2 = new Aspose.ThreeD.Entities.Cylinder(2, 2, 10, 20, 1, false);

// Dostosowane dno ścinania dla cylindra 2
cylinder2.ShearBottom = new Aspose.ThreeD.Utilities.Vector2(0, 0.83);

// Dodaj cylinder 2 do sceny
scene.RootNode.CreateChildNode(cylinder2).Transform.Translation = new Aspose.ThreeD.Utilities.Vector3(10, 0, 0);

// Zapisz scenę
scene.Save("CustomizedCylinder.obj", FileFormat.WavefrontOBJ);

Ponadto poniższy obraz przedstawia obraz wyjściowy wygenerowany przy użyciu powyższego fragmentu kodu.

Stwórz Cylinder 3D C#

Utwórz cylinder wentylatora w C#

Poniższe kroki wyjaśniają, jak utworzyć cylinder wentylatora w scenie 3D:

  1. Utwórz obiekt klasy Scena.
  2. Utwórz cylinder i ustaw GenerateFanCylinder na true.
  3. Ustaw długość theta i utwórz węzeł potomny.
  4. Utwórz cylinder bez wentylatora i powtórz powyższe kroki.
  5. Zapisz wyjściową scenę.

Poniższy fragment kodu wyjaśnia, jak programowo utworzyć cylinder wentylatora w języku C#:

// Utwórz scenę
Scene scene = new Scene();

// Utwórz cylinder
var fan = new Aspose.ThreeD.Entities.Cylinder(2, 2, 10, 20, 1, false);

// Ustaw GenerateGanCylinder na true
fan.GenerateFanCylinder = true;

// Ustaw ThetaLength
fan.ThetaLength = Aspose.ThreeD.Utilities.MathUtils.ToRadian(270);

// Utwórz węzeł potomny
scene.RootNode.CreateChildNode(fan).Transform.Translation = new Aspose.ThreeD.Utilities.Vector3(10, 0, 0);

// Utwórz cylinder without a fan
var nonfan = new Aspose.ThreeD.Entities.Cylinder(2, 2, 10, 20, 1, false);

// Ustaw GenerateGanCylinder na false
nonfan.GenerateFanCylinder = false;

// Ustaw ThetaDługość 
nonfan.ThetaLength = Aspose.ThreeD.Utilities.MathUtils.ToRadian(270);

// Utwórz węzeł potomny
scene.RootNode.CreateChildNode(nonfan);

// Zapisz scenę
scene.Save("FanCylinder.obj", FileFormat.WavefrontOBJ);

Poniższy zrzut ekranu przedstawia scenę wyjściową utworzoną przy użyciu tego przykładowego kodu:

Utwórz cylinder wentylatora 3D w języku C#

Uzyskaj bezpłatną tymczasową licencję

Możesz poprosić o bezpłatną licencję tymczasową, aby przetestować interfejs API z pełną wydajnością.

Wniosek

W tym artykule nauczyłeś się, jak programowo utworzyć cylinder 3D w języku C#. Obejmuje sposób modyfikowania fragmentu kodu w celu utworzenia różnych kształtów cylindrów. Ponadto możesz zapoznać się z wieloma innymi funkcjami API, przeglądając sekcję dokumentacja. W przypadku jakichkolwiek niejasności skontaktuj się z nami pod adresem forum.

Zobacz też

Konwertuj plik MA na plik USDZ w języku C#