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 IMeshCreator

    java.lang.Object
      igeo.IMeshCreator

    public class IMeshCreator

extends java.lang.Object

Miscellious static methods to instantiate IMesh object.

Author:
  Satoru Sugihara
See Also:
  `IMesh`

Field Summary
`static IServerI` | `server` state variable of a server to store surfaces created in the methods in this class
`static IMeshType` | `type` state variable of a mesh type to specify what vertex, edge face class to use to create a mesh, default is IMeshType

Constructor Summary
`IMeshCreator()`

Method Summary
`static IMesh` | `box(double x, double y, double z, double size)`
`static IMesh` | `box(double x, double y, double z, double width, double height, double depth)`
`static IMesh` | `box(IVecI[][][] corners)`
`static IMesh` | `box(IVecI origin, double size)`
`static IMesh` | `box(IVecI origin, double width, double height, double depth)`
`static IMesh` | `box(IVecI origin, IVecI xvec, IVecI yvec, IVecI zvec)`
`static IMesh` | `box(IVecI pt1, IVecI pt2, IVecI pt3, IVecI pt4, IVecI pt5, IVecI pt6, IVecI pt7, IVecI pt8)`
`static IMesh` | `box(IVertex[][][] corners)`
`static IMesh` | `diamondTessellation(IMeshI mesh, boolean splitDiamond, boolean splitDir, IMeshType creator)`
`static IMesh` | `mesh()`
`static IMesh` | `mesh(java.util.ArrayList<ICurveI> lines)`
`static IMesh` | `mesh(java.util.ArrayList<IVertex> v, java.util.ArrayList<IEdge> e, java.util.ArrayList<IFace> f)`
`static IMesh` | `mesh(double x1, double y1, double z1, double x2, double y2, double z2, double x3, double y3, double z3)`
`static IMesh` | `mesh(double x1, double y1, double z1, double x2, double y2, double z2, double x3, double y3, double z3, double x4, double y4, double z4)`
`static IMesh` | `mesh(ICurveI[] lines)`
`static IMesh` | `mesh(IFace[] fcs)`
`static IMesh` | `mesh(IMesh m)`
`static IMesh` | `mesh(IMeshGeo m)`
`static IMesh` | `mesh(IVec[] vert)`
`static IMesh` | `mesh(IVec[][] matrix)`
`static IMesh` | `mesh(IVec[][] matrix, boolean triangulateDir)`
`static IMesh` | `mesh(IVec[][] matrix, int unum, int vnum, boolean triangulateDir)`
`static IMesh` | `mesh(IVecI v1, IVecI v2, IVecI v3)`
`static IMesh` | `mesh(IVecI v1, IVecI v2, IVecI v3, IVecI v4)`
`static IMesh` | `mesh(IVertex[] vert)`
`static IMesh` | `mesh(IVertex[] vtx, IEdge[] edg, IFace[] fcs)`
`static IMesh` | `mesh(IVertex v1, IVertex v2, IVertex v3)`
`static IMesh` | `mesh(IVertex v1, IVertex v2, IVertex v3, IVertex v4)`
`static IMeshType` | `meshType()`
`static void` | `meshType(IMeshType typ)` set variable of a mesh type to specify what vertex, edge face class to use to create a mesh
`static IMesh` | `offset(IMeshI mesh, double thickness, IMeshType creator)` create offset mesh towards each normal direction.
`static void` | `offset(IMeshI mesh, double thickness, IVecI offsetDir, java.util.ArrayList<IVertex> resultVertices, java.util.ArrayList<IEdge> resultEdges, java.util.ArrayList<IFace> resultFaces)` create ArrayList of vertices, edges, faces, offset from the mesh
`static IVec[]` | `polygonProfile(IVecI center, IVecI normal, IVecI rollDir, double radius, int vertexNum)`
`static IMesh` | `polygonStick(ICurveI crv, double radius, int polygonVertexNum)`
`static IMesh` | `polygonStick(ICurveI crv, double radius, int polygonVertexNum, int railSegmentNum)`
`static IMesh` | `polygonStick(IVecI pt1, IVecI pt2, double radius1, double radius2, int polygonVertexNum)` creates closed mesh stick with polygon profile
`static IMesh` | `polygonStick(IVecI pt1, IVecI pt2, double radius1, double radius2, int polygonVertexNum, IVecI heightDir)` creates closed mesh stick with polygon profile
`static IMesh` | `polygonStick(IVecI pt1, IVecI pt2, double radius, int polygonVertexNum)` creates closed mesh stick with polygon profile
`static IMesh` | `polygonStick(IVecI pt1, IVecI pt2, double radius, int polygonVertexNum, IVecI heightDir)` creates closed mesh stick with polygon profile
`static IMesh` | `rectStick(IVecI pt1, IVecI pt2, double width, double height)` height direction is z axis
`static IMesh` | `rectStick(IVecI pt1, IVecI pt2, double width, double height, IVecI heightDir)`
`static IMesh` | `rectStick(IVecI pt1, IVecI pt2, IVecI udir, IVecI vdir)`
`static IMesh` | `roundStick(ICurveI crv, double radius)`
`static IMesh` | `roundStick(ICurveI crv, double radius, int railSegmentNum)`
`static IMesh` | `roundStick(IVecI pt1, IVecI pt2, double radius)` round stick (alias of stick())
`static IMesh` | `roundStick(IVecI pt1, IVecI pt2, double radius1, double radius2)` round stick (alias of stick())
`static IServerI` | `server()`
`static void` | `server(IServerI s)` set a server to store surfaces created in the methods in this class
`static IMesh` | `sphere(IVecI center, double radius)`
`static IMesh` | `sphere(IVecI center, double zradius, double xyradius)`
`static IMesh` | `sphere(IVecI center, double zradius, double xyradius, int resolution)`
`static IMesh` | `sphere(IVecI center, double radius, int resolution)`
`static IMesh` | `sphere(IVecI center, IVecI topDir)` mesh sphere
`static IMesh` | `sphere(IVecI center, IVecI topDir, double radius)`
`static IMesh` | `sphere(IVecI center, IVecI topDir, double topRadius, double sideRadius)`
`static IMesh` | `sphere(IVecI center, IVecI topDir, double topRadius, double sideRadius, int resolution)`
`static IMesh` | `sphere(IVecI center, IVecI topDir, double radius, int resolution)` mesh sphere
`static IMesh` | `sphere(IVecI center, IVecI topDir, int resolution)` mesh sphere
`static IMesh` | `sphere(IVecI center, IVecI topDir, IVecI sideDir)` mesh sphere
`static IMesh` | `sphere(IVecI center, IVecI topDir, IVecI sideDir, int resolution)` mesh sphere
`static IMesh` | `squareStick(ICurveI crv, double radius)`
`static IMesh` | `squareStick(ICurveI crv, double radius, int railSegmentNum)`
`static IMesh` | `squareStick(IVecI pt1, IVecI pt2, double width)` height direction is z axis
`static IMesh` | `squareStick(IVecI pt1, IVecI pt2, double width, IVecI heightDir)`
`static IMesh` | `stick(ICurveI crv, double radius)`
`static IMesh` | `stick(ICurveI crv, double radius, int railSegmentNum)`
`static IMesh` | `stick(IVecI[][] pts)`
`static IMesh` | `stick(IVecI[][] pts, boolean closeU)` creates closed mesh stick with matrix of points
`static IMesh` | `stick(IVecI pt1, IVecI pt2, double radius)` round stick
`static IMesh` | `stick(IVecI pt1, IVecI pt2, double radius1, double radius2)` round stick
`static IMesh` | `thicken(IMesh mesh, double thickness, IMeshType creator)` add thickness to mesh towards each normal direction.
`static IMesh` | `thicken(IMesh mesh, double thickness, IVecI dir, IMeshType creator)` add thickness to mesh towards the specified direction.
`static IMesh` | `thicken(IMeshI mesh, double thickness, boolean modifyOriginal, IMeshType creator)` create thickned mesh towards each normal direction.
`static IMesh` | `thicken(IMeshI mesh, double thickness, IVecI dir, boolean modifyOriginal, IMeshType creator)` create thickned mesh towards the specified direction.

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

