mirror of
https://github.com/orange-cpp/omath.git
synced 2026-02-17 02:43:27 +00:00
now template
This commit is contained in:
@@ -14,12 +14,17 @@ namespace omath::pathfinding
|
||||
{
|
||||
public:
|
||||
[[nodiscard]]
|
||||
static std::vector<Vector3> FindPath(const Vector3& start, const Vector3& end, const NavigationMesh& navMesh);
|
||||
static std::vector<Vector3<float>> FindPath(const Vector3<float>& start, const Vector3<float>& end,
|
||||
const NavigationMesh& navMesh);
|
||||
|
||||
private:
|
||||
[[nodiscard]]
|
||||
static std::vector<Vector3> ReconstructFinalPath(const std::unordered_map<Vector3, PathNode>& closedList, const Vector3& current);
|
||||
static std::vector<Vector3<float>>
|
||||
ReconstructFinalPath(const std::unordered_map<Vector3<float>, PathNode>& closedList,
|
||||
const Vector3<float>& current);
|
||||
|
||||
[[nodiscard]]
|
||||
static auto GetPerfectNode(const std::unordered_map<Vector3, PathNode>& openList, const Vector3& endVertex);
|
||||
static auto GetPerfectNode(const std::unordered_map<Vector3<float>, PathNode>& openList,
|
||||
const Vector3<float>& endVertex);
|
||||
};
|
||||
}
|
||||
} // namespace omath::pathfinding
|
||||
|
||||
@@ -22,17 +22,17 @@ namespace omath::pathfinding
|
||||
public:
|
||||
|
||||
[[nodiscard]]
|
||||
std::expected<Vector3, std::string> GetClosestVertex(const Vector3& point) const;
|
||||
std::expected<Vector3<float>, std::string> GetClosestVertex(const Vector3<float>& point) const;
|
||||
|
||||
|
||||
[[nodiscard]]
|
||||
const std::vector<Vector3>& GetNeighbors(const Vector3& vertex) const;
|
||||
const std::vector<Vector3<float>>& GetNeighbors(const Vector3<float>& vertex) const;
|
||||
|
||||
[[nodiscard]]
|
||||
bool Empty() const;
|
||||
[[nodiscard]] std::vector<uint8_t> Serialize() const;
|
||||
void Deserialize(const std::vector<uint8_t>& raw);
|
||||
|
||||
std::unordered_map<Vector3, std::vector<Vector3>> m_verTextMap;
|
||||
std::unordered_map<Vector3<float>, std::vector<Vector3<float>>> m_verTextMap;
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user