| Crates.io | rdsmath |
| lib.rs | rdsmath |
| version | 0.1.0 |
| created_at | 2026-01-03 05:46:04.349363+00 |
| updated_at | 2026-01-03 05:46:04.349363+00 |
| description | Minimal math library for no_std environments - RedstoneOS |
| homepage | |
| repository | https://github.com/redstone-os/rdsmath |
| max_upload_size | |
| id | 2019640 |
| size | 26,566 |
Minimal Math Library for RedstoneOS
Biblioteca matemática minimalista para ambientes #![no_std], sem dependências externas.
#![no_std] - Compatível com bare-metal| Módulo | Descrição |
|---|---|
consts |
Constantes matemáticas (PI, E, etc.) |
trig |
Funções trigonométricas (sin, cos, tan, atan2) |
exp |
Exponencial, logaritmo, potência, sqrt |
round |
Arredondamento e truncamento |
util |
Funções utilitárias (lerp, clamp, smoothstep) |
use rdsmath::*;
// Trigonometria
let angle = PI / 4.0;
let (s, c) = sincosf(angle);
// Raiz quadrada (fast inverse sqrt do Quake)
let root = sqrtf(2.0);
// Interpolação
let value = lerpf(0.0, 100.0, 0.5); // = 50.0
let smooth = smoothstepf(0.0, 1.0, 0.5);
// Clamp
let clamped = clampf(150.0, 0.0, 100.0); // = 100.0
As funções são otimizadas para velocidade com precisão suficiente para aplicações gráficas (~6 dígitos significativos para a maioria das funções).
| Função | Precisão | Método |
|---|---|---|
sinf/cosf |
~6 dígitos | Aproximação Bhaskara |
sqrtf |
~7 dígitos | Newton-Raphson + IEEE 754 hack |
expf/logf |
~5 dígitos | Decomposição + Taylor |
powf |
~5 dígitos | exp(y * log(x)) |
MIT License - RedstoneOS Team