NURBS curve synthese op basis van voertuigmodel.
Voor
soepel rijgedrag van het voertuig is het nodig dat de routedefinitie
dusdanig is, dat de bijbehorende stuurwielbeweging begrensd is qua
uitslag en snelheid, en misschien ook wel in volgende afgeleiden. We
zouden nu een NURBS curve willen synthetiseren, die een bepaalde
fysieke bocht beschrijft, waarbij de stuurwielbeweging in alle
afgeleiden geminimaliseerd wordt. Anders gesteld, we willen een
curve kunnen parametriseren aan de hand van constraints in plaats
van via de ligging en het gewicht van de 'knots' van een NURBS.
Kritieke secties bepalen in een layout.
Om te
voorkomen dat voertuigen botsen, dient de ruimte waar voertuigen
elkaar passeren gealloceerd te worden. Op basis van de set NURBS
routes en het voertuigmodel moeten alle secties bepaald worden waar
hull-curven van de voertuigen overlappen.
Synthetiseren van NURBS routes obv de definitie van
beschikbare ruimte.
Het invoeren van een exacte route met
gedefinieerde curven op alle kruispunten blijft een bewerkelijke
klus. Waar we naartoe willen, is dat alleen de beschikbare vrije
ruimte gedefinieerd hoeft te worden, en dat automatisch de beste
route gesynthetiseerd wordt, waarbij het voertuig zo snel en
comfortabel mogelijk kan rijden, zonder buiten de vrije ruimte te
komen.
Hull curve bepalen bij geleiding van een voertuig met twee
control points over een NURBS curve.
We kunnen een voertuig
als punt met orientatie over een route geleiden, maar ook door twee
punten simultaan over een route te geleiden (dat kan alleen met
voertuigen met twee sturende assen). Alleen voor de eerste situatie
kunnen we nu een omhullende bepalen. Voor het tweede geval willen we
dat ook kunnen.
Approximatie van een NURBS route over een serie gelogde
punten.
Soms is het wenselijk een route te definieren door de
afgelegde route in manual mode gereden, op te slaan. Om die route
dan automatisch te reproduceren, moet een NURBS route
gesynthetiseerd worden, die de gelogde punten zo goed mogelijk
volgt. Daarbij moet het mogelijk zijn om randvoorwaarden op te geven
(voertuigmodel, maximale stuurhoeken, stuursnelheden, snelheid,
laterale versnelling) waaraan voldaan moet worden.
Reparameteriseren van NURBS curves van u naar afgelegde weg 's'.
Op voertuigbesturingsniveau is het setpoint (x, y, orientatie) gedefinieerd als functie van de afgelegde weg 's' van een strategisch punt van het voertuig-frame. Een NURBS is gedefinieerd als een functie van een variabele 'u', lopend van 0 tot 1, die niet evenredig is met de koordlengte. Er moet uitgezocht worden hoe dit in elkaar overgezet kan worden.
Voertuig-orientatie onafhankelijk van positie definieren met hogere dimensie NURBS.
Sommige voertuig-platforms kunnen onafhankelijk van elkaar transleren en roteren. Er moet een methode bedacht worden om zulke complexe bewegingen (als hogere dimensie NURBS?) te definieren. Voor de entertainment-applicatie, waar zulke bewegingen extreem worden uitgebuit, dient ook een user interface bedacht te worden voor het invoeren van die definities.
NURBS bibliotheek uitbreiden in C++.
Voor de verwezenlijking van al het bovenstaande zal de bestaande bibliotheek van NURBS functies in C++ uitgebreid moeten worden.