Field Detail

### server

    public static IServerI server

  state variable of a server to store surfaces created in the methods in this class

### type

    public static IMeshType type

  state variable of a mesh type to specify what vertex, edge face class to use to create a mesh, default is IMeshType

Constructor Detail

### IMeshCreator

    public IMeshCreator()

Method Detail

### server

    public static void server(IServerI s)

  set a server to store surfaces created in the methods in this class

### server

    public static IServerI server()

### meshType

    public static void meshType(IMeshType typ)

  set variable of a mesh type to specify what vertex, edge face class to use to create a mesh

### meshType

    public static IMeshType meshType()

### mesh

    public static IMesh mesh()

### mesh

    public static IMesh mesh(IMeshGeo m)

### mesh

    public static IMesh mesh(IMesh m)

### mesh

    public static IMesh mesh(java.util.ArrayList<ICurveI> lines)

### mesh

    public static IMesh mesh(ICurveI[] lines)

### mesh

    public static IMesh mesh(IVec[][] matrix)

### mesh

    public static IMesh mesh(IVec[][] matrix,
                             boolean triangulateDir)

### mesh

    public static IMesh mesh(IVec[][] matrix,
                             int unum,
                             int vnum,
                             boolean triangulateDir)

### mesh

    public static IMesh mesh(java.util.ArrayList<IVertex> v,
                             java.util.ArrayList<IEdge> e,
                             java.util.ArrayList<IFace> f)

