Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## igeo
Class ITensileNet

    java.lang.Object
      igeo.ITensileNet

    public class ITensileNet

extends java.lang.Object

Class to create tensile network which consists of IParticle and ITensionLine.

Version:
  0.7.0.0;
Author:
  Satoru Sugihara

Nested Class Summary
`static class` | `ITensileNet.IParticleOnCurveComparator`

Field Summary
`static boolean` | `constantTension` boolean switch to make tension (of ITensionLine) constant not depending on the distance of two points
`static boolean` | `deleteInputLine` boolean switch to delete input lines
`static java.lang.String` | `equalizerLayer`
`static double` | `equalizerTension` strength of tension to equalize spacing on the same rail curves
`static java.awt.Color` | `fixedPointColor` color of fixed node points
`static java.lang.String` | `fixedPointLayer`
`static boolean` | `fixOpenLinePoint` boolean switch to fix open end points of lines which are not connected any other line
`static boolean` | `fixPointNotOnRail` in case with rail curves, boolean switch to fix points which are not on any rail curves
`static boolean` | `fixPointOnRailEnd` in case with rail curves, boolean switch to fix points which are on end points of rail curves
`static double` | `friction` friction of node points (of IParticleAgent)
`java.util.ArrayList<ITensionI>` | `links`
`java.util.ArrayList<IParticleI>` | `nodes`
`static double` | `onRailTension` strength of tension between points on the same rail curves
`static java.lang.Class<? extends IParticleI>` | `particleClass` class for a custom particle class
`static java.lang.reflect.Constructor<? extends IParticleI>` | `particleConstructor` constructor for a custom particle class
`static java.lang.Class<?>[]` | `particleConstructorParameters` parameters of constructor for a custom particle class
`static java.lang.Class<? extends IParticleOnCurveI>` | `particleOnCurveClass` class for a custom particle on curve class
`static java.lang.reflect.Constructor<? extends IParticleOnCurveI>` | `particleOnCurveConstructor` constructor for a custom particle on curve class
`static java.lang.Class<?>[]` | `particleOnCurveConstructorParameters` parameters of constructor for a custom particle on curve class
`static java.awt.Color` | `pointColor` color of node points
`static java.lang.String` | `pointLayer`
`static java.awt.Color` | `railPointColor` color of node points on rail curve
`static double` | `railTolerance` tolerance to check which points are on rail
`static boolean` | `removeBranchStraightener` remove straighteners whose two points are shared and branching.
`static boolean` | `spacingEqualizer` boolean switch to put spacing equalizer force on the same rail curves
`static boolean` | `straightener` boolean switch to put straightening force on connected lines
`static java.awt.Color` | `straightenerColor` color of straightener curve
`static java.lang.String` | `straightenerLayer`
`static double` | `straightenerTension` strength of tension to straighten lines
`static double` | `straightenerThresholdAngle` if the connected line is less than this angle, it put straightening force on those lines
`static double` | `tension` strength of tension (of ITensionLine)
`static java.lang.Class<? extends ITensionI>` | `tensionClass` class for a custom tension class
`static java.lang.reflect.Constructor<? extends ITensionI>` | `tensionConstructor` constructor for a custom tension class
`static java.lang.Class<?>[]` | `tensionConstructorParameters` parameters of constructor for a custom tension class
`static boolean` | `tensionOnSameRail` in case with rail curves, boolean switch to put tension between points on the same rail curve
`static double` | `tolerance` tolerance to check which points are identical and which lines are connected

Constructor Summary
`ITensileNet()`
`ITensileNet(java.util.ArrayList<ITensionI> links, java.util.ArrayList<IParticleI> nodes)`

