From 0f334cc0403f94b61a3ba381af684dffba41e6e5 Mon Sep 17 00:00:00 2001 From: Marc Britten Date: Sun, 8 Feb 2015 10:43:19 -0600 Subject: [PATCH] Added updated header information for surfaces --- src/exportstep.cpp | 17 ++++++++++++++++- src/solvespace.h | 1 + 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/src/exportstep.cpp b/src/exportstep.cpp index ddc59d6..e113260 100644 --- a/src/exportstep.cpp +++ b/src/exportstep.cpp @@ -66,7 +66,21 @@ void StepFileWriter::WriteHeader(void) { // Start the ID somewhere beyond the header IDs. id = 200; } - +void StepFileWriter::WriteProductHeader(void) { + fprintf(f, + "#175 = SHAPE_DEFINITION_REPRESENTATION(#176, #169);\n" + "#176 = PRODUCT_DEFINITION_SHAPE('Version', 'Test Part', #177);\n" + "#177 = PRODUCT_DEFINITION('Version', 'Test Part', #182, #178);\n" + "#178 = DESIGN_CONTEXT('3D Mechanical Parts', #181, 'design');\n" + "#179 = PRODUCT('1', 'Product', 'Test Part', (#180));\n" + "#180 = MECHANICAL_CONTEXT('3D Mechanical Parts', #181, 'mechanical');\n" + "#181 = APPLICATION_CONTEXT(\n" + "'configuration controlled 3d designs of mechanical parts and assemblies');\n" + "#182 = PRODUCT_DEFINITION_FORMATION_WITH_SPECIFIED_SOURCE('Version',\n" + "'Test Part', #179, .MADE.);\n" + "\n" + ); +} int StepFileWriter::ExportCurve(SBezier *sb) { int i, ret = id; @@ -302,6 +316,7 @@ void StepFileWriter::ExportSurfacesTo(char *file) { } WriteHeader(); + WriteProductHeader(); ZERO(&advancedFaces); diff --git a/src/solvespace.h b/src/solvespace.h index 73ca776..e34ffbe 100644 --- a/src/solvespace.h +++ b/src/solvespace.h @@ -489,6 +489,7 @@ class StepFileWriter { public: void ExportSurfacesTo(char *filename); void WriteHeader(void); + void WriteProductHeader(void); int ExportCurve(SBezier *sb); int ExportCurveLoop(SBezierLoop *loop, bool inner); void ExportSurface(SSurface *ss, SBezierList *sbl);