1
0
forked from josh/j3ml

Header implementations

This commit is contained in:
2024-01-29 14:50:00 -05:00
parent e76a0954d3
commit 32577f79b8
7 changed files with 49 additions and 13 deletions

View File

@@ -54,7 +54,10 @@ add_library(J3ML SHARED ${J3ML_SRC}
src/J3ML/Geometry/TriangleMesh.cpp src/J3ML/Geometry/TriangleMesh.cpp
src/J3ML/Geometry/QuadTree.cpp src/J3ML/Geometry/QuadTree.cpp
src/J3ML/Geometry/LineSegment.cpp src/J3ML/Geometry/LineSegment.cpp
include/J3ML/Geometry/AABB2D.h) include/J3ML/Geometry/AABB2D.h
src/J3ML/Geometry/Polygon.cpp
include/J3ML/Geometry/Polyhedron.h
src/J3ML/Geometry/Polyhedron.cpp)
set_target_properties(J3ML PROPERTIES LINKER_LANGUAGE CXX) set_target_properties(J3ML PROPERTIES LINKER_LANGUAGE CXX)
install(TARGETS ${PROJECT_NAME} DESTINATION lib/${PROJECT_NAME}) install(TARGETS ${PROJECT_NAME} DESTINATION lib/${PROJECT_NAME})

View File

@@ -1,15 +1,27 @@
#pragma once #pragma once
#include <J3ML/LinearAlgebra/Vector3.h> #include <J3ML/LinearAlgebra/Vector3.h>
#include "Plane.h" #include <J3ML/Geometry/Plane.h>
#include "Sphere.h" #include <J3ML/Geometry/Sphere.h>
#include "OBB.h" #include <J3ML/Geometry/OBB.h>
#include "LineSegment.h" #include <J3ML/Geometry/LineSegment.h>
#include <J3ML/Geometry/Triangle.h>
#include <J3ML/Geometry/Polygon.h>
#include <J3ML/Geometry/Frustum.h>
#include <J3ML/Geometry/Capsule.h>
#include <J3ML/Geometry/Ray.h>
#include <J3ML/Geometry/TriangleMesh.h>
#include <J3ML/Geometry/Polyhedron.h>
// TODO: Fix circular include between AABB and OBB
using namespace LinearAlgebra;
namespace Geometry namespace Geometry
{ {
using namespace LinearAlgebra;
// A 3D axis-aligned bounding box // A 3D axis-aligned bounding box
// This data structure can be used to represent coarse bounds of objects, in situations where detailed triangle-level // This data structure can be used to represent coarse bounds of objects, in situations where detailed triangle-level
// computations can be avoided. In physics systems, bounding boxes are used as an efficient early-out test for geometry // computations can be avoided. In physics systems, bounding boxes are used as an efficient early-out test for geometry

View File

@@ -1,6 +1,9 @@
#pragma once #pragma once
#include "AABB.h" #include <J3ML/Geometry/AABB.h>
#include "Polyhedron.h"
namespace Geometry { namespace Geometry {
class OBB class OBB

View File

@@ -1,8 +1,7 @@
// #pragma once
// Created by dawsh on 1/25/24.
//
#ifndef J3ML_POLYGON_H namespace Geometry {
#define J3ML_POLYGON_H class Polygon {
#endif //J3ML_POLYGON_H };
}

View File

@@ -0,0 +1,8 @@
#pragma once
namespace Geometry
{
class Polyhedron {
};
}

View File

@@ -0,0 +1,5 @@
#include <J3ML/Geometry/Polygon.h>
namespace Geometry {
}

View File

@@ -0,0 +1,6 @@
#include <J3ML/Geometry/Polyhedron.h>
namespace Geometry
{
}