/usr/include/snlSurfaceBase.h is in libsnl-dev 0.2.1.svn.18-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 | // libSNL - Simple Nurbs Library
// Copyright 2005 Scott A.E. Lanham, Australia.
// --------------------------------------------
// This program 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 2 of the License, or
// (at your option) any later version.
//
// This program 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.
// *** Base Class Of All Surfaces ***
#ifndef SNL_SURFACE_BASE_H
#define SNL_SURFACE_BASE_H
#include "snlKnotVector.h"
#include "snlPoint.h"
#include "snlTriangleMesh.h"
#include "snlVertexNet.h"
#ifdef SGI_MIPS
#include <iostream.h>
#include <math.h>
#include <float.h>
#else
#include <iostream>
#include <cmath>
#include <cfloat>
using namespace std;
#endif
class snlSurfaceBase
{
public:
virtual ~snlSurfaceBase(){};
virtual snlPoint eval ( knot paramU, knot paramV ) const = 0;
virtual void vertexNet ( snlVertexNet* vNet, double tolerance, bool parametric ) = 0;
virtual void triangleMesh ( snlTriangleMesh* triMesh, int toleranceType, double tolerance ) = 0;
enum meshToleranceType
{
SNL_TOL_DISTANCE, // Must be within distance tolerance to surface.
SNL_TOL_ANGLE // Angle between successive sections must be less than tolerance.
};
};
#endif
|