Samarium Docs¶
Samarium is a 2d physics and rendering engine, written in modern C++20
Contents¶
Links
Usage
Physics
API Reference
- Math
- Core Math Functions
sm::mathalmost_equal()min()max()power()to_degrees()to_radians()abs()sign()sign()sign()mod()wrap_max()wrap_min_max()round_to_nearest()ceil_to_nearest()floor_to_nearest()sample()integral()sum()mean()distance()distance_sq()within_distance()lerp_along()clamped_lerp_along()project()project_clamped()distance()clamped_distance()lies_in_segment()intersection()clamped_intersection()intersection()area()area()abs_area()abs_area()regular_polygon_points()regular_polygon_points()regular_polygon_points()regular_polygon_points()two_pi_iepsilonpitwo_thirds_pitwo_piesqrt2
- Vec2
- Interp
sm::interpsmooth_step()smoother_step()ease()ease2()ease_in_sine()ease_out_sine()ease_sine()ease_in_quad()ease_out_quad()ease_quad()ease_in_cubic()ease_out_cubic()ease_cubic()ease_in_quart()ease_out_quart()ease_quart()ease_in_quint()ease_out_quint()ease_quint()ease_in_expo()ease_out_expo()ease_expo()ease_in_circ()ease_out_circ()ease_circ()ease_in_back()ease_out_back()ease_back()ease_in_elastic()ease_out_elastic()ease_elastic()in_range()clamp()lerp()clamped_lerp()lerp_rgb()lerp_rotate()clamped_lerp_rotate()lerp_inverse()map_range()map_range_clamp()make_mapper()make_clamped_mapper()lerp_points()
- Bounding Box
smPlacementXPlacementYsm::Placementsm::Box2VecTypecast()validate()validated()contains()diagonal()clamp()clamped_to()width()height()x_range()y_range()operator==()centre()set_centre()set_width()set_height()scaled()scaled_x()scaled_y()line_segments()get_placement()minmaxfit_points()fit_boxes()fit_boxes()square()from_centre_width_height()
- Sample
- SecondOrderDynamics
- Core Math Functions
- gl
- Physics
- util
- Include Graph