Package com.marslib.vision
Record Class VisionConfig
java.lang.Object
java.lang.Record
com.marslib.vision.VisionConfig
public record VisionConfig(Supplier<Double> maxZHeight, double fieldLengthMeters, double fieldWidthMeters, Supplier<Double> fieldMarginMeters, Supplier<Double> maxTiltDeg, Supplier<Double> maxAngularAccelDegPerSec2, Supplier<Double> maxAmbiguity, Supplier<Double> tagStdBase, Supplier<Double> multiTagStdMultiplier, Supplier<Double> angularStdMultiplier, Supplier<Double> linearVelocityStdMultiplier, Supplier<Double> angularVelocityStdMultiplier, Supplier<Double> slamStdDev, Supplier<Double> slamAngularStdDev, double loopPeriodSecs)
extends Record
Configuration record for the MARSVision subsystem.
This object encapsulates all filtering, rejection, and estimation parameters, allowing the vision logic to remain generic across different robots and field layouts.
-
Constructor Summary
ConstructorsConstructorDescriptionVisionConfig(Supplier<Double> maxZHeight, double fieldLengthMeters, double fieldWidthMeters, Supplier<Double> fieldMarginMeters, Supplier<Double> maxTiltDeg, Supplier<Double> maxAngularAccelDegPerSec2, Supplier<Double> maxAmbiguity, Supplier<Double> tagStdBase, Supplier<Double> multiTagStdMultiplier, Supplier<Double> angularStdMultiplier, Supplier<Double> linearVelocityStdMultiplier, Supplier<Double> angularVelocityStdMultiplier, Supplier<Double> slamStdDev, Supplier<Double> slamAngularStdDev, double loopPeriodSecs) Creates an instance of aVisionConfigrecord class. -
Method Summary
Modifier and TypeMethodDescriptionReturns the value of theangularStdMultiplierrecord component.Returns the value of theangularVelocityStdMultiplierrecord component.final booleanIndicates whether some other object is "equal to" this one.doubleReturns the value of thefieldLengthMetersrecord component.Returns the value of thefieldMarginMetersrecord component.doubleReturns the value of thefieldWidthMetersrecord component.final inthashCode()Returns a hash code value for this object.Returns the value of thelinearVelocityStdMultiplierrecord component.doubleReturns the value of theloopPeriodSecsrecord component.Returns the value of themaxAmbiguityrecord component.Returns the value of themaxAngularAccelDegPerSec2record component.Returns the value of themaxTiltDegrecord component.Returns the value of themaxZHeightrecord component.Returns the value of themultiTagStdMultiplierrecord component.Returns the value of theslamAngularStdDevrecord component.Returns the value of theslamStdDevrecord component.Returns the value of thetagStdBaserecord component.final StringtoString()Returns a string representation of this record class.
-
Constructor Details
-
VisionConfig
public VisionConfig(Supplier<Double> maxZHeight, double fieldLengthMeters, double fieldWidthMeters, Supplier<Double> fieldMarginMeters, Supplier<Double> maxTiltDeg, Supplier<Double> maxAngularAccelDegPerSec2, Supplier<Double> maxAmbiguity, Supplier<Double> tagStdBase, Supplier<Double> multiTagStdMultiplier, Supplier<Double> angularStdMultiplier, Supplier<Double> linearVelocityStdMultiplier, Supplier<Double> angularVelocityStdMultiplier, Supplier<Double> slamStdDev, Supplier<Double> slamAngularStdDev, double loopPeriodSecs) Creates an instance of aVisionConfigrecord class.- Parameters:
maxZHeight- the value for themaxZHeightrecord componentfieldLengthMeters- the value for thefieldLengthMetersrecord componentfieldWidthMeters- the value for thefieldWidthMetersrecord componentfieldMarginMeters- the value for thefieldMarginMetersrecord componentmaxTiltDeg- the value for themaxTiltDegrecord componentmaxAngularAccelDegPerSec2- the value for themaxAngularAccelDegPerSec2record componentmaxAmbiguity- the value for themaxAmbiguityrecord componenttagStdBase- the value for thetagStdBaserecord componentmultiTagStdMultiplier- the value for themultiTagStdMultiplierrecord componentangularStdMultiplier- the value for theangularStdMultiplierrecord componentlinearVelocityStdMultiplier- the value for thelinearVelocityStdMultiplierrecord componentangularVelocityStdMultiplier- the value for theangularVelocityStdMultiplierrecord componentslamStdDev- the value for theslamStdDevrecord componentslamAngularStdDev- the value for theslamAngularStdDevrecord componentloopPeriodSecs- the value for theloopPeriodSecsrecord component
-
-
Method Details
-
toString
Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components. -
hashCode
public final int hashCode()Returns a hash code value for this object. The value is derived from the hash code of each of the record components. -
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. Reference components are compared withObjects::equals(Object,Object); primitive components are compared with '=='. -
maxZHeight
Returns the value of themaxZHeightrecord component.- Returns:
- the value of the
maxZHeightrecord component
-
fieldLengthMeters
public double fieldLengthMeters()Returns the value of thefieldLengthMetersrecord component.- Returns:
- the value of the
fieldLengthMetersrecord component
-
fieldWidthMeters
public double fieldWidthMeters()Returns the value of thefieldWidthMetersrecord component.- Returns:
- the value of the
fieldWidthMetersrecord component
-
fieldMarginMeters
Returns the value of thefieldMarginMetersrecord component.- Returns:
- the value of the
fieldMarginMetersrecord component
-
maxTiltDeg
Returns the value of themaxTiltDegrecord component.- Returns:
- the value of the
maxTiltDegrecord component
-
maxAngularAccelDegPerSec2
Returns the value of themaxAngularAccelDegPerSec2record component.- Returns:
- the value of the
maxAngularAccelDegPerSec2record component
-
maxAmbiguity
Returns the value of themaxAmbiguityrecord component.- Returns:
- the value of the
maxAmbiguityrecord component
-
tagStdBase
Returns the value of thetagStdBaserecord component.- Returns:
- the value of the
tagStdBaserecord component
-
multiTagStdMultiplier
Returns the value of themultiTagStdMultiplierrecord component.- Returns:
- the value of the
multiTagStdMultiplierrecord component
-
angularStdMultiplier
Returns the value of theangularStdMultiplierrecord component.- Returns:
- the value of the
angularStdMultiplierrecord component
-
linearVelocityStdMultiplier
Returns the value of thelinearVelocityStdMultiplierrecord component.- Returns:
- the value of the
linearVelocityStdMultiplierrecord component
-
angularVelocityStdMultiplier
Returns the value of theangularVelocityStdMultiplierrecord component.- Returns:
- the value of the
angularVelocityStdMultiplierrecord component
-
slamStdDev
Returns the value of theslamStdDevrecord component.- Returns:
- the value of the
slamStdDevrecord component
-
slamAngularStdDev
Returns the value of theslamAngularStdDevrecord component.- Returns:
- the value of the
slamAngularStdDevrecord component
-
loopPeriodSecs
public double loopPeriodSecs()Returns the value of theloopPeriodSecsrecord component.- Returns:
- the value of the
loopPeriodSecsrecord component
-