fhm.edu.fem.calc.objects
Class MembraneCircle

java.lang.Object
  extended by fhm.edu.fem.calc.objects.MembraneCircle

public class MembraneCircle
extends java.lang.Object

Class Description: This class acts as membrane circle in case of FEM5. It takes care of calculating the point coordinates out of the polar-coordinates and makes sure that the elements and borders are also created correctly.

Author:
Thomas Woellert (thomas@woellert.net), Stefan Weissbach (weissbst@gmx.de)

Field Summary
protected  boolean alreadyCalculated
           
protected  Node centerNode
           
protected static Logger localLogger
           
protected  double membraneCircleCenterX
           
protected  double membraneCircleCenterY
           
protected  double membraneCircleRadius1
           
protected  double membraneCircleRadius2
           
protected  int membraneCircleSections
           
 
Constructor Summary
MembraneCircle(FEMManager femManager)
          Construct a new membrane circle from the data in the FEMManager
 
Method Summary
 void calculateAll()
          Calculate the nodes based on the settings
protected  void calculatePseudoNodesForQuadrats()
          Calculate the Pseudo Nodes which lay between two other nodes.
protected  void calculatePseudoNodesForTriangles()
          Calculate the Pseudo Nodes which lay between two other nodes.
protected  void calculateTriangles()
          Calculate all triangles.
 double getAngle(int id)
          Get the angle based on the number of sections with the specific ID
 Node getCenterNode()
           
 double getCenterX()
           
 double getCenterY()
           
 double getRadius1()
           
 double getRadius2()
           
 int getSections()
           
protected  NodeList transformNodeListFromQuadratToTriangle(NodeList nodeList)
          Adjust the Order of the node list
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

alreadyCalculated

protected boolean alreadyCalculated

centerNode

protected Node centerNode

localLogger

protected static Logger localLogger

membraneCircleCenterX

protected double membraneCircleCenterX

membraneCircleCenterY

protected double membraneCircleCenterY

membraneCircleRadius1

protected double membraneCircleRadius1

membraneCircleRadius2

protected double membraneCircleRadius2

membraneCircleSections

protected int membraneCircleSections
Constructor Detail

MembraneCircle

public MembraneCircle(FEMManager femManager)
Construct a new membrane circle from the data in the FEMManager

Parameters:
femManager -
Method Detail

calculateAll

public void calculateAll()
Calculate the nodes based on the settings


calculatePseudoNodesForQuadrats

protected void calculatePseudoNodesForQuadrats()
Calculate the Pseudo Nodes which lay between two other nodes. These are not the same as in the first exercises but are there for storing the results we get. They do not have any real coordinates.


calculatePseudoNodesForTriangles

protected void calculatePseudoNodesForTriangles()
Calculate the Pseudo Nodes which lay between two other nodes. These are not the same as in the first exercises but are there for storing the results we get. They do not have any real coordinates.


calculateTriangles

protected void calculateTriangles()
Calculate all triangles. These also occupy the region of the quadrats


getAngle

public double getAngle(int id)
                throws java.lang.IndexOutOfBoundsException
Get the angle based on the number of sections with the specific ID

Parameters:
id, - starting at 1, till number of sections
Returns:
Throws:
java.lang.IndexOutOfBoundsException

getCenterNode

public Node getCenterNode()
Returns:
Returns the centerNode.

getCenterX

public double getCenterX()
Returns:
Returns the membraneCircleCenterX.

getCenterY

public double getCenterY()
Returns:
Returns the membraneCircleCenterY.

getRadius1

public double getRadius1()
Returns:
Returns the membraneCircleRadius1.

getRadius2

public double getRadius2()
Returns:
Returns the membraneCircleRadius2.

getSections

public int getSections()
Returns:
Returns the membraneCircleSections.

transformNodeListFromQuadratToTriangle

protected NodeList transformNodeListFromQuadratToTriangle(NodeList nodeList)
Adjust the Order of the node list

Parameters:
nodeList, - the node list to adjust (it is not changed)
Returns:
the new adjusted node list