BccLatticePointGenerator.hpp
Go to the documentation of this file.
1 // This code is based on Jet framework.
2 // Copyright (c) 2018 Doyub Kim
3 // CubbyFlow is voxel-based fluid simulation engine for computer games.
4 // Copyright (c) 2020 CubbyFlow Team
5 // Core Part: Chris Ohk, Junwoo Hwang, Jihong Sin, Seungwoo Yoo
6 // AI Part: Dongheon Cho, Minseo Kim
7 // We are making my contributions/submissions to this project solely in our
8 // personal capacity and are not conveying any rights to any intellectual
9 // property of any third parties.
10 
11 #ifndef CUBBYFLOW_BCC_LATTICE_POINT_GENERATOR_HPP
12 #define CUBBYFLOW_BCC_LATTICE_POINT_GENERATOR_HPP
13 
15 
16 namespace CubbyFlow
17 {
25 {
26  public:
34  void ForEachPoint(
35  const BoundingBox3D& boundingBox, double spacing,
36  const std::function<bool(const Vector3D&)>& callback) const override;
37 };
38 
40 using BccLatticePointGeneratorPtr = std::shared_ptr<BccLatticePointGenerator>;
41 } // namespace CubbyFlow
42 
43 #endif
N-D axis-aligned bounding box class.
Definition: BoundingBox.hpp:46
std::shared_ptr< BccLatticePointGenerator > BccLatticePointGeneratorPtr
Shared pointer type for the BccLatticePointGenerator.
Definition: BccLatticePointGenerator.hpp:40
Body-centered lattice points generator.
Definition: BccLatticePointGenerator.hpp:24
Definition: Matrix.hpp:27
void ForEachPoint(const BoundingBox3D &boundingBox, double spacing, const std::function< bool(const Vector3D &)> &callback) const override
Invokes callback function for each BCC-lattice points inside boundingBox.
Definition: pybind11Utils.hpp:20
Abstract base class for 3-D point generator.
Definition: PointGenerator3.hpp:28