### mesh

    public static IMesh mesh(IVertex[] vtx,
                             IEdge[] edg,
                             IFace[] fcs)

### mesh

    public static IMesh mesh(IVec[] vert)

### mesh

    public static IMesh mesh(IVertex[] vert)

### mesh

    public static IMesh mesh(IVertex v1,
                             IVertex v2,
                             IVertex v3)

### mesh

    public static IMesh mesh(IVertex v1,
                             IVertex v2,
                             IVertex v3,
                             IVertex v4)

### mesh

    public static IMesh mesh(IVecI v1,
                             IVecI v2,
                             IVecI v3)

### mesh

    public static IMesh mesh(IVecI v1,
                             IVecI v2,
                             IVecI v3,
                             IVecI v4)

### mesh

    public static IMesh mesh(double x1,
                             double y1,
                             double z1,
                             double x2,
                             double y2,
                             double z2,
                             double x3,
                             double y3,
                             double z3)

### mesh

    public static IMesh mesh(double x1,
                             double y1,
                             double z1,
                             double x2,
                             double y2,
                             double z2,
                             double x3,
                             double y3,
                             double z3,
                             double x4,
                             double y4,
                             double z4)

### mesh

    public static IMesh mesh(IFace[] fcs)

### box

    public static IMesh box(double x,
                            double y,
                            double z,
                            double size)

### box

    public static IMesh box(double x,
                            double y,
                            double z,
                            double width,
                            double height,
                            double depth)

### box

    public static IMesh box(IVecI origin,
                            double size)

### box

    public static IMesh box(IVecI origin,
                            double width,
                            double height,
                            double depth)

### box

    public static IMesh box(IVecI origin,
                            IVecI xvec,
                            IVecI yvec,
                            IVecI zvec)

### box

    public static IMesh box(IVecI pt1,
                            IVecI pt2,
                            IVecI pt3,
                            IVecI pt4,
                            IVecI pt5,
                            IVecI pt6,
                            IVecI pt7,
                            IVecI pt8)

### box

    public static IMesh box(IVecI[][][] corners)

### box

    public static IMesh box(IVertex[][][] corners)

### rectStick

    public static IMesh rectStick(IVecI pt1,
                                  IVecI pt2,
                                  IVecI udir,
                                  IVecI vdir)

### rectStick

    public static IMesh rectStick(IVecI pt1,
                                  IVecI pt2,
                                  double width,
                                  double height,
                                  IVecI heightDir)

  Parameters:
    `heightDir` - it provides reference to the direction of height but actual direction is re-calculated to be perpendicular to pt1-pt2 direction.