Method Summary
`static void` | `constantTension(boolean c)` boolean switch to make tension (of ITensionLine) constant not depending on the distance of two points
`static ITensileNet` | `create(ICurveI[] railCurves, ICurveI[] linkLines, ICurveI[] fixedLines, IVecI[] fixedPoints)` create a network of tension line on rail curve.
`static ITensileNet` | `create(ICurveI[] railCurves, ICurveI[] linkLines, IVecI[] fixedPoints)` create a network of tension line on rail curve.
`static ITensileNet` | `create(ICurveI[] linkLines, IVecI[] fixedPoints)` create a network of tension line.
`static IParticleOnCurveI` | `createParticleOnClosestCurve(ICurveI[] railCurves, IVec pos, double closenessTolerance, double uTolerance)` find the closest curve to the point and put particle on the curve.
`static IParticleOnCurveI` | `createParticleOnCurve(ICurveI curve, IVec pos, double closenessTolerance, double uTolerance)` put particle on the curve.
`static void` | `deleteInputLine(boolean f)` boolean switch to delete input lines
`static void` | `disableConstantTension()`
`static void` | `disableDeleteInputLine()` boolean switch to fix open end points of lines which are not connected any other line
`static void` | `disableFixOpenLinePoint()` boolean switch to fix open end points of lines which are not connected any other line
`static void` | `disableFixPointNotOnRail(boolean f)` in case with rail curves, boolean switch to fix points which are not on any rail curves
`static void` | `disableFixPointOnRailEnd()` in case with rail curves, boolean switch to fix points which are on end points of rail curves
`static void` | `disableRemoveBranchStraightener()` remove straighteners whose two points are shared and branching.
`static void` | `disableSpacingEqualizer()` boolean switch to put spacing equalizer force on the same rail curves
`static void` | `disableStraightener()` boolean switch to put straightening force on connected lines
`static void` | `disableTensionOnSameRail()` in case with rail curves, boolean switch to put tension between points on the same rail curve
`static void` | `enableConstantTension()`
`static void` | `enableDeleteInputLine()` boolean switch to fix open end points of lines which are not connected any other line
`static void` | `enableFixOpenLinePoint()` boolean switch to fix open end points of lines which are not connected any other line
`static void` | `enableFixPointNotOnRail(boolean f)` in case with rail curves, boolean switch to fix points which are not on any rail curves
`static void` | `enableFixPointOnRailEnd()` in case with rail curves, boolean switch to fix points which are on end points of rail curves
`static void` | `enableRemoveBranchStraightener()` remove straighteners whose two points are shared and branching.
`static void` | `enableSpacingEqualizer()` boolean switch to put spacing equalizer force on the same rail curves
`static void` | `enableStraightener()` boolean switch to put straightening force on connected lines
`static void` | `enableTensionOnSameRail()` in case with rail curves, boolean switch to put tension between points on the same rail curve
`static void` | `equalizerLayer(java.lang.String l)`
`static void` | `equalizerTension(double t)` strength of tension to equalize spacing on the same rail curves
`static ICurveI` | `findClosestCurve(ICurveI[] railCurves, IVec pos, int searchResolution)` find the closest curve to the point pos out of railsCurves.
`static void` | `fixedPointColor(java.awt.Color c)` color of fixed node points
`static void` | `fixedPointLayer(java.lang.String l)`
`static void` | `fixOpenLinePoint(boolean f)` boolean switch to fix open end points of lines which are not connected any other line
`static void` | `fixPointNotOnRail(boolean f)` in case with rail curves, boolean switch to fix points which are not on any rail curves
`static void` | `fixPointOnRailEnd(boolean f)` in case with rail curves, boolean switch to fix points which are on end points of rail curves
`static void` | `fric(double f)` alias of frction(double)
`static void` | `friction(double f)` friction of node points (of IParticleAgent)
`static IParticleI` | `getParticleInstance(IVec pt)`
`static IParticleOnCurveI` | `getParticleOnCurveInstance(ICurveI curve, double upos, IVec pos)`
`static ITensionI` | `getTensionInstance(IParticleI pt1, IParticleI pt2)`
`static void` | `onRailTension(double t)` strength of tension between points on the same rail curves
`static void` | `particleClass(java.lang.Class<? extends IParticleI> cls)` class for a custom particle class
`static void` | `particleConstructor(java.lang.reflect.Constructor<? extends IParticleI> c)` constructor for a custom particle class
`static void` | `particleConstructorParameters(java.lang.Class<?>[] p)` parameters of constructor for a custom particle class
`static void` | `particleOnCurveClass(java.lang.Class<? extends IParticleOnCurveI> cls)` class for a custom particle on curve class
`static void` | `particleOnCurveConstructor(java.lang.reflect.Constructor<? extends IParticleOnCurveI> c)` constructor for a custom particle on curve class
`static void` | `particleOnCurveConstructorParameters(java.lang.Class<?>[] p)` parameters of constructor for a custom particle on curve class
`static void` | `pointColor(java.awt.Color c)` color of node points
`static void` | `pointLayer(java.lang.String l)`
`static void` | `railPointColor(java.awt.Color c)` color of node points on rail curve
`static void` | `railTolerance(double t)` tolerance to check which points are identical and which lines are connected
`static void` | `removeBranchStraightener(boolean f)` remove straighteners whose two points are shared and branching.
`static boolean` | `searchParticleConstructor(java.lang.Class<? extends IParticleI> pclass)` set constructor of particle class.
`static boolean` | `searchParticleOnCurveConstructor(java.lang.Class<? extends IParticleOnCurveI> pclass)` set constructor of particle class.
`static boolean` | `searchTensionConstructor(java.lang.Class<? extends ITensionI> tclass)` set constructor of tension class.
`static void` | `spacingEqualizer(boolean f)` boolean switch to put spacing equalizer force on the same rail curves
`static void` | `straightener(boolean s)` boolean switch to put straightening force on connected lines
`static void` | `straightenerColor(java.awt.Color c)` color of straightener curve
`static void` | `straightenerLayer(java.lang.String l)`
`static void` | `straightenerTension(double t)` strength of tension to straighten lines
`static void` | `straightenerThresholdAngle(double angle)` if the connected line is less than this angle, it put straightening force on those lines
`static void` | `tension(double t)` strength of tension (of ITensionLine)
`static void` | `tensionClass(java.lang.Class<? extends ITensionI> cls)` class for a custom tension class
`static void` | `tensionConstructor(java.lang.reflect.Constructor<? extends ITensionI> c)` constructor for a custom tension class
`static void` | `tensionConstructorParameters(java.lang.Class<?>[] p)` parameters of constructor for a custom tension class
`static void` | `tensionOnSameRail(boolean f)` in case with rail curves, boolean switch to put tension between points on the same rail curve
`static void` | `tolerance(double t)` tolerance to check which points are identical and which lines are connected

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### friction

    public static double friction

  friction of node points (of IParticleAgent)

