diff --git a/ApplicationLibCode/FileInterface/RifFaultReactivationModelExporter.cpp b/ApplicationLibCode/FileInterface/RifFaultReactivationModelExporter.cpp index 7d9f161587..8dc29fa048 100644 --- a/ApplicationLibCode/FileInterface/RifFaultReactivationModelExporter.cpp +++ b/ApplicationLibCode/FileInterface/RifFaultReactivationModelExporter.cpp @@ -69,8 +69,8 @@ std::pair RifFaultReactivationModelExporter::exportToStream( std::vector()>> methods = { [&]() { return printHeading( stream, applicationNameAndVersion ); }, - [&]() { return printParts( stream, *model, partNames, borders, faces, boundaries, rimModel.localCoordSysNormalsXY() ); }, - [&]() { return printAssembly( stream, *model, partNames ); }, + [&]() { return printParts( stream, *model, partNames, borders, faces, boundaries ); }, + [&]() { return printAssembly( stream, *model, partNames, rimModel.localCoordSysNormalsXY() ); }, [&]() { return printMaterials( stream ); }, [&]() { return printInteractionProperties( stream, faultFriction ); }, [&]() { return printBoundaryConditions( stream, *model, partNames, boundaries ); }, @@ -122,8 +122,7 @@ std::pair RifFaultReactivationModelExporter::printParts( const std::map& partNames, const std::vector>& borders, const std::map, int>& faces, - const std::map& boundaries, - const std::pair& orientation ) + const std::map& boundaries ) { RifInpExportTools::printSectionComment( stream, "PARTS" ); @@ -180,15 +179,8 @@ std::pair RifFaultReactivationModelExporter::printParts( } } - // Print local orientation - std::string orientationName = "ori"; - RifInpExportTools::printHeading( stream, "Orientation, name=" + orientationName ); - auto [dir1, dir2] = orientation; - RifInpExportTools::printNumbers( stream, { dir1.x(), dir1.y(), dir1.z(), dir2.x(), dir2.y(), dir2.z() } ); - RifInpExportTools::printLine( stream, "3, 0.0" ); - RifInpExportTools::printComment( stream, "Section: sand" ); - RifInpExportTools::printHeading( stream, "Solid Section, elset=" + partName + ", orientation=" + orientationName + ", material=sand" ); + RifInpExportTools::printHeading( stream, "Solid Section, elset=" + partName + ", material=sand" ); RifInpExportTools::printLine( stream, "," ); RifInpExportTools::printHeading( stream, "End Part" ); @@ -205,7 +197,8 @@ std::pair RifFaultReactivationModelExporter::printParts( std::pair RifFaultReactivationModelExporter::printAssembly( std::ostream& stream, const RigFaultReactivationModel& model, - const std::map& partNames ) + const std::map& partNames, + const std::pair& transform ) { // ASSEMBLY part RifInpExportTools::printSectionComment( stream, "ASSEMBLY" ); @@ -224,6 +217,17 @@ std::pair RifInpExportTools::printHeading( stream, "End Instance" ); } + for ( const auto& part : parts ) + { + auto partNameIt = partNames.find( part ); + CAF_ASSERT( partNameIt != partNames.end() ); + std::string partName = partNameIt->second; + + RifInpExportTools::printHeading( stream, "Transform, nset=" + partName + "." + partName ); + auto [dir1, dir2] = transform; + RifInpExportTools::printNumbers( stream, { dir1.x(), dir1.y(), dir1.z(), dir2.x(), dir2.y(), dir2.z() } ); + } + RifInpExportTools::printHeading( stream, "End Assembly" ); return { true, "" }; diff --git a/ApplicationLibCode/FileInterface/RifFaultReactivationModelExporter.h b/ApplicationLibCode/FileInterface/RifFaultReactivationModelExporter.h index 8e292164b2..d4d8bfe51a 100644 --- a/ApplicationLibCode/FileInterface/RifFaultReactivationModelExporter.h +++ b/ApplicationLibCode/FileInterface/RifFaultReactivationModelExporter.h @@ -45,12 +45,12 @@ private: const std::map& partNames, const std::vector>& borders, const std::map, int>& faces, - const std::map& boundaries, - const std::pair& orientation ); + const std::map& boundaries ); static std::pair printAssembly( std::ostream& stream, const RigFaultReactivationModel& model, - const std::map& partNames ); + const std::map& partNames, + const std::pair& transform ); static std::pair printMaterials( std::ostream& stream );