45 lines
713 B
C++
Executable File
45 lines
713 B
C++
Executable File
//
|
|
// Math.hpp
|
|
// amoeba
|
|
//
|
|
// Created by Timothy Prepscius on 12/30/16.
|
|
// Copyright © 2016 Timothy Prepscius. All rights reserved.
|
|
//
|
|
|
|
#pragma once
|
|
|
|
#include "HPoint.h"
|
|
#include "Vector3.h"
|
|
|
|
namespace tjp {
|
|
namespace core {
|
|
namespace math {
|
|
|
|
template<typename Real>
|
|
struct HPoint
|
|
{
|
|
typedef Real value_type;
|
|
|
|
Real v[4];
|
|
|
|
HPoint();
|
|
|
|
HPoint(const Vector3<Real> &r);
|
|
HPoint(Real v0, Real v1, Real v2, Real v3);
|
|
|
|
Real &operator[](size_t size);
|
|
Real const &operator[](size_t size) const;
|
|
|
|
operator Vector3<Real>&();
|
|
operator const Vector3<Real>&() const;
|
|
};
|
|
|
|
typedef HPoint<Real> HPointr;
|
|
typedef HPoint<float> HPointf;
|
|
typedef HPoint<double> HPointd;
|
|
|
|
} // namespace
|
|
} // namespace
|
|
} // namespace
|
|
|