From 6bd16e1eeff4fff77d1c5cc7e1b4f0e87e81448e Mon Sep 17 00:00:00 2001 From: mattijs <mattijs> Date: Tue, 13 Nov 2012 12:17:41 +0000 Subject: [PATCH] ENH: OBJstream: output triPointRef --- src/surfMesh/surfaceFormats/obj/OBJstream.C | 32 +++++++++++++++++++++ src/surfMesh/surfaceFormats/obj/OBJstream.H | 6 +++- 2 files changed, 37 insertions(+), 1 deletion(-) diff --git a/src/surfMesh/surfaceFormats/obj/OBJstream.C b/src/surfMesh/surfaceFormats/obj/OBJstream.C index ca24b6b6aa2..fcd446eaabb 100644 --- a/src/surfMesh/surfaceFormats/obj/OBJstream.C +++ b/src/surfMesh/surfaceFormats/obj/OBJstream.C @@ -238,6 +238,38 @@ Foam::Ostream& Foam::OBJstream::write(const linePointRef& ln) } +Foam::Ostream& Foam::OBJstream::write +( + const triPointRef& f, + const bool lines +) +{ + label start = nVertices_; + write(f.a()); + write(f.b()); + write(f.c()); + if (lines) + { + write('l'); + for (int i = 0; i < 3; i++) + { + write(' ') << start+1+i; + } + write(' ') << start+1 << '\n'; + } + else + { + write('f'); + for (int i = 0; i < 3; i++) + { + write(' ') << start+1+i; + } + write('\n'); + } + return *this; +} + + Foam::Ostream& Foam::OBJstream::write ( const face& f, diff --git a/src/surfMesh/surfaceFormats/obj/OBJstream.H b/src/surfMesh/surfaceFormats/obj/OBJstream.H index 9e62cbdbebc..ec7e93d24ea 100644 --- a/src/surfMesh/surfaceFormats/obj/OBJstream.H +++ b/src/surfMesh/surfaceFormats/obj/OBJstream.H @@ -39,13 +39,14 @@ SourceFiles #include "point.H" #include "edge.H" #include "face.H" +#include "triPointRef.H" +#include "linePointRef.H" // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // namespace Foam { - /*---------------------------------------------------------------------------*\ Class OBJstream Declaration \*---------------------------------------------------------------------------*/ @@ -134,6 +135,9 @@ public: //- Write line Ostream& write(const linePointRef&); + //- Write triangle as points with lines or filled polygon + Ostream& write(const triPointRef&, const bool lines = true); + //- Write face as points with lines or filled polygon Ostream& write ( -- GitLab