Files
IfcOpenShell/src/ifcgeom/kernels/cgal/CgalEntityMapping.h
T

123 lines
4.7 KiB
C++
Raw Normal View History

/********************************************************************************
2017-01-16 14:04:31 +01:00
* *
* This file is part of IfcOpenShell. *
* *
* IfcOpenShell is free software: you can redistribute it and/or modify *
* it under the terms of the Lesser GNU General Public License as published by *
* the Free Software Foundation, either version 3.0 of the License, or *
* (at your option) any later version. *
* *
* IfcOpenShell 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 *
* Lesser GNU General Public License for more details. *
* *
* You should have received a copy of the Lesser GNU General Public License *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
* *
********************************************************************************/
/********************************************************************************
* *
* This file registers function prototypes for all supported IFC geometrical *
* entities. For entities of type CLASS an std::map is also created to cache *
* the output of the conversion functions *
* *
********************************************************************************/
#include "../../../ifcparse/IfcUtil.h"
#include "../../../ifcparse/IfcParse.h"
2017-03-20 15:56:31 -06:00
SHAPES(IfcShellBasedSurfaceModel);
SHAPES(IfcFaceBasedSurfaceModel);
2017-01-16 14:04:31 +01:00
SHAPES(IfcRepresentation);
2017-03-20 15:56:31 -06:00
SHAPES(IfcMappedItem);
// IfcFacetedBrep included
// IfcAdvancedBrep included
// IfcFacetedBrepWithVoids included
// IfcAdvancedBrepWithVoids included
SHAPES(IfcManifoldSolidBrep);
2017-03-20 15:56:31 -06:00
SHAPES(IfcGeometricSet);
#ifdef USE_IFC4
//SHAPE(IfcCylindricalSurface);
//SHAPE(IfcAdvancedBrep);
//SHAPE(IfcBSplineSurfaceWithKnots);
SHAPE(IfcTriangulatedFaceSet);
//SHAPE(IfcExtrudedAreaSolidTapered);
#endif
//SHAPE(IfcPlane);
SHAPE(IfcExtrudedAreaSolid);
//SHAPE(IfcRevolvedAreaSolid);
SHAPE(IfcConnectedFaceSet);
2017-03-02 18:11:11 -06:00
SHAPE(IfcBooleanResult);
//SHAPE(IfcPolygonalBoundedHalfSpace);
SHAPE(IfcHalfSpaceSolid);
//SHAPE(IfcSurfaceOfLinearExtrusion);
//SHAPE(IfcSurfaceOfRevolution);
SHAPE(IfcBlock);
2017-03-02 18:22:34 -06:00
SHAPE(IfcRectangularPyramid);
2017-03-02 18:39:18 -06:00
SHAPE(IfcRightCircularCylinder);
2017-03-02 18:42:10 -06:00
SHAPE(IfcRightCircularCone);
SHAPE(IfcSphere);
SHAPE(IfcCsgSolid);
//SHAPE(IfcCurveBoundedPlane);
//SHAPE(IfcRectangularTrimmedSurface);
//SHAPE(IfcSurfaceCurveSweptAreaSolid);
//SHAPE(IfcSweptDiskSolid);
2017-01-16 14:04:31 +01:00
FACE(IfcArbitraryProfileDefWithVoids);
2017-03-02 17:11:58 -06:00
FACE(IfcArbitraryClosedProfileDef);
2017-03-06 11:12:06 -06:00
FACE(IfcRoundedRectangleProfileDef);
2017-03-07 13:52:29 -06:00
FACE(IfcRectangleHollowProfileDef);
FACE(IfcRectangleProfileDef);
FACE(IfcTrapeziumProfileDef)
2017-03-08 19:38:25 -06:00
FACE(IfcCShapeProfileDef);
// IfcAsymmetricIShapeProfileDef included
2017-03-08 20:11:45 -06:00
FACE(IfcIShapeProfileDef);
2017-03-08 19:55:17 -06:00
FACE(IfcLShapeProfileDef);
2017-03-09 16:29:14 -06:00
FACE(IfcTShapeProfileDef);
2017-03-09 16:46:09 -06:00
FACE(IfcUShapeProfileDef);
2017-03-09 16:55:33 -06:00
FACE(IfcZShapeProfileDef);
FACE(IfcCircleHollowProfileDef);
FACE(IfcCircleProfileDef);
FACE(IfcEllipseProfileDef);
//FACE(IfcCenterLineProfileDef);
//FACE(IfcCompositeProfileDef);
2017-03-23 20:25:54 -06:00
FACE(IfcDerivedProfileDef);
// IfcFaceSurface included
// IfcAdvancedFace included in case of IFC4
FACE(IfcFace);
//WIRE(IfcEdgeCurve);
//WIRE(IfcSubedge);
WIRE(IfcOrientedEdge);
WIRE(IfcEdge);
WIRE(IfcEdgeLoop);
2017-03-02 17:11:58 -06:00
WIRE(IfcPolyline);
WIRE(IfcPolyLoop);
2017-03-07 19:39:59 -06:00
WIRE(IfcCompositeCurve);
WIRE(IfcTrimmedCurve);
//WIRE(IfcArbitraryOpenProfileDef);
2017-03-13 19:08:23 -06:00
CURVE(IfcCircle);
CURVE(IfcEllipse);
CURVE(IfcLine);
#ifdef USE_IFC4
// IfcRationalBSplineCurveWithKnots included
//CURVE(IfcBSplineCurveWithKnots);
#endif
2017-03-13 19:08:23 -06:00
2017-01-16 14:04:31 +01:00
CLASS(IfcCartesianPoint,cgal_point_t);
CLASS(IfcDirection,cgal_direction_t);
2017-02-08 16:56:59 -06:00
CLASS(IfcAxis2Placement2D,cgal_placement_t);
CLASS(IfcAxis2Placement3D,cgal_placement_t);
CLASS(IfcAxis1Placement,cgal_placement_t);
2017-03-13 22:32:12 -06:00
CLASS(IfcCartesianTransformationOperator2DnonUniform,cgal_placement_t);
CLASS(IfcCartesianTransformationOperator3DnonUniform,cgal_placement_t);
2017-03-13 22:32:12 -06:00
CLASS(IfcCartesianTransformationOperator2D,cgal_placement_t);
CLASS(IfcCartesianTransformationOperator3D,cgal_placement_t);
CLASS(IfcObjectPlacement,cgal_placement_t);
CLASS(IfcVector,cgal_vector_t);
CLASS(IfcPlane,cgal_plane_t);