plop/
lib.rs

1// Copyright Brandon Ly 2018.
2// Copyright Jeron A. Lau 2018.
3// Dual-licensed under either the MIT License or the Boost Software License,
4// Version 1.0.  (See accompanying file LICENSE_1_0.txt or copy at
5// https://www.boost.org/LICENSE_1_0.txt)
6
7//! "Plop": Plop Grizzly Physics Engine.
8
9#![warn(missing_docs)]
10#![doc(
11	html_logo_url = "http://free.plopgrizzly.com/plop/icon.svg",
12	html_favicon_url = "http://free.plopgrizzly.com/plop/icon.svg",
13	html_root_url = "http://free.plopgrizzly.com/plop/"
14)]
15
16extern crate aci_png; // For loading default icon
17extern crate ami; // For octree
18
19// mod world;
20mod derivative;
21mod rigid_body;
22mod state;
23mod kinematics;
24mod mass;
25
26/// Prelude module.
27pub mod prelude;
28
29pub use ami::{ BBox };
30// pub use world::{ World, Object };
31pub use derivative::Derivative;
32pub use rigid_body::RigidBody;
33pub use state::State;
34pub use mass::Mass;
35
36mod constants {
37	pub const GRAVITY: f32 = 9.81;
38	#[allow(unused)] // TODO
39	pub const METER: f32 = 1.0;
40	#[allow(unused)] // TODO
41	pub const DT: f32 = 1.0 / 100.0;
42}
43
44/// The integration step of the RK4 method
45pub fn integrate(_state: State, _t: f32, _dt: f32) {
46	
47}