Initial commit from MyParking project

This commit is contained in:
2026-08-04 10:29:21 +08:00
commit d9432bd529
138 changed files with 16957 additions and 0 deletions
@@ -0,0 +1,56 @@
using System;
using System.Collections.Generic;
using System.Numerics;
using System.Text;
using Newtonsoft.Json;
namespace CommonUsage.Chassis
{
public class Wheel
{
public Wheel(Vector2 position, Action<float> speedWriter, Func<float> speedReader)
{
PhysicalPosition = Position = position;
SpeedWriter = speedWriter;
SpeedReader = speedReader;
}
public void WriteSpeed(float speed)
{
SpeedWriter.Invoke(_sendSpeed = speed);
}
public float GetSendSpeed()
{
return _sendSpeed;
}
public float ReadSpeed()
{
return SpeedReader();
}
// PhysicalPosition ===(chassis transform)===> Position
// useful in dual agv coordination
public readonly Vector2 PhysicalPosition;
public Vector2 Position;
public float ZeroDirection = 0;
[JsonIgnore] public readonly Action<float> SpeedWriter;
[JsonIgnore] public readonly Func<float> SpeedReader;
public float _sendSpeed;
}
public class GeometricControlPoint
{
public GeometricControlPoint(Vector2 position)
{
Position = position;
}
public Vector2 Position;
public float Theta;
}
}