Samarium Docs¶
Samarium is a 2d physics and rendering engine, written in modern C++20
Contents¶
- Math
- Core Math Functions
math
math::almost_equal()
math::min()
math::max()
math::power()
math::to_degrees()
math::to_radians()
math::abs()
math::sign()
math::sign()
math::sign()
math::mod()
math::wrap_max()
math::wrap_min_max()
math::round_to_nearest()
math::ceil_to_nearest()
math::floor_to_nearest()
math::sample()
math::integral()
math::sum()
math::mean()
math::distance()
math::distance_sq()
math::within_distance()
math::lerp_along()
math::clamped_lerp_along()
math::project()
math::project_clamped()
math::distance()
math::clamped_distance()
math::lies_in_segment()
math::intersection()
math::clamped_intersection()
math::intersection()
math::area()
math::area()
math::abs_area()
math::abs_area()
math::regular_polygon_points()
math::regular_polygon_points()
math::regular_polygon_points()
math::regular_polygon_points()
math::two_pi_i
math::epsilon
math::pi
math::two_thirds_pi
math::two_pi
math::e
math::sqrt2
- Vec2
- Interp
interp
interp::smooth_step()
interp::smoother_step()
interp::ease()
interp::ease2()
interp::ease_in_sine()
interp::ease_out_sine()
interp::ease_sine()
interp::ease_in_quad()
interp::ease_out_quad()
interp::ease_quad()
interp::ease_in_cubic()
interp::ease_out_cubic()
interp::ease_cubic()
interp::ease_in_quart()
interp::ease_out_quart()
interp::ease_quart()
interp::ease_in_quint()
interp::ease_out_quint()
interp::ease_quint()
interp::ease_in_expo()
interp::ease_out_expo()
interp::ease_expo()
interp::ease_in_circ()
interp::ease_out_circ()
interp::ease_circ()
interp::ease_in_back()
interp::ease_out_back()
interp::ease_back()
interp::ease_in_elastic()
interp::ease_out_elastic()
interp::ease_elastic()
interp::in_range()
interp::clamp()
interp::lerp()
interp::clamped_lerp()
interp::lerp_rgb()
interp::lerp_rotate()
interp::clamped_lerp_rotate()
interp::lerp_inverse()
interp::map_range()
interp::map_range_clamp()
interp::make_mapper()
interp::make_clamped_mapper()
interp::lerp_points()
- Bounding Box
sm
sm::PlacementX
sm::PlacementY
sm::Placement
sm::Box2
sm::Box2::VecType
sm::Box2::cast()
sm::Box2::validate()
sm::Box2::validated()
sm::Box2::contains()
sm::Box2::diagonal()
sm::Box2::clamp()
sm::Box2::clamped_to()
sm::Box2::width()
sm::Box2::height()
sm::Box2::x_range()
sm::Box2::y_range()
sm::Box2::operator==()
sm::Box2::centre()
sm::Box2::set_centre()
sm::Box2::set_width()
sm::Box2::set_height()
sm::Box2::scaled()
sm::Box2::scaled_x()
sm::Box2::scaled_y()
sm::Box2::line_segments()
sm::Box2::get_placement()
sm::Box2::min
sm::Box2::max
sm::Box2::fit_points()
sm::Box2::fit_boxes()
sm::Box2::fit_boxes()
sm::Box2::square()
sm::Box2::from_centre_width_height()
- Sample
- SecondOrderDynamics
sm
sm::SecondOrderDynamics
sm::SecondOrderDynamics::SecondOrderDynamics()
sm::SecondOrderDynamics::update_parameters()
sm::SecondOrderDynamics::update()
sm::SecondOrderDynamics::update()
sm::SecondOrderDynamics::value
sm::SecondOrderDynamics::previous_input
sm::SecondOrderDynamics::vel
sm::SecondOrderDynamics::k1
sm::SecondOrderDynamics::k2
sm::SecondOrderDynamics::k3
- Core Math Functions
- gl
- Physics
- util
- Include Graph