Skip to main content

Crate embassy_ssd1306_physics

Crate embassy_ssd1306_physics 

Source
Expand description

§embassy-ssd1306-physics

Dessins 2D no_std d’objets physiques pour écrans OLED SSD1306 (128×64), construite au-dessus de [embassy-ssd1306-graphics].

§Objets disponibles

ModuleStructDescription
robotic_armRoboticArmBras industriel 2D (socle + pince pneumatique)
pendulumPendulumPendule simple (encastrement + tige + masse)
spring_massSpringMassSystème ressort-masse vertical
compassCompassBoussole (cadran + cardinaux + aiguille)
gearGearEngrenage (dents + moyeu creux)
pistonPistonPiston 2D mécanique (chambre + tige guidée)

§Patron sin/cos injecté

Chaque draw() accepte cos_fn et sin_fn de type fn(f32) -> f32. Passez votre crate trig no_std :

use embedded_trig_f32 as trig;
arm.draw(&mut gfx, 0.785, -0.524, true, trig::cos, trig::sin);

§Ajouter un nouvel objet

  1. Créer src/mon_objet.rs : impl struct + draw() + erase()
  2. Déclarer pub mod mon_objet; dans src/lib.rs
  3. Ajouter pub use mon_objet::MonObjet; si re-export souhaité

Aucun autre fichier à modifier.

Re-exports§

pub use robotic_arm::RoboticArm;
pub use pendulum::Pendulum;
pub use spring_mass::SpringMass;
pub use compass::Compass;
pub use gear::Gear;
pub use gear::GearPair;
pub use gear::GearTrain;
pub use piston::Piston;
pub use robotic_arm::Facing;

Modules§

compass
compass
draw_utils
draw_utils
gear
gear
pendulum
pendulum
piston
piston
robotic_arm
RoboticArm bras industriel 2D
spring_mass
spring_mass