|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.ObjectIcanGui.GuiHierarchy
IcanGui.GuiWindow
IcanGui.GuiIcanVoidVolumeItems
public class GuiIcanVoidVolumeItems
Encapsulate the behavior of GUI for ICAN/JAVA data entry of Void Volume Ratio Override data. There are a few different void volume ratio override types done here. For most types the override data is provided by an equation through two or three points. For table type, the override data is provided by the table. For radial type through the interphase, the points are determined at the inner and outer surface of the interphase. The constructor and remove() methods are required by the calling method in class IcanGui/GuiIcanVoidVolumeRatios. initMe() is required by abstract super class GuiWindow.
GuiWindow
Nested Class Summary | |
---|---|
(package private) class |
GuiIcanVoidVolumeItems.Madapter
Mouse Adapter Inner Class |
Field Summary | |
---|---|
private static java.lang.String[] |
buttonLabels
Labels to display on action buttons. |
private java.awt.Button[] |
buttons
Action buttons. |
private double[] |
d
Values of Diameter/Distance for Fiber or Particle, (Fiber or Particle +) Interphase, Matrix or Binder. |
private IcanDataSet |
data
ICAN/JAVA data set. |
private double |
dblPos
Value of position near center of laminate used for interpolation. |
private double[] |
dblRate
Value of data in appropriate units. |
private static double |
EPSR
Extra amount to allow when rounding the number of fibers in the ply up to the next highest value. |
private int |
formType
Type of loading: constant, linear, parabolic, hyperbolic, or user-defined. |
private java.awt.GridBagConstraints |
gbc
GridBag constraints. |
private java.awt.GridBagLayout |
gbl
GridBag Layout manager. |
private static double |
HALF
The number one-half. |
private static int |
iAccept
Accept Button will verify the data and complete the processing of Load data. |
private static int |
iCancel
Cancel Button will exit this screen discarding any data entered. |
private static int |
iClear
Clear Button will clear data entry fields. |
private static int |
iCompute
Compute Button will compute data values per ply as specified. |
private static int |
iDetail
Compute Button will compute detail data values per slice as specified. |
private static int |
iExit
Exit Button will exit the entire program. |
private static int |
iF
Index of Fiber or Particle variables. |
private static int |
iHelp
Help Button will display a set of information. |
private static int |
iI
Index of Interphase variables. |
private int |
iLbl
Counter/subscript for adding individual Labels into lblLoad[iLbl] array. |
private static int |
iM
Index of Matrix or Binder variables. |
private static int |
iPlot
Plot Button will plot data values per ply as specified. |
private int |
iPlys
Ply index for which this void volume ratio override applies. |
private java.lang.String |
itemType
Item type: Void Volume Ratio. |
private java.lang.String |
itemTypeLabel
Item type description. |
private double[] |
k
Volume ratios for Fiber or Particle, Interphase, Matrix or Binder. |
private double |
kvM
Void Volume Ratio for Matrix or Binder. |
private java.awt.Label[] |
lblDescr
Labels for descriptions at top of window. |
private java.awt.Label[] |
lblLoad
Array of Labels, saved for removal later. |
private java.awt.Label[][] |
lblSliceCol
(Column) Labels in Substructure Slice table. |
private java.awt.Label[] |
lblSliceTotals
Totals for columns in Substructure Slice table. |
private java.awt.Label[][] |
lblSliceVar
Labels in Substructure Slice fields. |
private java.awt.TextField |
loadPos
TextField containing position near center of laminate used for interpolation. |
private java.awt.TextField[] |
loadRate
Text field array in which to enter Void Volume Ratio Override data. |
private java.awt.Label[] |
loadTableCum
Label containing Ply center positions for each Ply. |
private java.awt.Label[] |
loadTablePly
Label containing Ply number for each Ply. |
private java.awt.Label[] |
loadTableRate
Label containing data in appropriate units. |
private java.awt.Label[] |
loadTableThick
Label containing Ply thickness for each Ply. |
private java.lang.String |
material
Material ID. |
private int |
maxLbl
Size to initialize lblLoad[maxLbl] to. |
private GuiIcanVoidVolumeItems.Madapter |
myMadapter
Mouse Adapter to handle mouse entering the window for the first time and right clicks. |
private static int |
nButtons
Number of action buttons. |
private static int |
nData
Number of data columns = number of data fields since the input data is all on one line. |
private int |
nPlys
Number of Plys in data table. |
private static int |
nRadialCols
Number of Columns in radial table. |
private static int |
nset
Number of Fiber or Particle, Interphase, and Matrix or Binder indices. |
private static int |
nSliceCols
Number of Columns in Substructure Slice table. |
private int |
nSlicesTotal
Computed total number of Slices in Ply range. |
private int |
nValues
Number of values to enter. |
private static double |
ONE
The number one. |
private java.awt.Panel |
panelFrame
The Panel that contains the data to be displayed within a scrolling frame. |
private java.awt.Panel |
panelLoad1
Panel containing a set of input loads. |
private java.awt.Panel |
panelLoad2
Panel containing a set of computed loads. |
private java.awt.Panel |
panelLoadUser
Panel containing user's Substructure data table. |
private GuiIcanPlotFrame |
plotWindowFrame
Window Frame used for plotting. |
private double[] |
plyRate
Value of data in appropriate units. |
private double[] |
plyThickness
Values of Ply thickness for each Ply. |
private double[] |
plyThicknessCum
Values of Ply center positions for each Ply. |
private static java.lang.String[][] |
radialColTitle
Titles for columns in radial table. |
private java.awt.Component |
saveCompFocus
Component to set focus to. |
private java.awt.ScrollPane |
scrollFrame
The scrolling frame in which the data is displayed. |
private static java.lang.String[][] |
sliceColTitle
Titles for columns in Substructure Slice table. |
private double[] |
slicePosn
position of (center) of slice. |
private double[] |
sliceThck
Slice Thickness. |
private int |
thePly
Ply for which this void volume ratio applies. |
private java.awt.Label |
theTitle
Label containing the description/title of the ICAN/JAVA run. |
private VoidVolumeRatioItem |
theVVRI
Void Volume Ratio Item. |
private PlyListItem |
thisPly
Ply data for which this void volume ratio override applies. |
Fields inherited from class IcanGui.GuiWindow |
---|
frameTitle, whatAmI, windowFrame |
Constructor Summary | |
---|---|
GuiIcanVoidVolumeItems(java.lang.String material,
java.lang.String itemType,
int formType,
VoidVolumeRatioItem theVVRI)
Constructor creates window to display buttons and text entry fields. |
Method Summary | |
---|---|
private boolean |
acceptLoads()
Check whether data is valid. |
void |
actionPerformed(java.awt.event.ActionEvent evt)
Detect Action Events and process accordingly. |
private void |
addIcanDataLoad1()
Add a set of input loads for curve fit and interpolation. |
private void |
addIcanDataLoad2()
Add a set of computed loads. |
private void |
addIcanDataLoadC()
Add a set of Rate input loads for constant data. |
private boolean |
addIcanDataLoadRadial()
Add a set of input data per ply/material to vary the void volume ratio radially in the interphase. |
private boolean |
addIcanDataLoadUser()
Add a set of input data per slice. |
void |
changeGuiUnits()
Change units on GUI for this class. |
double |
computeLoad(double pos)
Compute void volume ratio override load value. |
private boolean |
computeLoads()
Compute void volume ratio override loads and fill in computed data table. |
void |
doArrow(int key)
Process arrow key to move focus. |
void |
focusGained(java.awt.event.FocusEvent evt)
Detects When the Focus is Gained in a TextField |
void |
focusLost(java.awt.event.FocusEvent evt)
Does Nothing |
java.lang.String |
getItemType()
Get data type: Void Volume Ratio. |
java.lang.String |
getName()
Get class name. |
private boolean |
getPlyThickness()
Fill in table of Ply thicknesses and Ply center locations and total the Ply thicknesses. |
int |
getType()
Get Formula type: Linear, Parabolic, Hyperbolic, etc. |
VoidVolumeRatioItem |
getVVRI()
Get Rate Load data. |
void |
helpMe()
Display help message. |
void |
helpMe(java.awt.Component target)
Display help message for a specified component. |
private void |
hideLastPlot()
Destroy plot if it is shown. |
private void |
initConstant()
Create a window to display buttons and text entry fields for constant data. |
protected void |
initMe()
Create a window to display buttons and text entry fields for formula types: linear, parabolic, and hyperbolic. |
protected void |
initRadial()
Create a window to display buttons and text entry fields for formula type: radial through interphase. |
private void |
initUser()
Create a window to display buttons and text entry fields for user-defined tabular data. |
void |
keyPressed(java.awt.event.KeyEvent evt)
Makes sure that keys are not processed twice. |
void |
keyReleased(java.awt.event.KeyEvent evt)
Detects when the following keys are released Tab, up arrow, down arrow, enter, shift+tab, alt+right, alt+left, F1 |
void |
keyTyped(java.awt.event.KeyEvent evt)
Does Nothing |
private boolean |
plotLoads()
Plot Rate loads. |
void |
presetData()
Set title and other ICAN/JAVA data. |
void |
remove()
Remove buttons and labels to destroy window. |
private void |
saveVVRI()
Save Rate Load data. |
private void |
setClearData()
Clear text data entry fields. |
void |
setCompFocus()
Set focus to some component. |
void |
setCompFocus(java.awt.Component cFocus)
Set focus in current class/frame. |
private boolean |
showDetail()
Display Void Volume Ratio Override computed data for each subslice. |
Methods inherited from class IcanGui.GuiWindow |
---|
addGB, askExit, askQuestion, showMessageInfo |
Methods inherited from class IcanGui.GuiHierarchy |
---|
changeAllGuiUnits, exitGui, getCurrent, getFrame, getFrame, getGuiWindowClass, getGuiWindowClass, hideMe, initHierarchy, setCurrent, setNextUp, showMe |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
private IcanDataSet data
private java.awt.Panel panelLoad1
private java.awt.Panel panelLoad2
private java.awt.Panel panelLoadUser
private java.awt.GridBagLayout gbl
private java.awt.GridBagConstraints gbc
private java.awt.Label theTitle
private java.lang.String material
private java.lang.String itemType
private VoidVolumeRatioItem theVVRI
private int thePly
private int iPlys
private PlyListItem thisPly
private java.lang.String itemTypeLabel
private int formType
private int nValues
private java.awt.TextField[] loadRate
private java.awt.TextField loadPos
private double[] dblRate
private double dblPos
private int nPlys
private double[] plyThickness
private double[] plyThicknessCum
private double[] plyRate
private java.awt.Label[] loadTablePly
private java.awt.Label[] loadTableThick
private java.awt.Label[] loadTableCum
private java.awt.Label[] loadTableRate
private java.awt.Label[] lblLoad
private int maxLbl
private int iLbl
private static final int iAccept
private static final int iCancel
private static final int iClear
private static final int iCompute
private static final int iDetail
private static final int iExit
private static final int iHelp
private static final int iPlot
private static final java.lang.String[] buttonLabels
private static final int nButtons
private java.awt.Button[] buttons
private java.awt.ScrollPane scrollFrame
private java.awt.Panel panelFrame
private java.awt.Label[] lblDescr
private static final java.lang.String[][] sliceColTitle
private static final int nSliceCols
private java.awt.Label[][] lblSliceCol
private java.awt.Label[] lblSliceTotals
private java.awt.Label[][] lblSliceVar
private int nSlicesTotal
private double[] slicePosn
private double[] sliceThck
private static final int iF
private static final int iI
private static final int iM
private static final int nset
private GuiIcanVoidVolumeItems.Madapter myMadapter
private double[] k
private double[] d
private double kvM
private static final java.lang.String[][] radialColTitle
private static final int nRadialCols
private static final int nData
private GuiIcanPlotFrame plotWindowFrame
private java.awt.Component saveCompFocus
private static final double HALF
private static final double ONE
private static final double EPSR
Constructor Detail |
---|
public GuiIcanVoidVolumeItems(java.lang.String material, java.lang.String itemType, int formType, VoidVolumeRatioItem theVVRI)
material
- Ply material (primary or secondary).itemType
- Item type: Void Volume Ratio.formType
- Type of loading: constant, linear, parabolic,
hyperbolic, or user-defined.theVVRI
- Void volume ratio item to use.Method Detail |
---|
protected void initMe()
initMe
in class GuiWindow
private void initConstant()
private void initUser()
protected void initRadial()
private boolean getPlyThickness()
private void addIcanDataLoad1()
private void addIcanDataLoadC()
private void addIcanDataLoad2()
private boolean addIcanDataLoadUser()
private boolean addIcanDataLoadRadial()
public void remove()
public void actionPerformed(java.awt.event.ActionEvent evt)
actionPerformed
in interface java.awt.event.ActionListener
evt
- Action event.public void focusLost(java.awt.event.FocusEvent evt)
focusLost
in interface java.awt.event.FocusListener
evt
- Focus event.public void focusGained(java.awt.event.FocusEvent evt)
focusGained
in interface java.awt.event.FocusListener
evt
- Focus event.private boolean showDetail()
public void keyTyped(java.awt.event.KeyEvent evt)
keyTyped
in interface java.awt.event.KeyListener
evt
- Key event.public void keyPressed(java.awt.event.KeyEvent evt)
keyPressed
in interface java.awt.event.KeyListener
evt
- Key event.public void keyReleased(java.awt.event.KeyEvent evt)
keyReleased
in interface java.awt.event.KeyListener
evt
- Key event.public void doArrow(int key)
key
- Arrow key entered.public void helpMe()
public void helpMe(java.awt.Component target)
helpMe
in class GuiWindow
target
- Component for which help is desired.private void setClearData()
public void presetData()
presetData
in class GuiWindow
public void setCompFocus()
setCompFocus
in class GuiHierarchy
public void setCompFocus(java.awt.Component cFocus)
setCompFocus
in class GuiHierarchy
cFocus
- Component to save to reset later.public java.lang.String getItemType()
public int getType()
public VoidVolumeRatioItem getVVRI()
private void saveVVRI()
private boolean acceptLoads()
private boolean computeLoads()
public double computeLoad(double pos)
pos
- Position.
private void hideLastPlot()
private boolean plotLoads()
public void changeGuiUnits()
changeGuiUnits
in class GuiWindow
public java.lang.String getName()
getName
in class GuiWindow
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |