MeshLib Documentation
Loading...
Searching...
No Matches
MRMesh/MRTorus.h
Go to the documentation of this file.
1#pragma once
2#include "MRMeshFwd.h"
3
4namespace MR
5{
6// Z is symmetry axis of this torus
7// points - optional out points of main circle
8MRMESH_API Mesh makeTorus( float primaryRadius = 1.0f, float secondaryRadius = 0.1f, int primaryResolution = 16, int secondaryResolution = 16,
9 std::vector<Vector3f>* points = nullptr );
10
11// creates torus without inner half faces
12// main application - testing fillHole and Stitch
13MRMESH_API Mesh makeOuterHalfTorus( float primaryRadius = 1.0f, float secondaryRadius = 0.1f, int primaryResolution = 16, int secondaryResolution = 16,
14 std::vector<Vector3f>* points = nullptr );
15
16// creates torus with inner protruding half as undercut
17// main application - testing fixUndercuts
18MRMESH_API Mesh makeTorusWithUndercut( float primaryRadius = 1.0f, float secondaryRadiusInner = 0.1f, float secondaryRadiusOuter = 0.2f, int primaryResolution = 16, int secondaryResolution = 16,
19 std::vector<Vector3f>* points = nullptr );
20
21// creates torus with some handed-up points
22// main application - testing fixSpikes and Relax
23MRMESH_API Mesh makeTorusWithSpikes( float primaryRadius = 1.0f, float secondaryRadiusInner = 0.1f, float secondaryRadiusOuter = 0.5f, int primaryResolution = 16, int secondaryResolution = 16,
24 std::vector<Vector3f>* points = nullptr );
25
26// creates torus with empty sectors
27// main application - testing Components
28MRMESH_API Mesh makeTorusWithComponents( float primaryRadius = 1.0f, float secondaryRadius = 0.1f, int primaryResolution = 16, int secondaryResolution = 16,
29 std::vector<Vector3f>* points = nullptr );
30
31// creates torus with empty sectors
32// main application - testing Components
33MRMESH_API Mesh makeTorusWithSelfIntersections( float primaryRadius = 1.0f, float secondaryRadius = 0.1f, int primaryResolution = 16, int secondaryResolution = 16,
34 std::vector<Vector3f>* points = nullptr );
35}
#define MRMESH_API
Definition MRMesh/MRMeshFwd.h:46
Definition MRCameraOrientationPlugin.h:8
MRMESH_API Mesh makeTorusWithSpikes(float primaryRadius=1.0f, float secondaryRadiusInner=0.1f, float secondaryRadiusOuter=0.5f, int primaryResolution=16, int secondaryResolution=16, std::vector< Vector3f > *points=nullptr)
MRMESH_API Mesh makeTorusWithSelfIntersections(float primaryRadius=1.0f, float secondaryRadius=0.1f, int primaryResolution=16, int secondaryResolution=16, std::vector< Vector3f > *points=nullptr)
MRMESH_API Mesh makeTorusWithUndercut(float primaryRadius=1.0f, float secondaryRadiusInner=0.1f, float secondaryRadiusOuter=0.2f, int primaryResolution=16, int secondaryResolution=16, std::vector< Vector3f > *points=nullptr)
MRMESH_API Mesh makeTorusWithComponents(float primaryRadius=1.0f, float secondaryRadius=0.1f, int primaryResolution=16, int secondaryResolution=16, std::vector< Vector3f > *points=nullptr)
MRMESH_API Mesh makeTorus(float primaryRadius=1.0f, float secondaryRadius=0.1f, int primaryResolution=16, int secondaryResolution=16, std::vector< Vector3f > *points=nullptr)
MRMESH_API Mesh makeOuterHalfTorus(float primaryRadius=1.0f, float secondaryRadius=0.1f, int primaryResolution=16, int secondaryResolution=16, std::vector< Vector3f > *points=nullptr)
Definition MRMesh/MRMesh.h:23