### tension

    public static double tension

  strength of tension (of ITensionLine)

### onRailTension

    public static double onRailTension

  strength of tension between points on the same rail curves

### straightenerTension

    public static double straightenerTension

  strength of tension to straighten lines

### equalizerTension

    public static double equalizerTension

  strength of tension to equalize spacing on the same rail curves

### constantTension

    public static boolean constantTension

  boolean switch to make tension (of ITensionLine) constant not depending on the distance of two points

### tolerance

    public static double tolerance

  tolerance to check which points are identical and which lines are connected

### railTolerance

    public static double railTolerance

  tolerance to check which points are on rail

### pointColor

    public static java.awt.Color pointColor

  color of node points

### railPointColor

    public static java.awt.Color railPointColor

  color of node points on rail curve

### fixedPointColor

    public static java.awt.Color fixedPointColor

  color of fixed node points

### straightenerColor

    public static java.awt.Color straightenerColor

  color of straightener curve

### pointLayer

    public static java.lang.String pointLayer

### fixedPointLayer

    public static java.lang.String fixedPointLayer

### straightenerLayer

    public static java.lang.String straightenerLayer

### equalizerLayer

    public static java.lang.String equalizerLayer

### fixOpenLinePoint

    public static boolean fixOpenLinePoint

  boolean switch to fix open end points of lines which are not connected any other line

### deleteInputLine

    public static boolean deleteInputLine

  boolean switch to delete input lines

### tensionOnSameRail

    public static boolean tensionOnSameRail

  in case with rail curves, boolean switch to put tension between points on the same rail curve

### fixPointOnRailEnd

    public static boolean fixPointOnRailEnd

  in case with rail curves, boolean switch to fix points which are on end points of rail curves