### rectStick

    public static IMesh rectStick(IVecI pt1,
                                  IVecI pt2,
                                  double width,
                                  double height)

  height direction is z axis

### squareStick

    public static IMesh squareStick(IVecI pt1,
                                    IVecI pt2,
                                    double width,
                                    IVecI heightDir)

  Parameters:
    `heightDir` - it provides reference to the direction of height but actual direction is re-calculated to be perpendicular to pt1-pt2 direction.

### squareStick

    public static IMesh squareStick(IVecI pt1,
                                    IVecI pt2,
                                    double width)

  height direction is z axis

### polygonStick

    public static IMesh polygonStick(IVecI pt1,
                                     IVecI pt2,
                                     double radius,
                                     int polygonVertexNum)

  creates closed mesh stick with polygon profile

  Parameters:
    `pt1` - center of one side of a stick
    `pt2` - center of another side of a stick
    `polygonVertexNum` - number of vertex of profile polygon

### polygonStick

    public static IMesh polygonStick(IVecI pt1,
                                     IVecI pt2,
                                     double radius,
                                     int polygonVertexNum,
                                     IVecI heightDir)

  creates closed mesh stick with polygon profile

  Parameters:
    `pt1` - center of one side of a stick
    `pt2` - center of another side of a stick
    `polygonVertexNum` - number of vertex of profile polygon
    `heightDir` - reference vector to locate one of vertex of polygon aligned with this direction

### polygonStick

    public static IMesh polygonStick(IVecI pt1,
                                     IVecI pt2,
                                     double radius1,
                                     double radius2,
                                     int polygonVertexNum)

  creates closed mesh stick with polygon profile

  Parameters:
    `pt1` - center of one side of a stick
    `pt2` - center of another side of a stick
    `polygonVertexNum` - number of vertex of profile polygon

### polygonStick

    public static IMesh polygonStick(IVecI pt1,
                                     IVecI pt2,
                                     double radius1,
                                     double radius2,
                                     int polygonVertexNum,
                                     IVecI heightDir)

  creates closed mesh stick with polygon profile

  Parameters:
    `pt1` - center of one side of a stick
    `pt2` - center of another side of a stick
    `polygonVertexNum` - number of vertex of profile polygon
    `heightDir` - reference vector to locate one of vertex of polygon aligned with this direction

### stick

    public static IMesh stick(IVecI[][] pts)

### stick

    public static IMesh stick(IVecI[][] pts,
                              boolean closeU)

  creates closed mesh stick with matrix of points

  Parameters:
    `pts` - control point matrix whose u is stick direction and v is wrapped by connecting the first and the last in v.
    `closeU` - if true, connect the end and the beginning in U direction

### stick

    public static IMesh stick(IVecI pt1,
                              IVecI pt2,
                              double radius)

  round stick

### stick

    public static IMesh stick(IVecI pt1,
                              IVecI pt2,
                              double radius1,
                              double radius2)

  round stick

### roundStick

    public static IMesh roundStick(IVecI pt1,
                                   IVecI pt2,
                                   double radius)

  round stick (alias of stick())

### roundStick

    public static IMesh roundStick(IVecI pt1,
                                   IVecI pt2,
                                   double radius1,
                                   double radius2)

  round stick (alias of stick())

### sphere

    public static IMesh sphere(IVecI center,
                               IVecI topDir,
                               IVecI sideDir,
                               int resolution)

  mesh sphere

  Parameters:
    `topDir` - length of vector is radius in vertical direction
    `sideDir` - length of vector is radius in holizontal direction. sideDir is re-orthogonalized to topDir

### sphere

    public static IMesh sphere(IVecI center,
                               IVecI topDir,
                               IVecI sideDir)

  mesh sphere

  Parameters:
    `topDir` - length of vector is radius in vertical direction
    `sideDir` - length of vector is radius in holizontal direction. sideDir is re-orthogonalized to topDir

