2023-02-15 22:18:27 -06:00
<!DOCTYPE HTML>
< html lang = "en" >
< head >
2024-01-18 17:54:43 -06:00
<!-- Generated by javadoc (17) on Thu Jan 18 17:54:02 CST 2024 -->
2024-01-15 14:39:17 -06:00
< title > SwerveModuleSimulation< / title >
2023-02-15 22:18:27 -06:00
< meta name = "viewport" content = "width=device-width, initial-scale=1" >
< meta http-equiv = "Content-Type" content = "text/html; charset=utf-8" >
2024-01-18 12:09:37 -06:00
< meta name = "dc.created" content = "2024-01-18" >
2023-02-15 22:18:27 -06:00
< meta name = "description" content = "declaration: package: swervelib.simulation, class: SwerveModuleSimulation" >
< meta name = "generator" content = "javadoc/ClassWriterImpl" >
< link rel = "stylesheet" type = "text/css" href = "../../stylesheet.css" title = "Style" >
< link rel = "stylesheet" type = "text/css" href = "../../script-dir/jquery-ui.min.css" title = "Style" >
< link rel = "stylesheet" type = "text/css" href = "../../jquery-ui.overrides.css" title = "Style" >
< script type = "text/javascript" src = "../../script.js" > < / script >
2024-01-15 14:39:17 -06:00
< script type = "text/javascript" src = "../../script-dir/jquery-3.5.1.min.js" > < / script >
2023-02-15 22:18:27 -06:00
< script type = "text/javascript" src = "../../script-dir/jquery-ui.min.js" > < / script >
< / head >
< body class = "class-declaration-page" >
< script type = "text/javascript" > v a r e v e n R o w C o l o r = " e v e n - r o w - c o l o r " ;
var oddRowColor = "odd-row-color";
var tableTab = "table-tab";
var activeTableTab = "active-table-tab";
var pathtoroot = "../../";
loadScripts(document, 'script');< / script >
< noscript >
< div > JavaScript is disabled on your browser.< / div >
< / noscript >
< div class = "flex-box" >
< header role = "banner" class = "flex-header" >
< nav role = "navigation" >
<!-- ========= START OF TOP NAVBAR ======= -->
< div class = "top-nav" id = "navbar-top" >
< div class = "skip-nav" > < a href = "#skip-navbar-top" title = "Skip navigation links" > Skip navigation links< / a > < / div >
< ul id = "navbar-top-firstrow" class = "nav-list" title = "Navigation" >
< li > < a href = "../../index.html" > Overview< / a > < / li >
< li > < a href = "package-summary.html" > Package< / a > < / li >
< li class = "nav-bar-cell1-rev" > Class< / li >
< li > < a href = "package-tree.html" > Tree< / a > < / li >
2024-01-15 14:39:17 -06:00
< li > < a href = "../../index-files/index-1.html" > Index< / a > < / li >
2023-02-15 22:18:27 -06:00
< li > < a href = "../../help-doc.html#class" > Help< / a > < / li >
< / ul >
< / div >
< div class = "sub-nav" >
< div >
< ul class = "sub-nav-list" >
< li > Summary: < / li >
< li > Nested | < / li >
2024-01-15 14:39:17 -06:00
< li > < a href = "#field-summary" > Field< / a > | < / li >
2023-02-15 22:18:27 -06:00
< li > < a href = "#constructor-summary" > Constr< / a > | < / li >
< li > < a href = "#method-summary" > Method< / a > < / li >
< / ul >
< ul class = "sub-nav-list" >
< li > Detail: < / li >
2024-01-15 14:39:17 -06:00
< li > < a href = "#field-detail" > Field< / a > | < / li >
2023-02-15 22:18:27 -06:00
< li > < a href = "#constructor-detail" > Constr< / a > | < / li >
< li > < a href = "#method-detail" > Method< / a > < / li >
< / ul >
< / div >
< div class = "nav-list-search" > < label for = "search-input" > SEARCH:< / label >
< input type = "text" id = "search-input" value = "search" disabled = "disabled" >
< input type = "reset" id = "reset-button" value = "reset" disabled = "disabled" >
< / div >
< / div >
<!-- ========= END OF TOP NAVBAR ========= -->
< span class = "skip-nav" id = "skip-navbar-top" > < / span > < / nav >
< / header >
< div class = "flex-content" >
< main role = "main" >
<!-- ======== START OF CLASS DATA ======== -->
< div class = "header" >
< div class = "sub-title" > < span class = "package-label-in-type" > Package< / span > < a href = "package-summary.html" > swervelib.simulation< / a > < / div >
< h1 title = "Class SwerveModuleSimulation" class = "title" > Class SwerveModuleSimulation< / h1 >
< / div >
< div class = "inheritance" title = "Inheritance Tree" > < a href = "https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title = "class or interface in java.lang" class = "external-link" > java.lang.Object< / a >
< div class = "inheritance" > swervelib.simulation.SwerveModuleSimulation< / div >
< / div >
< section class = "class-description" id = "class-description" >
< hr >
< div class = "type-signature" > < span class = "modifiers" > public class < / span > < span class = "element-name type-name-label" > SwerveModuleSimulation< / span >
< span class = "extends-implements" > extends < a href = "https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title = "class or interface in java.lang" class = "external-link" > Object< / a > < / span > < / div >
< div class = "block" > Class to hold simulation data for < a href = "../SwerveModule.html" title = "class in swervelib" > < code > SwerveModule< / code > < / a > < / div >
< / section >
< section class = "summary" >
< ul class = "summary-list" >
2024-01-15 14:39:17 -06:00
<!-- =========== FIELD SUMMARY =========== -->
< li >
< section class = "field-summary" id = "field-summary" >
< h2 > Field Summary< / h2 >
< div class = "caption" > < span > Fields< / span > < / div >
< div class = "summary-table three-column-summary" >
< div class = "table-header col-first" > Modifier and Type< / div >
< div class = "table-header col-second" > Field< / div >
< div class = "table-header col-last" > Description< / div >
< div class = "col-first even-row-color" > < code > private double< / code > < / div >
< div class = "col-second even-row-color" > < code > < a href = "#dt" class = "member-name-link" > dt< / a > < / code > < / div >
< div class = "col-last even-row-color" >
< div class = "block" > Time delta since last update< / div >
< / div >
< div class = "col-first odd-row-color" > < code > private double< / code > < / div >
< div class = "col-second odd-row-color" > < code > < a href = "#fakePos" class = "member-name-link" > fakePos< / a > < / code > < / div >
< div class = "col-last odd-row-color" >
< div class = "block" > Fake motor position.< / div >
< / div >
< div class = "col-first even-row-color" > < code > private double< / code > < / div >
< div class = "col-second even-row-color" > < code > < a href = "#fakeSpeed" class = "member-name-link" > fakeSpeed< / a > < / code > < / div >
< div class = "col-last even-row-color" >
< div class = "block" > The fake speed of the previous state, used to calculate < a href = "#fakePos" > < code > fakePos< / code > < / a > .< / div >
< / div >
< div class = "col-first odd-row-color" > < code > private double< / code > < / div >
< div class = "col-second odd-row-color" > < code > < a href = "#lastTime" class = "member-name-link" > lastTime< / a > < / code > < / div >
< div class = "col-last odd-row-color" >
< div class = "block" > Last time queried.< / div >
< / div >
< div class = "col-first even-row-color" > < code > private edu.wpi.first.math.kinematics.SwerveModuleState< / code > < / div >
< div class = "col-second even-row-color" > < code > < a href = "#state" class = "member-name-link" > state< / a > < / code > < / div >
< div class = "col-last even-row-color" >
< div class = "block" > Current simulated swerve module state.< / div >
< / div >
< div class = "col-first odd-row-color" > < code > private final edu.wpi.first.wpilibj.Timer< / code > < / div >
< div class = "col-second odd-row-color" > < code > < a href = "#timer" class = "member-name-link" > timer< / a > < / code > < / div >
< div class = "col-last odd-row-color" >
< div class = "block" > Main timer to simulate the passage of time.< / div >
< / div >
< / div >
< / section >
< / li >
2023-02-15 22:18:27 -06:00
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
< li >
< section class = "constructor-summary" id = "constructor-summary" >
< h2 > Constructor Summary< / h2 >
< div class = "caption" > < span > Constructors< / span > < / div >
< div class = "summary-table two-column-summary" >
< div class = "table-header col-first" > Constructor< / div >
< div class = "table-header col-last" > Description< / div >
< div class = "col-constructor-name even-row-color" > < code > < a href = "#%3Cinit%3E()" class = "member-name-link" > SwerveModuleSimulation< / a > ()< / code > < / div >
< div class = "col-last even-row-color" >
< div class = "block" > Create simulation class and initialize module at 0.< / div >
< / div >
< / div >
< / section >
< / li >
<!-- ========== METHOD SUMMARY =========== -->
< li >
< section class = "method-summary" id = "method-summary" >
< h2 > Method Summary< / h2 >
< div id = "method-summary-table" >
< div class = "table-tabs" role = "tablist" aria-orientation = "horizontal" > < button id = "method-summary-table-tab0" role = "tab" aria-selected = "true" aria-controls = "method-summary-table.tabpanel" tabindex = "0" onkeydown = "switchTab(event)" onclick = "show('method-summary-table', 'method-summary-table', 3)" class = "active-table-tab" > All Methods< / button > < button id = "method-summary-table-tab2" role = "tab" aria-selected = "false" aria-controls = "method-summary-table.tabpanel" tabindex = "-1" onkeydown = "switchTab(event)" onclick = "show('method-summary-table', 'method-summary-table-tab2', 3)" class = "table-tab" > Instance Methods< / button > < button id = "method-summary-table-tab4" role = "tab" aria-selected = "false" aria-controls = "method-summary-table.tabpanel" tabindex = "-1" onkeydown = "switchTab(event)" onclick = "show('method-summary-table', 'method-summary-table-tab4', 3)" class = "table-tab" > Concrete Methods< / button > < / div >
< div id = "method-summary-table.tabpanel" role = "tabpanel" >
< div class = "summary-table three-column-summary" aria-labelledby = "method-summary-table-tab0" >
< div class = "table-header col-first" > Modifier and Type< / div >
< div class = "table-header col-second" > Method< / div >
< div class = "table-header col-last" > Description< / div >
< div class = "col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4" > < code > edu.wpi.first.math.kinematics.SwerveModulePosition< / code > < / div >
< div class = "col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4" > < code > < a href = "#getPosition()" class = "member-name-link" > getPosition< / a > ()< / code > < / div >
< div class = "col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4" >
< div class = "block" > Get the simulated swerve module position.< / div >
< / div >
2023-08-29 21:03:58 -05:00
< div class = "col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4" > < code > edu.wpi.first.math.kinematics.SwerveModuleState< / code > < / div >
2023-02-15 22:18:27 -06:00
< div class = "col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4" > < code > < a href = "#getState()" class = "member-name-link" > getState< / a > ()< / code > < / div >
< div class = "col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4" >
2023-08-29 21:03:58 -05:00
< div class = "block" > Get the < code > SwerveModuleState< / code > of the simulated module.< / div >
2023-02-15 22:18:27 -06:00
< / div >
< div class = "col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4" > < code > void< / code > < / div >
2023-08-29 21:03:58 -05:00
< div class = "col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4" > < code > < a href = "#updateStateAndPosition(edu.wpi.first.math.kinematics.SwerveModuleState)" class = "member-name-link" > updateStateAndPosition< / a > < wbr > (edu.wpi.first.math.kinematics.SwerveModuleState desiredState)< / code > < / div >
2023-02-15 22:18:27 -06:00
< div class = "col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4" >
< div class = "block" > Update the position and state of the module.< / div >
< / div >
< / div >
< / div >
< / div >
< div class = "inherited-list" >
< h3 id = "methods-inherited-from-class-java.lang.Object" > Methods inherited from class java.lang.< a href = "https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title = "class or interface in java.lang" class = "external-link" > Object< / a > < / h3 >
< code > < a href = "https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title = "class or interface in java.lang" class = "external-link" > clone< / a > , < a href = "https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title = "class or interface in java.lang" class = "external-link" > equals< / a > , < a href = "https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title = "class or interface in java.lang" class = "external-link" > finalize< / a > , < a href = "https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title = "class or interface in java.lang" class = "external-link" > getClass< / a > , < a href = "https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#hashCode()" title = "class or interface in java.lang" class = "external-link" > hashCode< / a > , < a href = "https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title = "class or interface in java.lang" class = "external-link" > notify< / a > , < a href = "https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title = "class or interface in java.lang" class = "external-link" > notifyAll< / a > , < a href = "https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#toString()" title = "class or interface in java.lang" class = "external-link" > toString< / a > , < a href = "https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait()" title = "class or interface in java.lang" class = "external-link" > wait< / a > , < a href = "https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long)" title = "class or interface in java.lang" class = "external-link" > wait< / a > , < a href = "https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long,int)" title = "class or interface in java.lang" class = "external-link" > wait< / a > < / code > < / div >
< / section >
< / li >
< / ul >
< / section >
< section class = "details" >
< ul class = "details-list" >
2024-01-15 14:39:17 -06:00
<!-- ============ FIELD DETAIL =========== -->
< li >
< section class = "field-details" id = "field-detail" >
< h2 > Field Details< / h2 >
< ul class = "member-list" >
< li >
< section class = "detail" id = "timer" >
< h3 > timer< / h3 >
< div class = "member-signature" > < span class = "modifiers" > private final< / span > < span class = "return-type" > edu.wpi.first.wpilibj.Timer< / span > < span class = "element-name" > timer< / span > < / div >
< div class = "block" > Main timer to simulate the passage of time.< / div >
< / section >
< / li >
< li >
< section class = "detail" id = "dt" >
< h3 > dt< / h3 >
< div class = "member-signature" > < span class = "modifiers" > private< / span > < span class = "return-type" > double< / span > < span class = "element-name" > dt< / span > < / div >
< div class = "block" > Time delta since last update< / div >
< / section >
< / li >
< li >
< section class = "detail" id = "fakePos" >
< h3 > fakePos< / h3 >
< div class = "member-signature" > < span class = "modifiers" > private< / span > < span class = "return-type" > double< / span > < span class = "element-name" > fakePos< / span > < / div >
< div class = "block" > Fake motor position.< / div >
< / section >
< / li >
< li >
< section class = "detail" id = "fakeSpeed" >
< h3 > fakeSpeed< / h3 >
< div class = "member-signature" > < span class = "modifiers" > private< / span > < span class = "return-type" > double< / span > < span class = "element-name" > fakeSpeed< / span > < / div >
< div class = "block" > The fake speed of the previous state, used to calculate < a href = "#fakePos" > < code > fakePos< / code > < / a > .< / div >
< / section >
< / li >
< li >
< section class = "detail" id = "lastTime" >
< h3 > lastTime< / h3 >
< div class = "member-signature" > < span class = "modifiers" > private< / span > < span class = "return-type" > double< / span > < span class = "element-name" > lastTime< / span > < / div >
< div class = "block" > Last time queried.< / div >
< / section >
< / li >
< li >
< section class = "detail" id = "state" >
< h3 > state< / h3 >
< div class = "member-signature" > < span class = "modifiers" > private< / span > < span class = "return-type" > edu.wpi.first.math.kinematics.SwerveModuleState< / span > < span class = "element-name" > state< / span > < / div >
< div class = "block" > Current simulated swerve module state.< / div >
< / section >
< / li >
< / ul >
< / section >
< / li >
2023-02-15 22:18:27 -06:00
<!-- ========= CONSTRUCTOR DETAIL ======== -->
< li >
< section class = "constructor-details" id = "constructor-detail" >
< h2 > Constructor Details< / h2 >
< ul class = "member-list" >
< li >
< section class = "detail" id = "<init>()" >
< h3 > SwerveModuleSimulation< / h3 >
< div class = "member-signature" > < span class = "modifiers" > public< / span > < span class = "element-name" > SwerveModuleSimulation< / span > ()< / div >
< div class = "block" > Create simulation class and initialize module at 0.< / div >
< / section >
< / li >
< / ul >
< / section >
< / li >
<!-- ============ METHOD DETAIL ========== -->
< li >
< section class = "method-details" id = "method-detail" >
< h2 > Method Details< / h2 >
< ul class = "member-list" >
< li >
2023-08-29 21:03:58 -05:00
< section class = "detail" id = "updateStateAndPosition(edu.wpi.first.math.kinematics.SwerveModuleState)" >
2023-02-15 22:18:27 -06:00
< h3 > updateStateAndPosition< / h3 >
2023-08-29 21:03:58 -05:00
< div class = "member-signature" > < span class = "modifiers" > public< / span > < span class = "return-type" > void< / span > < span class = "element-name" > updateStateAndPosition< / span > < wbr > < span class = "parameters" > (edu.wpi.first.math.kinematics.SwerveModuleState desiredState)< / span > < / div >
< div class = "block" > Update the position and state of the module. Called from < a href = "../SwerveModule.html#setDesiredState(edu.wpi.first.math.kinematics.SwerveModuleState,boolean,boolean)" > < code > SwerveModule.setDesiredState(edu.wpi.first.math.kinematics.SwerveModuleState, boolean, boolean)< / code > < / a > function
2023-08-29 19:59:07 -05:00
when simulated.< / div >
2023-02-15 22:18:27 -06:00
< dl class = "notes" >
< dt > Parameters:< / dt >
< dd > < code > desiredState< / code > - State the swerve module is set to.< / dd >
< / dl >
< / section >
< / li >
< li >
< section class = "detail" id = "getPosition()" >
< h3 > getPosition< / h3 >
< div class = "member-signature" > < span class = "modifiers" > public< / span > < span class = "return-type" > edu.wpi.first.math.kinematics.SwerveModulePosition< / span > < span class = "element-name" > getPosition< / span > ()< / div >
< div class = "block" > Get the simulated swerve module position.< / div >
< dl class = "notes" >
< dt > Returns:< / dt >
< dd > < code > SwerveModulePosition< / code > of the simulated module.< / dd >
< / dl >
< / section >
< / li >
< li >
< section class = "detail" id = "getState()" >
< h3 > getState< / h3 >
2023-08-29 21:03:58 -05:00
< div class = "member-signature" > < span class = "modifiers" > public< / span > < span class = "return-type" > edu.wpi.first.math.kinematics.SwerveModuleState< / span > < span class = "element-name" > getState< / span > ()< / div >
< div class = "block" > Get the < code > SwerveModuleState< / code > of the simulated module.< / div >
2023-02-15 22:18:27 -06:00
< dl class = "notes" >
< dt > Returns:< / dt >
2023-08-29 21:03:58 -05:00
< dd > < code > SwerveModuleState< / code > of the simulated module.< / dd >
2023-02-15 22:18:27 -06:00
< / dl >
< / section >
< / li >
< / ul >
< / section >
< / li >
< / ul >
< / section >
<!-- ========= END OF CLASS DATA ========= -->
< / main >
< / div >
< / div >
< / body >
< / html >