### fixPointNotOnRail

    public static boolean fixPointNotOnRail

  in case with rail curves, boolean switch to fix points which are not on any rail curves

### straightener

    public static boolean straightener

  boolean switch to put straightening force on connected lines

### straightenerThresholdAngle

    public static double straightenerThresholdAngle

  if the connected line is less than this angle, it put straightening force on those lines

### removeBranchStraightener

    public static boolean removeBranchStraightener

  remove straighteners whose two points are shared and branching.

### spacingEqualizer

    public static boolean spacingEqualizer

  boolean switch to put spacing equalizer force on the same rail curves

### particleClass

    public static java.lang.Class<? extends IParticleI> particleClass

  class for a custom particle class

### tensionClass

    public static java.lang.Class<? extends ITensionI> tensionClass

  class for a custom tension class

### particleOnCurveClass

    public static java.lang.Class<? extends IParticleOnCurveI> particleOnCurveClass

  class for a custom particle on curve class

### particleConstructor

    public static java.lang.reflect.Constructor<? extends IParticleI> particleConstructor

  constructor for a custom particle class

### particleConstructorParameters

    public static java.lang.Class<?>[] particleConstructorParameters

  parameters of constructor for a custom particle class

### tensionConstructor

    public static java.lang.reflect.Constructor<? extends ITensionI> tensionConstructor

  constructor for a custom tension class

### tensionConstructorParameters

    public static java.lang.Class<?>[] tensionConstructorParameters

  parameters of constructor for a custom tension class

### particleOnCurveConstructor

    public static java.lang.reflect.Constructor<? extends IParticleOnCurveI> particleOnCurveConstructor

  constructor for a custom particle on curve class

### particleOnCurveConstructorParameters

    public static java.lang.Class<?>[] particleOnCurveConstructorParameters

  parameters of constructor for a custom particle on curve class

### links

    public java.util.ArrayList<ITensionI> links

### nodes

    public java.util.ArrayList<IParticleI> nodes

Constructor Detail

### ITensileNet

    public ITensileNet()

### ITensileNet

    public ITensileNet(java.util.ArrayList<ITensionI> links,
                       java.util.ArrayList<IParticleI> nodes)

Method Detail

### friction

    public static void friction(double f)

  friction of node points (of IParticleAgent)

### fric

    public static void fric(double f)

  alias of frction(double)

### tension

    public static void tension(double t)

  strength of tension (of ITensionLine)

### onRailTension

    public static void onRailTension(double t)

  strength of tension between points on the same rail curves

### straightenerTension

    public static void straightenerTension(double t)

  strength of tension to straighten lines

### equalizerTension

    public static void equalizerTension(double t)

  strength of tension to equalize spacing on the same rail curves

### constantTension

    public static void constantTension(boolean c)

  boolean switch to make tension (of ITensionLine) constant not depending on the distance of two points

### enableConstantTension

    public static void enableConstantTension()

### disableConstantTension

    public static void disableConstantTension()

### tolerance

    public static void tolerance(double t)

  tolerance to check which points are identical and which lines are connected

### railTolerance

    public static void railTolerance(double t)

  tolerance to check which points are identical and which lines are connected

### pointColor

    public static void pointColor(java.awt.Color c)

  color of node points

### railPointColor

    public static void railPointColor(java.awt.Color c)

  color of node points on rail curve

### fixedPointColor

    public static void fixedPointColor(java.awt.Color c)

  color of fixed node points

### straightenerColor

    public static void straightenerColor(java.awt.Color c)

  color of straightener curve

### pointLayer

    public static void pointLayer(java.lang.String l)

### fixedPointLayer

    public static void fixedPointLayer(java.lang.String l)

### straightenerLayer

    public static void straightenerLayer(java.lang.String l)

### equalizerLayer

    public static void equalizerLayer(java.lang.String l)

### fixOpenLinePoint

    public static void fixOpenLinePoint(boolean f)

  boolean switch to fix open end points of lines which are not connected any other line

### enableFixOpenLinePoint

    public static void enableFixOpenLinePoint()

  boolean switch to fix open end points of lines which are not connected any other line

### disableFixOpenLinePoint

    public static void disableFixOpenLinePoint()

  boolean switch to fix open end points of lines which are not connected any other line