### sphere

    public static IMesh sphere(IVecI center,
                               IVecI topDir,
                               int resolution)

  mesh sphere

  Parameters:
    `topDir` - length of vector is radius in vertical direction

### sphere

    public static IMesh sphere(IVecI center,
                               IVecI topDir)

  mesh sphere

  Parameters:
    `topDir` - length of vector is radius in vertical direction

### sphere

    public static IMesh sphere(IVecI center,
                               IVecI topDir,
                               double radius,
                               int resolution)

  mesh sphere

  Parameters:
    `topDir` - length of vector is radius in vertical direction

### sphere

    public static IMesh sphere(IVecI center,
                               IVecI topDir,
                               double topRadius,
                               double sideRadius,
                               int resolution)

### sphere

    public static IMesh sphere(IVecI center,
                               IVecI topDir,
                               double radius)

### sphere

    public static IMesh sphere(IVecI center,
                               IVecI topDir,
                               double topRadius,
                               double sideRadius)

### sphere

    public static IMesh sphere(IVecI center,
                               double radius,
                               int resolution)

### sphere

    public static IMesh sphere(IVecI center,
                               double radius)

### sphere

    public static IMesh sphere(IVecI center,
                               double zradius,
                               double xyradius,
                               int resolution)

### sphere

    public static IMesh sphere(IVecI center,
                               double zradius,
                               double xyradius)

### polygonProfile

    public static IVec[] polygonProfile(IVecI center,
                                        IVecI normal,
                                        IVecI rollDir,
                                        double radius,
                                        int vertexNum)

### polygonStick

    public static IMesh polygonStick(ICurveI crv,
                                     double radius,
                                     int polygonVertexNum,
                                     int railSegmentNum)

### polygonStick

    public static IMesh polygonStick(ICurveI crv,
                                     double radius,
                                     int polygonVertexNum)

### roundStick

    public static IMesh roundStick(ICurveI crv,
                                   double radius,
                                   int railSegmentNum)

### roundStick

    public static IMesh roundStick(ICurveI crv,
                                   double radius)

### stick

    public static IMesh stick(ICurveI crv,
                              double radius,
                              int railSegmentNum)

### stick

    public static IMesh stick(ICurveI crv,
                              double radius)

### squareStick

    public static IMesh squareStick(ICurveI crv,
                                    double radius,
                                    int railSegmentNum)

### squareStick

    public static IMesh squareStick(ICurveI crv,
                                    double radius)

### thicken

    public static IMesh thicken(IMeshI mesh,
                                double thickness,
                                boolean modifyOriginal,
                                IMeshType creator)

  create thickned mesh towards each normal direction. if modifyOriginal is true and the mesh instance is IMesh class instance, it modify the input mesh

### thicken

    public static IMesh thicken(IMeshI mesh,
                                double thickness,
                                IVecI dir,
                                boolean modifyOriginal,
                                IMeshType creator)

  create thickned mesh towards the specified direction. if modifyOriginal is true and the mesh instance is IMesh class instance, it modify the input mesh

### thicken

    public static IMesh thicken(IMesh mesh,
                                double thickness,
                                IMeshType creator)

  add thickness to mesh towards each normal direction. this modify the input mesh

### thicken

    public static IMesh thicken(IMesh mesh,
                                double thickness,
                                IVecI dir,
                                IMeshType creator)

  add thickness to mesh towards the specified direction. this modify the input mesh. if the direction is null, it thicken into each normal direction

### offset

    public static IMesh offset(IMeshI mesh,
                               double thickness,
                               IMeshType creator)

  create offset mesh towards each normal direction.

### offset

    public static void offset(IMeshI mesh,
                              double thickness,
                              IVecI offsetDir,
                              java.util.ArrayList<IVertex> resultVertices,
                              java.util.ArrayList<IEdge> resultEdges,
                              java.util.ArrayList<IFace> resultFaces)

  create ArrayList of vertices, edges, faces, offset from the mesh

### diamondTessellation

    public static IMesh diamondTessellation(IMeshI mesh,
                                            boolean splitDiamond,
                                            boolean splitDir,
                                            IMeshType creator)

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