igeo
Class ITensileNet

java.lang.Object
  extended by 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 boolean deleteInputPoint
          boolean switch to delete input fix points
static java.lang.String equalizerLayer
          layer to put equalizer lines
static double equalizerTension
          strength of tension to equalize spacing on the same rail curves
static boolean fixAtRailEnd
          in case with rail curves, boolean switch to fix points which are on end points of rail curves
static java.awt.Color fixedPointColor
          color of fixed node points
static java.lang.String fixedPointLayer
          layer to put fixed node points
static boolean fixOpenEnd
          boolean switch to fix open end points of lines which are not connected any other line
static boolean fixPointOffRail
          in case with rail curves, boolean switch to fix points which are not on any 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
          layer to put node points
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
          layer to put straighterner lines
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.awt.Color tensionColor
          color of tension curve; default (null) is the original color of an input geometry
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 java.lang.String tensionLayer
          layer to put tension lines; default (when null) is to put the original layer of an input geometry
static boolean tensionOnRail
          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 deleteInputPoint(boolean f)
          boolean switch to delete input fix points
static void disableConstantTension()
           
static void disableDeleteInputLine()
          boolean switch to delete input lines
static void disableDeleteInputPoint()
          boolean switch to delete input fix points
static void disableFixAtRailEnd()
          in case with rail curves, boolean switch to fix points which are on end points of rail curves
static void disableFixOpenEnd()
          boolean switch to fix open end points of lines which are not connected any other line
static void disableFixPointOffRail(boolean f)
          in case with rail curves, boolean switch to fix points which are not on any 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 disableTensionOnRail()
          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 delete input lines
static void enableDeleteInputPoint()
          boolean switch to delete input fix points
static void enableFixAtRailEnd()
          in case with rail curves, boolean switch to fix points which are on end points of rail curves
static void enableFixOpenEnd()
          boolean switch to fix open end points of lines which are not connected any other line
static void enableFixPointOffRail(boolean f)
          in case with rail curves, boolean switch to fix points which are not on any 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 enableTensionOnRail()
          in case with rail curves, boolean switch to put tension between points on the same rail curve
static void equalizerLayer(java.lang.String l)
          layer to put equalizer lines
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 fixAtRailEnd(boolean f)
          in case with rail curves, boolean switch to fix points which are on end points of rail curves
static void fixedPointColor(java.awt.Color c)
          color of fixed node points
static void fixedPointColor(float gray)
          color of fixed node points
static void fixedPointColor(float gray, float a)
          color of fixed node points
static void fixedPointColor(float r, float g, float b)
          color of fixed node points
static void fixedPointColor(float r, float g, float b, float a)
          color of fixed node points
static void fixedPointColor(int gray)
          color of fixed node points
static void fixedPointColor(int gray, int a)
          color of fixed node points
static void fixedPointColor(int r, int g, int b)
          color of fixed node points
static void fixedPointColor(int r, int g, int b, int a)
          color of fixed node points
static void fixedPointLayer(java.lang.String l)
          layer to put fixed node points
static void fixOpenEnd(boolean f)
          boolean switch to fix open end points of lines which are not connected any other line
static void fixPointOffRail(boolean f)
          in case with rail curves, boolean switch to fix points which are not on any 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 pointColor(float gray)
          color of node points
static void pointColor(float gray, float a)
          color of node points
static void pointColor(float r, float g, float b)
          color of node points
static void pointColor(float r, float g, float b, float a)
          color of node points
static void pointColor(int gray)
          color of node points
static void pointColor(int gray, int a)
          color of node points
static void pointColor(int r, int g, int b)
          color of node points
static void pointColor(int r, int g, int b, int a)
          color of node points
static void pointLayer(java.lang.String l)
          layer to put node points
static void railPointColor(java.awt.Color c)
          color of node points on rail curve
static void railPointColor(float gray)
          color of node points on rail curve
static void railPointColor(float gray, float a)
          color of node points on rail curve
static void railPointColor(float r, float g, float b)
          color of node points on rail curve
static void railPointColor(float r, float g, float b, float a)
          color of node points on rail curve
static void railPointColor(int gray)
          color of node points on rail curve
static void railPointColor(int gray, int a)
          color of node points on rail curve
static void railPointColor(int r, int g, int b)
          color of node points on rail curve
static void railPointColor(int r, int g, int b, int a)
          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 straightenerColor(float gray)
          color of straightener curve
static void straightenerColor(float gray, float a)
          color of straightener curve
static void straightenerColor(float r, float g, float b)
          color of straightener curve
