Skip to main content

Crate symbios_robot

Crate symbios_robot 

Source
Expand description

§symbios-robot

Engine-agnostic robot interpretation layer for Symbios L-Systems.

This crate translates an L-System symbol sequence into a blueprint::RobotBlueprint — a complete description of a robot’s topology (rigid bodies, joints, sensors) that decouples the Genotype (L-System string) from the Phenotype (physics simulation).

§Quick start

use symbios::{SymbiosState, SymbolTable};
use symbios_robot::{RobotConfig, RobotInterpreter};

let mut interner = SymbolTable::new();
interner.intern("B").unwrap();

let mut interpreter = RobotInterpreter::new(RobotConfig::default());
interpreter.populate_standard_symbols(&interner);

let mut state = SymbiosState::new();
let b_id = interner.resolve_id("B").unwrap();
state.push(b_id, 0.0, &[1.0, 0.1, 0.1]).unwrap();

let blueprint = interpreter.build_blueprint(&state);
assert_eq!(blueprint.modules.len(), 1);

§Modules

All public items in these modules are re-exported at the crate root.

Re-exports§

pub use blueprint::*;
pub use interpreter::*;
pub use turtle::*;

Modules§

blueprint
interpreter
Interpreter that converts an L-System symbol sequence into a RobotBlueprint.
turtle
Turtle state and operations for robotic interpretation.