public class drawings {
static {
try {
System.loadLibrary("CadExMTK");
} catch (UnsatisfiedLinkError e) {
System.err.println("Native code library failed to load.\n" + e);
System.exit(1);
}
}
static void ExploreSheet(Sheet theSheet) {
Sheet.ViewIterator aViewIt = new Sheet.ViewIterator(theSheet);
int aViewCounter = 0;
while (aViewIt.HasNext()) {
View aView = aViewIt.Next();
System.out.println("---- View <" + aViewCounter + ">");
DrawingElementVisitor aVisitor = new DrawingElementVisitor();
aView.Accept(aVisitor);
aViewCounter++;
}
}
static void ExploreDrawing(Drawing theDrawing) {
Drawing.SheetIterator aSheetIt = new Drawing.SheetIterator(theDrawing);
int aSheetCounter = 0;
while (aSheetIt.HasNext()) {
Sheet aSheet = aSheetIt.Next();
System.out.println("-- Sheet <" + aSheetCounter + ">");
ExploreSheet(aSheet);
aSheetCounter++;
}
}
public static void main(String[] args) {
String aKey = MTKLicenseKey.Value();
if (!LicenseManager.Activate(aKey)) {
System.out.println("Failed to activate Manufacturing Toolkit license.");
System.exit(1);
}
if (args.length != 1) {
System.out.println("Usage: " + " <input_file>, where:");
System.out.println(" <input_file> is a name of the file to be read");
System.exit(1);
}
String aSource = args[0];
ModelReaderParameters aReaderParameters = new ModelReaderParameters();
aReaderParameters.SetReadDrawing(true);
ModelReader aReader = new ModelReader();
aReader.SetParameters(aReaderParameters);
Model aModel = new Model();
if (!aReader.Read(new UTF16String(aSource), aModel)) {
System.out.println("Failed to read the file " + aSource);
System.exit(1);
}
Drawing aDrawing = aModel.Drawing();
if (aDrawing.IsNull()) {
System.out.println("The model doesn't contain a drawing");
System.exit(1);
}
System.out.println("Drawing \"" + aModel.Name() + "\":");
ExploreDrawing(aDrawing);
}
}
class DrawingElementVisitor extends ElementVoidVisitor {
@Override
public void Apply(CurveSet theElement) {
System.out.println("------- CurveSet <" + myCurveSetCounter + ">");
System.out.println("------- number of curves: " + theElement.NumberOfCurves());
myCurveSetCounter++;
}
private int myCurveSetCounter = 0;
}
Contains classes, types and enums related to drawings.
Definition AngularDimension.cs:12
Defines classes, types, enums, and functions related to topological entities and scene graph elements...
Definition AngleUnit.cs:12
Contains classes, namespaces, enums, types, and global functions related to Manufacturing Toolkit.
Definition BaseObject.cs:12