Module simpa.core

Class ExtrudedSurface

java.lang.Object
simpa.core.api.ExtrudedSurface

public class ExtrudedSurface extends Object
Represents a surface extruded along a path. The resulting surface is open at the ends.
  • Constructor Summary

    Constructors
    Constructor
    Description
    ExtrudedSurface(List<org.apache.commons.math3.geometry.euclidean.threed.Vector3D> path, Map<Double,Profile> profiles)
    This constructor is used to create a surface by placing the given profiles to the given positions along the path.
    ExtrudedSurface(List<org.apache.commons.math3.geometry.euclidean.threed.Vector3D> path, Profile profile)
    This constructor is used to create a surface by extruding the given profile along the path.
  • Method Summary

    Modifier and Type
    Method
    Description
    Gets the oriented profiles of the surface.
    org.apache.commons.math3.geometry.euclidean.threed.Vector3D
    This is the reference coordinate of the surface.

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • ExtrudedSurface

      public ExtrudedSurface(List<org.apache.commons.math3.geometry.euclidean.threed.Vector3D> path, Profile profile)
      This constructor is used to create a surface by extruding the given profile along the path. Used for tiling.
      Parameters:
      path - A path to extrude the profile to form a surface. At each point in the path a profile will be added such that the path segment is normal to the plane of the profile. Normally the point (0,0,0) should be included in the path and for symmetric surfaces it should be the center point. This is just a convention to make things easier, but not a requirement.
      profile - A profile to be extruded. This is a 2D closed polygon in the XY plane.
    • ExtrudedSurface

      public ExtrudedSurface(List<org.apache.commons.math3.geometry.euclidean.threed.Vector3D> path, Map<Double,Profile> profiles)
      This constructor is used to create a surface by placing the given profiles to the given positions along the path.
      Parameters:
      path - A path to place the profiles to form a surface. The point (0,0,0) should be in the path.
      profiles - A map profiles to be placed.The key is the distance from the origin along the path. All profiles must have the same number of points. This is required for easy triangulation.
  • Method Details

    • getReferencePoint

      public org.apache.commons.math3.geometry.euclidean.threed.Vector3D getReferencePoint()
      This is the reference coordinate of the surface. When the surface is created the path must contain the (0,0,0) point, which by definition becomes the reference point. When the copy constructor with translation and rotation is called the translation is added to the reference point.
      Returns:
      The reference point.
    • getOrientedProfiles

      public List<Profile> getOrientedProfiles()
      Gets the oriented profiles of the surface.
      Returns:
      the oriented profiles.