### deleteInputLine

    public static void deleteInputLine(boolean f)

  boolean switch to delete input lines

### enableDeleteInputLine

    public static void enableDeleteInputLine()

  boolean switch to fix open end points of lines which are not connected any other line

### disableDeleteInputLine

    public static void disableDeleteInputLine()

  boolean switch to fix open end points of lines which are not connected any other line

### tensionOnSameRail

    public static void tensionOnSameRail(boolean f)

  in case with rail curves, boolean switch to put tension between points on the same rail curve

### enableTensionOnSameRail

    public static void enableTensionOnSameRail()

  in case with rail curves, boolean switch to put tension between points on the same rail curve

### disableTensionOnSameRail

    public static void disableTensionOnSameRail()

  in case with rail curves, boolean switch to put tension between points on the same rail curve

### fixPointOnRailEnd

    public static void fixPointOnRailEnd(boolean f)

  in case with rail curves, boolean switch to fix points which are on end points of rail curves

### enableFixPointOnRailEnd

    public static void enableFixPointOnRailEnd()

  in case with rail curves, boolean switch to fix points which are on end points of rail curves

### disableFixPointOnRailEnd

    public static void disableFixPointOnRailEnd()

  in case with rail curves, boolean switch to fix points which are on end points of rail curves

### fixPointNotOnRail

    public static void fixPointNotOnRail(boolean f)

  in case with rail curves, boolean switch to fix points which are not on any rail curves

### enableFixPointNotOnRail

    public static void enableFixPointNotOnRail(boolean f)

  in case with rail curves, boolean switch to fix points which are not on any rail curves

### disableFixPointNotOnRail

    public static void disableFixPointNotOnRail(boolean f)

  in case with rail curves, boolean switch to fix points which are not on any rail curves

### straightener

    public static void straightener(boolean s)

  boolean switch to put straightening force on connected lines

### enableStraightener

    public static void enableStraightener()

  boolean switch to put straightening force on connected lines

### disableStraightener

    public static void disableStraightener()

  boolean switch to put straightening force on connected lines

### straightenerThresholdAngle

    public static void straightenerThresholdAngle(double angle)

  if the connected line is less than this angle, it put straightening force on those lines

### removeBranchStraightener

    public static void removeBranchStraightener(boolean f)

  remove straighteners whose two points are shared and branching.

### enableRemoveBranchStraightener

    public static void enableRemoveBranchStraightener()

  remove straighteners whose two points are shared and branching.

### disableRemoveBranchStraightener

    public static void disableRemoveBranchStraightener()

  remove straighteners whose two points are shared and branching.

### spacingEqualizer

    public static void spacingEqualizer(boolean f)

  boolean switch to put spacing equalizer force on the same rail curves

### enableSpacingEqualizer

    public static void enableSpacingEqualizer()

  boolean switch to put spacing equalizer force on the same rail curves

### disableSpacingEqualizer

    public static void disableSpacingEqualizer()

  boolean switch to put spacing equalizer force on the same rail curves

### particleClass

    public static void particleClass(java.lang.Class<? extends IParticleI> cls)

  class for a custom particle class

### tensionClass

    public static void tensionClass(java.lang.Class<? extends ITensionI> cls)

  class for a custom tension class

### particleOnCurveClass

    public static void particleOnCurveClass(java.lang.Class<? extends IParticleOnCurveI> cls)

  class for a custom particle on curve class

### particleConstructor

    public static void particleConstructor(java.lang.reflect.Constructor<? extends IParticleI> c)

  constructor for a custom particle class

### particleConstructorParameters

    public static void particleConstructorParameters(java.lang.Class<?>[] p)

  parameters of constructor for a custom particle class

### tensionConstructor

    public static void tensionConstructor(java.lang.reflect.Constructor<? extends ITensionI> c)

  constructor for a custom tension class

### tensionConstructorParameters

    public static void tensionConstructorParameters(java.lang.Class<?>[] p)

  parameters of constructor for a custom tension class

### particleOnCurveConstructor

    public static void particleOnCurveConstructor(java.lang.reflect.Constructor<? extends IParticleOnCurveI> c)

  constructor for a custom particle on curve class

