From 05692bab9b971b2bdbc7a7938ca25b345ceb27f0 Mon Sep 17 00:00:00 2001
From: mark <mark@opencfd>
Date: Wed, 25 Jan 2017 11:51:14 +0100
Subject: [PATCH] DEFEATURE: remove writers for OpenDX format (issue #294)

- last OpenDX release/news was from 2007.
  Cannot maintain or verify if the writers are correct.
---
 src/sampling/Make/files                       |   1 -
 .../writers/dx/dxSurfaceWriter.C              | 234 ----------------
 .../writers/dx/dxSurfaceWriter.H              | 175 ------------
 .../writers/dx/dxSurfaceWriterTemplates.C     |  80 ------
 src/triSurface/Make/files                     |   1 -
 .../triSurface/interfaces/DX/writeDX.C        | 257 ------------------
 src/triSurface/triSurface/triSurface.C        |   6 +-
 src/triSurface/triSurface/triSurface.H        |   5 -
 8 files changed, 1 insertion(+), 758 deletions(-)
 delete mode 100644 src/sampling/sampledSurface/writers/dx/dxSurfaceWriter.C
 delete mode 100644 src/sampling/sampledSurface/writers/dx/dxSurfaceWriter.H
 delete mode 100644 src/sampling/sampledSurface/writers/dx/dxSurfaceWriterTemplates.C
 delete mode 100644 src/triSurface/triSurface/interfaces/DX/writeDX.C

diff --git a/src/sampling/Make/files b/src/sampling/Make/files
index 8dbf6e9394..01cce60496 100644
--- a/src/sampling/Make/files
+++ b/src/sampling/Make/files
@@ -48,7 +48,6 @@ sampledSurface/thresholdCellFaces/sampledThresholdCellFaces.C
 surfWriters = sampledSurface/writers
 
 $(surfWriters)/surfaceWriter.C
-$(surfWriters)/dx/dxSurfaceWriter.C
 $(surfWriters)/ensight/ensightSurfaceWriter.C
 $(surfWriters)/foam/foamSurfaceWriter.C
 $(surfWriters)/nastran/nastranSurfaceWriter.C
diff --git a/src/sampling/sampledSurface/writers/dx/dxSurfaceWriter.C b/src/sampling/sampledSurface/writers/dx/dxSurfaceWriter.C
deleted file mode 100644
index 6f06073257..0000000000
--- a/src/sampling/sampledSurface/writers/dx/dxSurfaceWriter.C
+++ /dev/null
@@ -1,234 +0,0 @@
-/*---------------------------------------------------------------------------*\
-  =========                 |
-  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
-   \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2016 OpenFOAM Foundation
-     \\/     M anipulation  | Copyright (C) 2015-2016 OpenCFD Ltd.
--------------------------------------------------------------------------------
-License
-    This file is part of OpenFOAM.
-
-    OpenFOAM is free software: you can redistribute it and/or modify it
-    under the terms of the GNU General Public License as published by
-    the Free Software Foundation, either version 3 of the License, or
-    (at your option) any later version.
-
-    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
-    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-    for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
-
-\*---------------------------------------------------------------------------*/
-
-#include "dxSurfaceWriter.H"
-#include "makeSurfaceWriterMethods.H"
-
-// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
-
-namespace Foam
-{
-    makeSurfaceWriterType(dxSurfaceWriter);
-}
-
-
-// * * * * * * * * * * * * * Private Member Functions  * * * * * * * * * * * //
-
-void Foam::dxSurfaceWriter::writeGeometry
-(
-    Ostream& os,
-    const meshedSurf& surf
-)
-{
-    const pointField& points = surf.points();
-    const faceList&    faces = surf.faces();
-
-    // Write vertex coordinates
-
-    os  << "# The irregular positions" << nl
-        << "object 1 class array type float rank 1 shape 3 items "
-        << points.size() << " data follows" << nl;
-
-    forAll(points, pointi)
-    {
-        const point& pt = points[pointi];
-
-        os  << float(pt.x()) << ' ' << float(pt.y()) << ' ' << float(pt.z())
-            << nl;
-    }
-    os  << nl;
-
-    // Write triangles
-    os  << "# The irregular connections (triangles)" << nl
-        << "object 2 class array type int rank 1 shape 3 items "
-        << faces.size() << " data follows" << nl;
-
-    forAll(faces, facei)
-    {
-        const face& f = faces[facei];
-
-        if (f.size() != 3)
-        {
-            FatalErrorInFunction
-                << "Face " << facei << " vertices " << f
-                << " is not a triangle."
-                << exit(FatalError);
-        }
-
-        os << f[0] << ' ' << f[1] << ' ' << f[2] << nl;
-    }
-    os << "attribute \"element type\" string \"triangles\"" << nl
-       << "attribute \"ref\" string \"positions\"" << nl << nl;
-}
-
-
-void Foam::dxSurfaceWriter::writeTrailer(Ostream& os, const bool isNodeValues)
-{
-    if (isNodeValues)
-    {
-        os  << nl << "attribute \"dep\" string \"positions\""
-            << nl << nl;
-    }
-    else
-    {
-        os  << nl << "attribute \"dep\" string \"connections\""
-            << nl << nl;
-    }
-
-    os  << "# the field, with three components: \"positions\","
-        << " \"connections\", and \"data\"" << nl
-        << "object \"irregular positions irregular "
-        << "connections\" class field"
-        << nl
-        << "component \"positions\" value 1" << nl
-        << "component \"connections\" value 2" << nl
-        << "component \"data\" value 3" << nl;
-
-    os  << "end" << endl;
-}
-
-
-namespace Foam
-{
-    template<>
-    void Foam::dxSurfaceWriter::writeData
-    (
-        Ostream& os,
-        const Field<scalar>& values
-    )
-    {
-        os  << "object 3 class array type float rank 0 items "
-            << values.size() << " data follows" << nl;
-
-        forAll(values, elemI)
-        {
-            os << float(values[elemI]) << nl;
-        }
-    }
-
-
-    template<>
-    void Foam::dxSurfaceWriter::writeData
-    (
-        Ostream& os,
-        const Field<vector>& values
-    )
-    {
-        os  << "object 3 class array type float rank 1 shape 3 items "
-            << values.size() << " data follows" << nl;
-
-        forAll(values, elemI)
-        {
-            os  << float(values[elemI].x()) << ' '
-                << float(values[elemI].y()) << ' '
-                << float(values[elemI].z()) << nl;
-        }
-    }
-
-
-    template<>
-    void Foam::dxSurfaceWriter::writeData
-    (
-        Ostream& os,
-        const Field<sphericalTensor>& values
-    )
-    {
-        os  << "object 3 class array type float rank 0 items "
-            << values.size() << " data follows" << nl;
-
-        forAll(values, elemI)
-        {
-            os << float(values[elemI][0]) << nl;
-        }
-    }
-
-
-    template<>
-    void Foam::dxSurfaceWriter::writeData
-    (
-        Ostream& os,
-        const Field<symmTensor>& values
-    )
-    {
-        os  << "object 3 class array type float rank 2 shape 3 items "
-            << values.size() << " data follows" << nl;
-
-        forAll(values, elemI)
-        {
-            const symmTensor& t = values[elemI];
-
-            os  << float(t.xx()) << ' ' << float(t.xy()) << ' ' << float(t.xz())
-                << float(t.xy()) << ' ' << float(t.yy()) << ' ' << float(t.yz())
-                << float(t.xz()) << ' ' << float(t.yz()) << ' ' << float(t.zz())
-                << nl;
-        }
-    }
-
-
-    // Write Field<tensor> in DX format
-    template<>
-    inline void Foam::dxSurfaceWriter::writeData
-    (
-        Ostream& os,
-        const Field<tensor>& values
-    )
-    {
-        os  << "object 3 class array type float rank 2 shape 3 items "
-            << values.size() << " data follows" << nl;
-
-        forAll(values, elemI)
-        {
-            const tensor& t = values[elemI];
-
-            os  << float(t.xx()) << ' ' << float(t.xy()) << ' ' << float(t.xz())
-                << float(t.yx()) << ' ' << float(t.yy()) << ' ' << float(t.yz())
-                << float(t.zx()) << ' ' << float(t.zy()) << ' ' << float(t.zz())
-                << nl;
-        }
-    }
-}
-
-
-// * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
-
-Foam::dxSurfaceWriter::dxSurfaceWriter()
-:
-    surfaceWriter()
-{}
-
-
-// * * * * * * * * * * * * * * * * Destructor  * * * * * * * * * * * * * * * //
-
-Foam::dxSurfaceWriter::~dxSurfaceWriter()
-{}
-
-
-// * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
-
-// create write methods
-defineSurfaceWriterWriteFields(Foam::dxSurfaceWriter);
-
-
-// ************************************************************************* //
diff --git a/src/sampling/sampledSurface/writers/dx/dxSurfaceWriter.H b/src/sampling/sampledSurface/writers/dx/dxSurfaceWriter.H
deleted file mode 100644
index 8a169d3beb..0000000000
--- a/src/sampling/sampledSurface/writers/dx/dxSurfaceWriter.H
+++ /dev/null
@@ -1,175 +0,0 @@
-/*---------------------------------------------------------------------------*\
-  =========                 |
-  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
-   \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011 OpenFOAM Foundation
-     \\/     M anipulation  | Copyright (C) 2015-2016 OpenCFD Ltd.
--------------------------------------------------------------------------------
-License
-    This file is part of OpenFOAM.
-
-    OpenFOAM is free software: you can redistribute it and/or modify it
-    under the terms of the GNU General Public License as published by
-    the Free Software Foundation, either version 3 of the License, or
-    (at your option) any later version.
-
-    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
-    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-    for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
-
-Class
-    Foam::dxSurfaceWriter
-
-Description
-    A surfaceWriter for OpenDX format.
-
-SourceFiles
-    dxSurfaceWriter.C
-
-\*---------------------------------------------------------------------------*/
-
-#ifndef dxSurfaceWriter_H
-#define dxSurfaceWriter_H
-
-#include "surfaceWriter.H"
-
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-namespace Foam
-{
-
-/*---------------------------------------------------------------------------*\
-                       Class dxSurfaceWriter Declaration
-\*---------------------------------------------------------------------------*/
-
-class dxSurfaceWriter
-:
-    public surfaceWriter
-{
-
-    // Private Member Functions
-
-        static void writeGeometry(Ostream&, const meshedSurf&);
-        static void writeTrailer(Ostream&, const bool isNodeValues);
-
-        template<class Type>
-        static void writeData(Ostream&, const Field<Type>&);
-
-        //- Templated write operation
-        template<class Type>
-        fileName writeTemplate
-        (
-            const fileName& outputDir,
-            const fileName& surfaceName,
-            const meshedSurf& surf,
-            const word& fieldName,
-            const Field<Type>& values,
-            const bool isNodeValues,
-            const bool verbose
-        ) const;
-
-
-public:
-
-    //- Runtime type information
-    TypeName("dx");
-
-
-    // Constructors
-
-        //- Construct null
-        dxSurfaceWriter();
-
-
-    //- Destructor
-    virtual ~dxSurfaceWriter();
-
-
-    // Member Functions
-
-        //- Write scalarField for a single surface to file.
-        //  One value per face or vertex (isNodeValues = true)
-        virtual fileName write
-        (
-            const fileName& outputDir,      // <case>/surface/TIME
-            const fileName& surfaceName,    // name of surface
-            const meshedSurf& surf,
-            const word& fieldName,          // name of field
-            const Field<scalar>& values,
-            const bool isNodeValues,
-            const bool verbose = false
-        ) const; // override
-
-        //- Write vectorField for a single surface to file.
-        //  One value per face or vertex (isNodeValues = true)
-        virtual fileName write
-        (
-            const fileName& outputDir,      // <case>/surface/TIME
-            const fileName& surfaceName,    // name of surface
-            const meshedSurf& surf,
-            const word& fieldName,          // name of field
-            const Field<vector>& values,
-            const bool isNodeValues,
-            const bool verbose = false
-        ) const; // override
-
-        //- Write sphericalTensorField for a single surface to file.
-        //  One value per face or vertex (isNodeValues = true)
-        virtual fileName write
-        (
-            const fileName& outputDir,      // <case>/surface/TIME
-            const fileName& surfaceName,    // name of surface
-            const meshedSurf& surf,
-            const word& fieldName,          // name of field
-            const Field<sphericalTensor>& values,
-            const bool isNodeValues,
-            const bool verbose = false
-        ) const; // override
-
-        //- Write symmTensorField for a single surface to file.
-        //  One value per face or vertex (isNodeValues = true)
-        virtual fileName write
-        (
-            const fileName& outputDir,      // <case>/surface/TIME
-            const fileName& surfaceName,    // name of surface
-            const meshedSurf& surf,
-            const word& fieldName,          // name of field
-            const Field<symmTensor>& values,
-            const bool isNodeValues,
-            const bool verbose = false
-        ) const; // override
-
-        //- Write tensorField for a single surface to file.
-        //  One value per face or vertex (isNodeValues = true)
-        virtual fileName write
-        (
-            const fileName& outputDir,      // <case>/surface/TIME
-            const fileName& surfaceName,    // name of surface
-            const meshedSurf& surf,
-            const word& fieldName,          // name of field
-            const Field<tensor>& values,
-            const bool isNodeValues,
-            const bool verbose = false
-        ) const; // override
-};
-
-
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-} // End namespace Foam
-
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-#ifdef NoRepository
-    #include "dxSurfaceWriterTemplates.C"
-#endif
-
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-#endif
-
-// ************************************************************************* //
diff --git a/src/sampling/sampledSurface/writers/dx/dxSurfaceWriterTemplates.C b/src/sampling/sampledSurface/writers/dx/dxSurfaceWriterTemplates.C
deleted file mode 100644
index f9bb67c99a..0000000000
--- a/src/sampling/sampledSurface/writers/dx/dxSurfaceWriterTemplates.C
+++ /dev/null
@@ -1,80 +0,0 @@
-/*---------------------------------------------------------------------------*\
-  =========                 |
-  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
-   \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2014 OpenFOAM Foundation
-     \\/     M anipulation  | Copyright (C) 2015-2016 OpenCFD Ltd.
--------------------------------------------------------------------------------
-License
-    This file is part of OpenFOAM.
-
-    OpenFOAM is free software: you can redistribute it and/or modify it
-    under the terms of the GNU General Public License as published by
-    the Free Software Foundation, either version 3 of the License, or
-    (at your option) any later version.
-
-    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
-    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-    for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
-
-\*---------------------------------------------------------------------------*/
-
-#include "OFstream.H"
-#include "OSspecific.H"
-
-// * * * * * * * * * * * * * Private Member Functions  * * * * * * * * * * * //
-
-template<class Type>
-inline void Foam::dxSurfaceWriter::writeData
-(
-    Ostream& os,
-    const Field<Type>& values
-)
-{
-    os  << "object 3 class array type float rank 0 items "
-        << values.size() << " data follows" << nl;
-
-    forAll(values, elemI)
-    {
-        os << float(0.0) << nl;
-    }
-}
-
-
-template<class Type>
-Foam::fileName Foam::dxSurfaceWriter::writeTemplate
-(
-    const fileName& outputDir,
-    const fileName& surfaceName,
-    const meshedSurf& surf,
-    const word& fieldName,
-    const Field<Type>& values,
-    const bool isNodeValues,
-    const bool verbose
-) const
-{
-    if (!isDir(outputDir))
-    {
-        mkDir(outputDir);
-    }
-
-    OFstream os(outputDir/fieldName + '_' + surfaceName + ".dx");
-
-    if (verbose)
-    {
-        Info<< "Writing field " << fieldName << " to " << os.name() << endl;
-    }
-
-    writeGeometry(os, surf);
-    writeData(os, values);
-    writeTrailer(os, isNodeValues);
-
-    return os.name();
-}
-
-
-// ************************************************************************* //
diff --git a/src/triSurface/Make/files b/src/triSurface/Make/files
index fab067d63e..337ccbac83 100644
--- a/src/triSurface/Make/files
+++ b/src/triSurface/Make/files
@@ -16,7 +16,6 @@ $(interfaces)/OFF/readOFF.C
 $(interfaces)/OFF/writeOFF.C
 $(interfaces)/TRI/writeTRI.C
 $(interfaces)/TRI/readTRI.C
-$(interfaces)/DX/writeDX.C
 $(interfaces)/AC3D/readAC.C
 $(interfaces)/AC3D/writeAC.C
 $(interfaces)/VTK/readVTK.C
diff --git a/src/triSurface/triSurface/interfaces/DX/writeDX.C b/src/triSurface/triSurface/interfaces/DX/writeDX.C
deleted file mode 100644
index 9e28c0f5cb..0000000000
--- a/src/triSurface/triSurface/interfaces/DX/writeDX.C
+++ /dev/null
@@ -1,257 +0,0 @@
-/*---------------------------------------------------------------------------*\
-  =========                 |
-  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
-   \\    /   O peration     |
-    \\  /    A nd           | Copyright (C) 2011-2016 OpenFOAM Foundation
-     \\/     M anipulation  |
--------------------------------------------------------------------------------
-License
-    This file is part of OpenFOAM.
-
-    OpenFOAM is free software: you can redistribute it and/or modify it
-    under the terms of the GNU General Public License as published by
-    the Free Software Foundation, either version 3 of the License, or
-    (at your option) any later version.
-
-    OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
-    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-    for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.
-
-Description
-    OpenDX format. Both data-only and scalar/vector data.
-
-\*---------------------------------------------------------------------------*/
-
-#include "triSurface.H"
-
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-namespace Foam
-{
-
-// * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
-
-// Geometry (positions + connections)
-// writeSorted: sort acc. to patch
-void triSurface::writeDXGeometry
-(
-    const bool writeSorted,
-    Ostream& os
-) const
-{
-    labelList faceMap;
-    surfacePatchList patches(calcPatches(faceMap));
-
-    // Print patch names as comment
-    os  << "# Patches:" << endl;
-    forAll(patches, patchi)
-    {
-        os  << "#     " << patchi << "    "
-            << patches[patchi].name() << endl;
-    }
-    os  << nl << endl;
-
-    // Write vertex coordinates
-
-    os  << "# The irregular positions" << endl
-        << "object 1 class array type float rank 1 shape 3 items "
-        << nPoints() << " data follows" << endl;
-    forAll(localPoints(), pointi)
-    {
-        const point& pt = localPoints()[pointi];
-        os  << pt.x() << ' ' << pt.y() << ' ' << pt.z() << endl;
-    }
-    os  << endl;
-
-    os  << "# The irregular connections (triangles)" << endl
-        << "object 2 class array type int rank 1 shape 3 items "
-        << size() << " data follows" << endl;
-
-    if (writeSorted)
-    {
-        label faceIndex = 0;
-
-        forAll(patches, patchi)
-        {
-            // Print all faces belonging to this patch
-
-            for
-            (
-                label patchFacei = 0;
-                patchFacei < patches[patchi].size();
-                patchFacei++
-            )
-            {
-                const label facei = faceMap[faceIndex++];
-                const labelledTri& f = localFaces()[facei];
-
-                os  << f[0] << ' ' << f[1] << ' ' << f[2] << endl;
-            }
-        }
-    }
-    else
-    {
-        forAll(*this, facei)
-        {
-            const labelledTri& f = localFaces()[facei];
-
-            os  << f[0] << ' ' << f[1] << ' ' << f[2] << endl;
-        }
-    }
-    os  << "attribute \"element type\" string \"triangles\"" << endl
-        << "attribute \"ref\" string \"positions\"" << endl << endl;
-}
-
-
-// Standard trailer
-void triSurface::writeDXTrailer(Ostream& os) const
-{
-    os  << "# the field, with three components: \"positions\", \"connections\""
-        << ", and \"data\"" << endl
-        << "object \"irregular positions irregular connections\" class field"
-        << endl
-        << "component \"positions\" value 1" << endl
-        << "component \"connections\" value 2" << endl
-        << "component \"data\" value 3" << endl;
-}
-
-
-// Geometry only (data field is either faceIndex or patchIndex)
-void triSurface::writeDX(const bool writeSorted, Ostream& os) const
-{
-    writeDXGeometry(writeSorted, os);
-
-    os  << "object 3 class array type float rank 0 items " << size()
-        << " data follows" << endl;
-    if (writeSorted)
-    {
-        // Write patch number as data
-
-        labelList faceMap;
-        surfacePatchList patches(calcPatches(faceMap));
-
-        forAll(patches, patchi)
-        {
-            forAll(patches[patchi], patchFacei)
-            {
-                os  << patchi << endl;
-            }
-        }
-    }
-    else
-    {
-        // Write face number as data
-
-        forAll(*this, facei)
-        {
-            os  << facei << endl;
-        }
-    }
-
-    os  << endl << "attribute \"dep\" string \"connections\"" << endl << endl;
-
-    writeDXTrailer(os);
-
-    os  << "end" << endl;
-}
-
-
-// Geometry + scalar data
-void triSurface::writeDX(const scalarField& field, Ostream& os) const
-{
-    writeDXGeometry(false, os);
-
-    if (field.size() == size())
-    {
-        // Connections dependent data
-        os  << "object 3 class array type float rank 0 items " << field.size()
-            << " data follows" << endl;
-        forAll(field, facei)
-        {
-            os  << field[facei] << endl;
-        }
-        os  << endl
-            << "attribute \"dep\" string \"connections\"" << endl << endl;
-    }
-    else if (field.size() == nPoints())
-    {
-        // Positions dependent data
-        os  << "object 3 class array type float rank 0 items " << field.size()
-            << " data follows" << endl;
-        forAll(field, pointi)
-        {
-            os  << field[pointi] << endl;
-        }
-        os  << endl
-            << "attribute \"dep\" string \"positions\"" << endl << endl;
-    }
-    else
-    {
-        FatalErrorInFunction
-            << "Illegal field size " << field.size() << " is not equal "
-            << " to number of faces " << size() << " or to number "
-            << " of points " << nPoints() << exit(FatalError);
-    }
-
-    writeDXTrailer(os);
-
-    os  << "end" << endl;
-}
-
-
-// Geometry + vector data
-void triSurface::writeDX(const vectorField& field, Ostream& os) const
-{
-    writeDXGeometry(false, os);
-
-    if (field.size() == size())
-    {
-        // Connections dependent data
-        os  << "object 3 class array type float rank 1 shape 3 items "
-            << field.size() << " data follows" << endl;
-        forAll(field, facei)
-        {
-            os  << field[facei].x() << ' '
-                << field[facei].y() << ' '
-                << field[facei].z() << endl;
-        }
-        os  << endl
-            << "attribute \"dep\" string \"connections\"" << endl << endl;
-    }
-    else if (field.size() == nPoints())
-    {
-        // Positions dependent data
-        os  << "object 3 class array type float rank 1 shape 3 items "
-            << field.size() << " data follows" << endl;
-        forAll(field, pointi)
-        {
-            os  << field[pointi].x() << ' '
-                << field[pointi].y() << ' '
-                << field[pointi].z() << endl;
-        }
-        os  << endl
-            << "attribute \"dep\" string \"positions\"" << endl << endl;
-    }
-    else
-    {
-        FatalErrorInFunction
-            << "Illegal field size " << field.size() << " is not equal "
-            << " to number of faces " << size() << " or to number "
-            << " of points " << nPoints() << exit(FatalError);
-    }
-
-    writeDXTrailer(os);
-
-    os  << "end" << endl;
-}
-
-
-// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
-} // End namespace Foam
-
-// ************************************************************************* //
diff --git a/src/triSurface/triSurface/triSurface.C b/src/triSurface/triSurface/triSurface.C
index 6bc2e9d64b..a5478fcf3e 100644
--- a/src/triSurface/triSurface/triSurface.C
+++ b/src/triSurface/triSurface/triSurface.C
@@ -464,10 +464,6 @@ void Foam::triSurface::write
     {
         writeTRI(sort, OFstream(name)());
     }
-    else if (ext == "dx")
-    {
-        writeDX(sort, OFstream(name)());
-    }
     else if (ext == "ac")
     {
         writeAC(OFstream(name)());
@@ -483,7 +479,7 @@ void Foam::triSurface::write
             << " for file " << name
             << ". Supported extensions are '.ftr', '.stl', '.stlb', "
             << "'.gts', '.obj', '.vtk'"
-            << ", '.off', '.dx', '.smesh', '.ac' and '.tri'"
+            << ", '.off', '.smesh', '.ac' and '.tri'"
             << exit(FatalError);
     }
 }
diff --git a/src/triSurface/triSurface/triSurface.H b/src/triSurface/triSurface/triSurface.H
index ccf47c713e..4c05e8d1a8 100644
--- a/src/triSurface/triSurface/triSurface.H
+++ b/src/triSurface/triSurface/triSurface.H
@@ -178,11 +178,6 @@ class triSurface
         //- Write to Ostream in AC3D format. Always sorted by patch.
         void writeAC(Ostream&) const;
 
-        //- For DX writing.
-        void writeDX(const bool, Ostream&) const;
-        void writeDXGeometry(const bool, Ostream&) const;
-        void writeDXTrailer(Ostream&) const;
-
 
     // Static private functions
 
-- 
GitLab