static void straightenerColor(float r, float g, float b, float a)
          color of straightener curve
static void straightenerColor(int gray)
          color of straightener curve
static void straightenerColor(int gray, int a)
          color of straightener curve
static void straightenerColor(int r, int g, int b)
          color of straightener curve
static void straightenerColor(int r, int g, int b, int a)
          color of straightener curve
static void straightenerLayer(java.lang.String l)
          layer to put straighterner lines
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 tensionColor(java.awt.Color c)
          color of tension curve; default is the original color of an input geometry
static void tensionColor(float gray)
          color of tension curve; default is the original color of an input geometry
static void tensionColor(float gray, float a)
          color of tension curve; default is the original color of an input geometry
static void tensionColor(float r, float g, float b)
          color of tension curve; default is the original color of an input geometry
static void tensionColor(float r, float g, float b, float a)
          color of tension curve; default is the original color of an input geometry
static void tensionColor(int gray)
          color of tension curve; default is the original color of an input geometry
static void tensionColor(int gray, int a)
          color of tension curve; default is the original color of an input geometry
static void tensionColor(int r, int g, int b)
          color of tension curve; default is the original color of an input geometry
static void tensionColor(int r, int g, int b, int a)
          color of tension curve; default is the original color of an input geometry
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 tensionLayer(java.lang.String l)
          layer to put tension lines; default (when null) is to put the original layer of an input geometry