### particleOnCurveConstructorParameters

    public static void particleOnCurveConstructorParameters(java.lang.Class<?>[] p)

  parameters of constructor for a custom particle on curve class

### create

    public static ITensileNet create(ICurveI[] linkLines,
                                     IVecI[] fixedPoints)

  create a network of tension line.

  Parameters:
    `linkLines` - lines to create tension line. if it's curve, it's simplified to line.
    `fixedPoints` - if those points are on the end point of linkLines, those end points of tension line are fixed.

### searchParticleConstructor

    public static boolean searchParticleConstructor(java.lang.Class<? extends IParticleI> pclass)

  set constructor of particle class. if success returns true

### searchTensionConstructor

    public static boolean searchTensionConstructor(java.lang.Class<? extends ITensionI> tclass)

  set constructor of tension class. if success returns true

### searchParticleOnCurveConstructor

    public static boolean searchParticleOnCurveConstructor(java.lang.Class<? extends IParticleOnCurveI> pclass)

  set constructor of particle class. if success returns true

### getParticleInstance

    public static IParticleI getParticleInstance(IVec pt)

### getTensionInstance

    public static ITensionI getTensionInstance(IParticleI pt1,
                                               IParticleI pt2)

### getParticleOnCurveInstance

    public static IParticleOnCurveI getParticleOnCurveInstance(ICurveI curve,
                                                               double upos,
                                                               IVec pos)

### create

    public static ITensileNet create(ICurveI[] railCurves,
                                     ICurveI[] linkLines,
                                     IVecI[] fixedPoints)

  create a network of tension line on rail curve.

  Parameters:
    `railCurves` - curves on which all the points sit.
    `linkLines` - lines to create tension line. if it's curve, it's simplified to line.
    `fixedPoints` - if those points are on the end point of linkLines, those end points of tension line are fixed. this can be null.

### create

    public static ITensileNet create(ICurveI[] railCurves,
                                     ICurveI[] linkLines,
                                     ICurveI[] fixedLines,
                                     IVecI[] fixedPoints)

  create a network of tension line on rail curve.

  Parameters:
    `railCurves` - curves on which all the points sit.
    `linkLines` - lines to create tension line. if it's curve, it's simplified to line.
    `fixedLines` - end points of fixedLines are added to fixedPoints.
    `fixedPoints` - if those points are on the end point of linkLines, those end points of tension line are fixed.

### findClosestCurve

    public static ICurveI findClosestCurve(ICurveI[] railCurves,
                                           IVec pos,
                                           int searchResolution)

  find the closest curve to the point pos out of railsCurves.

  Parameters:
    `railCurves` - target curves to search
    `pos` - point to measure the distance to check how close
    `searchResolution` - resolution per a curve specifying how many points per a curve to be checked

### createParticleOnClosestCurve

    public static IParticleOnCurveI createParticleOnClosestCurve(ICurveI[] railCurves,
                                                                 IVec pos,
                                                                 double closenessTolerance,
                                                                 double uTolerance)

  find the closest curve to the point and put particle on the curve. if the curve is not close enough within closenessTolerance, particle is not created.

  Parameters:
    `railCurves` - target curves to search
    `pos` - point to measure the distance to check how close
    `closenessTolerance` - tolerance to determine if the point is on the curve or not
    `uTolerance` - tolerance in u parameter to specify how precise u parameter of particle shoould be

### createParticleOnCurve

    public static IParticleOnCurveI createParticleOnCurve(ICurveI curve,
                                                          IVec pos,
                                                          double closenessTolerance,
                                                          double uTolerance)

  put particle on the curve. if the curve is not close enough within closenessTolerance, particle is not created.

  Parameters:
    `curve` - target curves to be on.
    `pos` - point to specify location of particle on the curve and this point is embed inside IParticleOnCurve and controlled by it.
    `closenessTolerance` - tolerance to determine if the point is on the curve or not. if this is negative, it will create any closest particle to the point even if it's far.
    `uTolerance` - tolerance in u parameter to specify how precise u parameter of particle shoould be

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD