using System;
namespace mesh_generation
{
internal class Program
{
{
public override void Apply(
Part thePart)
{
if (myFace == null)
{
ExploreBRep(thePart.
Bodies());
}
}
{
return myFace;
}
private void ExploreBRep(BodyList theBodies)
{
foreach (var aBody in theBodies)
{
{
var aFirstShape = aFaceIt.
Next();
var aFirstFace =
Face.
Cast(aFirstShape);
myFace = aFirstFace;
break;
}
}
}
};
static void PrintFaceTriangulationInfo(
Face theFace)
{
Console.WriteLine(
"Face triangulation contains " + anITS.
NumberOfTriangles() +
" triangles.");
for (uint i = 0; i < aNumberOfTrianglesToPrint; ++i)
{
Console.WriteLine("Triangle index " + i + " with vertices: ");
for (uint j = 0; j < 3; ++j)
{
Console.Write(" Vertex index " + aVertexIndex + " with coords (");
Console.Write("X: " + aPoint.X() + ", ");
Console.Write("Y: " + aPoint.Y() + ", ");
Console.WriteLine("Z: " + aPoint.Z() + ")");
}
}
}
static int Main(string[] args)
{
string aKey = MTKLicenseKey.Value();
{
Console.WriteLine("Failed to activate Manufacturing Toolkit license.");
return 1;
}
if (args.Length != 1)
{
Console.WriteLine("Usage: " + System.Reflection.Assembly.GetExecutingAssembly().Location + " <input_file>, where:");
Console.WriteLine(" <input_file> is a name of the file to be read");
return 1;
}
if (!aReader.
Read(aSource, aModel))
{
Console.WriteLine("Failed to read the file " + aSource);
return 1;
}
FirstFaceGetter aVisitor = new FirstFaceGetter();
Face aFace = aVisitor.FirstFace();
PrintFaceTriangulationInfo(aFace);
return 0;
}
}
}
Activates the license key.
Definition LicenseManager.cs:48
Generates a polygonal mesh for a B-Rep body.
Definition MeshGenerator.cs:36
void Generate(cadex.ModelData.Model theModel, bool theEnforceGeneration)
Definition MeshGenerator.cs:94
Defines parameters used by the mesh generator.
Definition MeshGeneratorParameters.cs:52
void SetAngularDeflection(double theValue)
Sets angular deflection.
Definition MeshGeneratorParameters.cs:189
void SetChordalDeflection(double theValue)
Sets chordal deflection.
Definition MeshGeneratorParameters.cs:148
Defines a topological face.
Definition Face.cs:120
static cadex.ModelData.Face Cast(cadex.ModelData.Shape theShape)
Cast operator.
Definition Face.cs:250
cadex.ModelData.IndexedTriangleSet Triangulation()
Returns triangulation of the face.
Definition Face.cs:237
Defines a polygonal shape consisting of triangles.
Definition IndexedTriangleSet.cs:76
cadex.Geom.Point TriangleVertex(uint theTriangleIndex, uint theVertexSlot)
Returns a vertex of a triangle.
Definition IndexedTriangleSet.cs:188
int TriangleVertexIndex(uint theTriangleIndex, uint theVertexSlot)
Returns a vertex index in a triangle.
Definition IndexedTriangleSet.cs:202
uint NumberOfTriangles()
Returns a number of triangles.
Definition IndexedTriangleSet.cs:245
Element visitor with empty implementation.
Definition ModelElementVoidVisitor.cs:20
Provides MTK data model.
Definition Model.cs:30
void Accept(cadex.ModelData.ModelElementVisitor theVisitor)
Accepts a visitor.
Definition Model.cs:179
Reads supported formats, see Import section.
Definition ModelReader.cs:17
bool Read(cadex.UTF16String theFilePath, cadex.ModelData.Model theModel)
Reads the file at the specified path into the specified model.
Definition ModelReader.cs:86
Defines a leaf node in the scene graph hierarchy.
Definition Part.cs:23
Iterates over subshapes in a shape.
Definition ShapeIterator.cs:58
Defines a Unicode (UTF-16) string wrapping a standard string.
Definition UTF16String.cs:17
Definition ArrayDouble2.cs:12
Contains classes and functions related to model processing.
Definition MeshGenerator.cs:12
Defines classes, types, enums, and functions related to topological entities and scene graph elements...
Definition AngleUnit.cs:12
ShapeType
Defines shape type.
Definition ShapeType.cs:17
Contains classes, namespaces, enums, types, and global functions related to Manufacturing Toolkit.
Definition BaseObject.cs:12