#pragma once #include #include namespace internal { struct PE_API pattern { virtual ~pattern() = default; virtual std::pair eval_sdf(Eigen::Vector2d p) const = 0; // virtual double eval_sdf_grad(Eigen::Vector2d p) const = 0; virtual double get_max_bounding_length() const = 0; }; } // namespace internal