static void tensionOnRail(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


tensionColor

public static java.awt.Color tensionColor
color of tension curve; default (null) is the original color of an input geometry


pointLayer

public static java.lang.String pointLayer
layer to put node points


fixedPointLayer

public static java.lang.String fixedPointLayer
layer to put fixed node points


straightenerLayer

public static java.lang.String straightenerLayer
layer to put straighterner lines


equalizerLayer

public static java.lang.String equalizerLayer
layer to put equalizer lines


tensionLayer

public static java.lang.String tensionLayer
layer to put tension lines; default (when null) is to put the original layer of an input geometry


fixOpenEnd

public static boolean fixOpenEnd
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


deleteInputPoint

public static boolean deleteInputPoint
boolean switch to delete input fix points


tensionOnRail

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


fixAtRailEnd

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


fixPointOffRail

public static boolean fixPointOffRail
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


pointColor

public static void pointColor(int r,
                              int g,
                              int b,
                              int a)
color of node points


pointColor

public static void pointColor(int r,
                              int g,
                              int b)
color of node points


pointColor

public static void pointColor(int gray,
                              int a)
color of node points


pointColor

public static void pointColor(int gray)
color of node points


pointColor

public static void pointColor(float r,
                              float g,
                              float b,
                              float a)
color of node points


pointColor

public static void pointColor(float r,
                              float g,
                              float b)
color of node points


pointColor

public static void pointColor(float gray,
                              float a)
color of node points


pointColor

public static void pointColor(float gray)
color of node points


railPointColor

public static void railPointColor(java.awt.Color c)
color of node points on rail curve


railPointColor

public static void railPointColor(int r,
                                  int g,
                                  int b,
                                  int a)
color of node points on rail curve


railPointColor

public static void railPointColor(int r,
                                  int g,
                                  int b)
color of node points on rail curve


railPointColor

public static void railPointColor(int gray,
                                  int a)
color of node points on rail curve


railPointColor

public static void railPointColor(int gray)
color of node points on rail curve


railPointColor

public static void railPointColor(float r,
                                  float g,
                                  float b,
                                  float a)
color of node points on rail curve


railPointColor

public static void railPointColor(float r,
                                  float g,
                                  float b)
color of node points on rail curve


railPointColor

public static void railPointColor(float gray,
                                  float a)
color of node points on rail curve


railPointColor

public static void railPointColor(float gray)
color of node points on rail curve


fixedPointColor

public static void fixedPointColor(java.awt.Color c)
color of fixed node points


fixedPointColor

public static void fixedPointColor(int r,
                                   int g,
                                   int b,
                                   int a)
color of fixed node points


fixedPointColor

public static void fixedPointColor(int r,
                                   int g,
                                   int b)
color of fixed node points


fixedPointColor

public static void fixedPointColor(int gray,
                                   int a)
color of fixed node points


fixedPointColor

public static void fixedPointColor(int gray)
color of fixed node points


fixedPointColor

public static void fixedPointColor(float r,
                                   float g,
                                   float b,
                                   float a)
color of fixed node points


fixedPointColor

public static void fixedPointColor(float r,
                                   float g,
                                   float b)
color of fixed node points


fixedPointColor

public static void fixedPointColor(float gray,
                                   float a)
color of fixed node points


fixedPointColor

public static void fixedPointColor(float gray)
color of fixed node points


straightenerColor

public static void straightenerColor(java.awt.Color c)
color of straightener curve


straightenerColor

public static void straightenerColor(int r,
                                     int g,
                                     int b,
                                     int a)
color of straightener curve


straightenerColor

public static void straightenerColor(int r,
                                     int g,
                                     int b)
color of straightener curve


straightenerColor

public static void straightenerColor(int gray,
                                     int a)
color of straightener curve


straightenerColor

public static void straightenerColor(int gray)
color of straightener curve


straightenerColor

public static void straightenerColor(float r,
                                     float g,
                                     float b,
                                     float a)
color of straightener curve


straightenerColor

public static void straightenerColor(float r,
                                     float g,
                                     float b)
color of straightener curve


straightenerColor

public static void straightenerColor(float gray,
                                     float a)
color of straightener curve


straightenerColor

public static void straightenerColor(float gray)
color of straightener curve


tensionColor

public static void tensionColor(java.awt.Color c)
color of tension curve; default is the original color of an input geometry


tensionColor

public static void tensionColor(int r,
                                int g,
                                int b,
                                int a)
color of tension curve; default is the original color of an input geometry


tensionColor

public static void tensionColor(int r,
                                int g,
                                int b)
color of tension curve; default is the original color of an input geometry


tensionColor

public static void tensionColor(int gray,
                                int a)
color of tension curve; default is the original color of an input geometry


tensionColor

public static void tensionColor(int gray)
color of tension curve; default is the original color of an input geometry


tensionColor

public static void tensionColor(float r,
                                float g,
                                float b,
                                float a)
color of tension curve; default is the original color of an input geometry


tensionColor

public static void tensionColor(float r,
                                float g,
                                float b)
color of tension curve; default is the original color of an input geometry


tensionColor

public static void tensionColor(float gray,
                                float a)
color of tension curve; default is the original color of an input geometry


tensionColor

public static void tensionColor(float gray)
color of tension curve; default is the original color of an input geometry


pointLayer

public static void pointLayer(java.lang.String l)
layer to put node points


fixedPointLayer

public static void fixedPointLayer(java.lang.String l)
layer to put fixed node points


straightenerLayer

public static void straightenerLayer(java.lang.String l)
layer to put straighterner lines


equalizerLayer

public static void equalizerLayer(java.lang.String l)
layer to put equalizer lines


tensionLayer

public static void tensionLayer(java.lang.String l)
layer to put tension lines; default (when null) is to put the original layer of an input geometry


fixOpenEnd

public static void fixOpenEnd(boolean f)
boolean switch to fix open end points of lines which are not connected any other line


enableFixOpenEnd

public static void enableFixOpenEnd()
boolean switch to fix open end points of lines which are not connected any other line


disableFixOpenEnd

public static void disableFixOpenEnd()
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 delete input lines


disableDeleteInputLine

public static void disableDeleteInputLine()
boolean switch to delete input lines


deleteInputPoint

public static void deleteInputPoint(boolean f)
boolean switch to delete input fix points


enableDeleteInputPoint

public static void enableDeleteInputPoint()
boolean switch to delete input fix points


disableDeleteInputPoint

public static void disableDeleteInputPoint()
boolean switch to delete input fix points


tensionOnRail

public static void tensionOnRail(boolean f)
in case with rail curves, boolean switch to put tension between points on the same rail curve


enableTensionOnRail

public static void enableTensionOnRail()
in case with rail curves, boolean switch to put tension between points on the same rail curve


disableTensionOnRail

public static void disableTensionOnRail()
in case with rail curves, boolean switch to put tension between points on the same rail curve


fixAtRailEnd

public static void fixAtRailEnd(boolean f)
in case with rail curves, boolean switch to fix points which are on end points of rail curves


enableFixAtRailEnd

public static void enableFixAtRailEnd()
in case with rail curves, boolean switch to fix points which are on end points of rail curves


disableFixAtRailEnd

public static void disableFixAtRailEnd()
in case with rail curves, boolean switch to fix points which are on end points of rail curves


fixPointOffRail

public static void fixPointOffRail(boolean f)
in case with rail curves, boolean switch to fix points which are not on any rail curves


enableFixPointOffRail

public static void enableFixPointOffRail(boolean f)
in case with rail curves, boolean switch to fix points which are not on any rail curves


disableFixPointOffRail

public static void disableFixPointOffRail(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