Working with Profiles
Working with Profiles
Profiles in Aspose.3D for .NET define 2D cross-section shapes used as inputs to extrusion and solid revolution operations. LinearExtrusion sweeps a profile along a path and RevolvedAreaSolid revolves it around an axis.
Parameterized Profiles
ParameterizedProfile provides standard geometric shapes — rectangle, circle, ellipse, trapezoid, and others — defined by numeric parameters rather than explicit polygon vertices.
using Aspose.ThreeD;
using Aspose.ThreeD.Entities;
using Aspose.ThreeD.Profiles;
var scene = new Scene();
// Rectangle profile: 2 units wide, 1 unit tall
var rectProfile = new RectangleShape();
rectProfile.XDim = 2.0;
rectProfile.YDim = 1.0;
// Extrude the rectangle 5 units along Z
var extrusion = new LinearExtrusion(rectProfile, 5.0);
extrusion.Slices = 10;
scene.RootNode.CreateChildNode("beam", extrusion);
scene.Save("beam.gltf", FileFormat.GLTF2);Other shapes in ParameterizedProfile:
| Class | Parameters |
|---|---|
RectangleShape | XDim, YDim, RoundingRadius |
CircleShape | Radius |
LShape | Width, Depth, Thickness, FilletRadius |
TShape | Depth, FlangeWidth, WebThickness, FlangeThickness |
Parameterized L-shaped Profiles
LShape is a parameterized profile that produces an L-section structural beam from dimensional properties:
using Aspose.ThreeD.Profiles;
// L-shaped cross-section structural beam
var lProfile = new LShape();
lProfile.Width = 0.1;
lProfile.Depth = 0.2;
lProfile.Thickness = 0.01;
var extrusion = new LinearExtrusion(lProfile, 4.0);
scene.RootNode.CreateChildNode("l_beam", extrusion);Mirrored Profiles
MirroredProfile creates a symmetric cross-section by mirroring a base profile. Pass any Profile instance to the constructor; the library generates the mirrored shape automatically.
using Aspose.ThreeD.Profiles;
// Base profile to mirror
var baseProfile = new RectangleShape();
baseProfile.XDim = 0.5;
baseProfile.YDim = 1.0;
// Mirror the base profile to get a symmetric shape
var mirrored = new MirroredProfile(baseProfile);
var extrusion = new LinearExtrusion(mirrored, 3.0);
scene.RootNode.CreateChildNode("symmetric_beam", extrusion);Centerline Profiles
CenterLineProfile wraps a Curve and a wall thickness to produce a hollow cross-section (e.g., a tube wall). Pass the centerline curve and thickness to the constructor.
using Aspose.ThreeD.Profiles;
using Aspose.ThreeD.Entities;
var circle = new Circle { Radius = 0.5 };
var tube = new CenterLineProfile(circle, 0.05); // 5 cm wall
var extrusion = new LinearExtrusion(tube, 10.0);
scene.RootNode.CreateChildNode("pipe", extrusion);API Quick Reference
| Member | Description |
|---|---|
new RectangleShape() | Rectangular parameterized profile (XDim, YDim, RoundingRadius) |
new CircleShape() | Circular parameterized profile (Radius) |
new LShape() | L-shaped structural beam profile |
new TShape() | T-shaped structural beam profile |
new MirroredProfile(base) | Symmetric profile mirrored from a base profile |
new CenterLineProfile(curve, thickness) | Hollow profile with given wall thickness |
new LinearExtrusion(profile, height) | Sweep a profile along the Z axis |
extrusion.Slices | Number of subdivision segments along the sweep |
new RevolvedAreaSolid() | Revolve a profile around an axis; set Shape and AngleEnd properties |
See Also
- Aspose.3D for .NET — Enterprise Documentation
- Working with Scene Entities — attach extruded solids to scene nodes