Package com.gaia3d.basic.halfedge
Class HalfEdgeUtils
java.lang.Object
com.gaia3d.basic.halfedge.HalfEdgeUtils
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic double
calculateAngleBetweenNormals
(org.joml.Vector3d normalA, org.joml.Vector3d normalB) static double
static double
static org.joml.Vector3d
calculateNormalAsConvex
(List<HalfEdgeVertex> vertices, org.joml.Vector3d resultNormal) static void
deformHalfEdgeSurfaceByVerticesConvexConcave
(HalfEdgeScene scene, double factor) static void
deformHalfEdgeSurfaceByVerticesConvexConcave
(HalfEdgeSurface surface, double factor) static GaiaFace
gaiaFaceFromHalfEdgeFace
(HalfEdgeFace halfEdgeFace, Map<HalfEdgeVertex, GaiaVertex> mapHalfEdgeVertexToGaiaVertex, Map<GaiaVertex, Integer> mapGaiaVertexToIndex) static GaiaMesh
gaiaMeshFromHalfEdgeMesh
(HalfEdgeMesh halfEdgeMesh) static GaiaNode
gaiaNodeFromHalfEdgeNode
(HalfEdgeNode halfEdgeNode) static GaiaPrimitive
gaiaPrimitiveFromHalfEdgePrimitive
(HalfEdgePrimitive halfEdgePrimitive) static GaiaScene
gaiaSceneFromHalfEdgeFaces
(List<HalfEdgeFace> halfEdgeFaces, Map<GaiaFace, HalfEdgeFace> mapGaiaFaceToHalfEdgeFace) static GaiaScene
gaiaSceneFromHalfEdgeScene
(HalfEdgeScene halfEdgeScene) static GaiaSurface
gaiaSurfaceFromHalfEdgeSurface
(HalfEdgeSurface halfEdgeSurface, Map<HalfEdgeVertex, GaiaVertex> mapHalfEdgeVertexToGaiaVertex, Map<GaiaVertex, Integer> mapGaiaVertexToIndex) static GaiaBoundingBox
getBoundingBoxOfFaces
(List<HalfEdgeFace> faces) static List<HalfEdgeScene>
getCopyHalfEdgeScenesByFaceClassifyId
(HalfEdgeScene halfEdgeScene, List<HalfEdgeScene> resultHalfEdgeScenes) static List<HalfEdgeScene>
getCopyHalfEdgeScenesByFaceClassifyId_original
(HalfEdgeScene halfEdgeScene, List<HalfEdgeScene> resultHalfEdgeScenes) getGaiaTriangleFacesFromGaiaFace
(GaiaFace gaiaFace) static HalfEdgeScene
getHalfEdgeSceneRectangularNet
(int numCols, int numRows, float[][] depthValues, GaiaBoundingBox bbox, boolean makeVerticalSkirt) getHalfEdgesOfFaces
(List<HalfEdgeFace> faces, List<HalfEdge> resultHalfEdges) static List<HalfEdgeVertex>
getVerticesOfFaces
(List<HalfEdgeFace> faces, List<HalfEdgeVertex> resultVertices) static List<List<HalfEdgeFace>>
getWeldedFacesGroups
(List<HalfEdgeFace> facesList, List<List<HalfEdgeFace>> resultWeldedFacesGroups) static boolean
getWeldedFacesWithFace
(HalfEdgeFace face, List<HalfEdgeFace> resultWeldedFaces, Map<HalfEdgeFace, HalfEdgeFace> mapVisitedFaces) static HalfEdgeFace
halfEdgeFaceFromGaiaFace
(GaiaFace gaiaFace, List<GaiaVertex> gaiaVertices, HalfEdgeSurface halfEdgeSurfaceOwner, Map<GaiaVertex, HalfEdgeVertex> mapGaiaVertexToHalfEdgeVertex) static HalfEdgeMesh
halfEdgeMeshFromGaiaMesh
(GaiaMesh gaiaMesh) static HalfEdgeNode
halfEdgeNodeFromGaiaNode
(GaiaNode gaiaNode) static HalfEdgePrimitive
halfEdgePrimitiveFromGaiaPrimitive
(GaiaPrimitive gaiaPrimitive) static HalfEdgeScene
halfEdgeSceneFromGaiaScene
(GaiaScene gaiaScene) static HalfEdgeSurface
halfEdgeSurfaceFromGaiaSurface
(GaiaSurface gaiaSurface, List<GaiaVertex> gaiaVertices) static double
log2
(double x) static Map<CameraDirectionType,
List<HalfEdgeFace>> makeMapCameraDirectionTypeFacesList
(List<HalfEdgeFace> facesList) static Map<PlaneType,
List<HalfEdgeFace>> makeMapPlaneTypeFacesList
(List<HalfEdgeFace> facesList, Map<PlaneType, List<HalfEdgeFace>> mapPlaneTypeFacesList) static void
weldVerticesGaiaSurface
(GaiaSurface gaiaSurface, List<GaiaVertex> gaiaVertices, double error, boolean checkTexCoord, boolean checkNormal, boolean checkColor, boolean checkBatchId)
-
Constructor Details
-
HalfEdgeUtils
public HalfEdgeUtils()
-
-
Method Details
-
gaiaSceneFromHalfEdgeScene
-
gaiaSceneFromHalfEdgeFaces
public static GaiaScene gaiaSceneFromHalfEdgeFaces(List<HalfEdgeFace> halfEdgeFaces, Map<GaiaFace, HalfEdgeFace> mapGaiaFaceToHalfEdgeFace) -
gaiaNodeFromHalfEdgeNode
-
gaiaMeshFromHalfEdgeMesh
-
gaiaPrimitiveFromHalfEdgePrimitive
-
gaiaSurfaceFromHalfEdgeSurface
public static GaiaSurface gaiaSurfaceFromHalfEdgeSurface(HalfEdgeSurface halfEdgeSurface, Map<HalfEdgeVertex, GaiaVertex> mapHalfEdgeVertexToGaiaVertex, Map<GaiaVertex, Integer> mapGaiaVertexToIndex) -
gaiaFaceFromHalfEdgeFace
public static GaiaFace gaiaFaceFromHalfEdgeFace(HalfEdgeFace halfEdgeFace, Map<HalfEdgeVertex, GaiaVertex> mapHalfEdgeVertexToGaiaVertex, Map<GaiaVertex, Integer> mapGaiaVertexToIndex) -
getHalfEdgeSceneRectangularNet
public static HalfEdgeScene getHalfEdgeSceneRectangularNet(int numCols, int numRows, float[][] depthValues, GaiaBoundingBox bbox, boolean makeVerticalSkirt) -
halfEdgeSceneFromGaiaScene
-
halfEdgeNodeFromGaiaNode
-
halfEdgeMeshFromGaiaMesh
-
halfEdgePrimitiveFromGaiaPrimitive
-
calculateAngleBetweenNormals
public static double calculateAngleBetweenNormals(org.joml.Vector3d normalA, org.joml.Vector3d normalB) -
getWeldedFacesGroups
public static List<List<HalfEdgeFace>> getWeldedFacesGroups(List<HalfEdgeFace> facesList, List<List<HalfEdgeFace>> resultWeldedFacesGroups) -
getWeldedFacesWithFace
public static boolean getWeldedFacesWithFace(HalfEdgeFace face, List<HalfEdgeFace> resultWeldedFaces, Map<HalfEdgeFace, HalfEdgeFace> mapVisitedFaces) -
getVerticesOfFaces
public static List<HalfEdgeVertex> getVerticesOfFaces(List<HalfEdgeFace> faces, List<HalfEdgeVertex> resultVertices) -
getHalfEdgesOfFaces
-
halfEdgeSurfaceFromGaiaSurface
public static HalfEdgeSurface halfEdgeSurfaceFromGaiaSurface(GaiaSurface gaiaSurface, List<GaiaVertex> gaiaVertices) -
halfEdgeFaceFromGaiaFace
public static HalfEdgeFace halfEdgeFaceFromGaiaFace(GaiaFace gaiaFace, List<GaiaVertex> gaiaVertices, HalfEdgeSurface halfEdgeSurfaceOwner, Map<GaiaVertex, HalfEdgeVertex> mapGaiaVertexToHalfEdgeVertex) -
getCopyHalfEdgeScenesByFaceClassifyId
public static List<HalfEdgeScene> getCopyHalfEdgeScenesByFaceClassifyId(HalfEdgeScene halfEdgeScene, List<HalfEdgeScene> resultHalfEdgeScenes) -
getCopyHalfEdgeScenesByFaceClassifyId_original
public static List<HalfEdgeScene> getCopyHalfEdgeScenesByFaceClassifyId_original(HalfEdgeScene halfEdgeScene, List<HalfEdgeScene> resultHalfEdgeScenes) -
log2
public static double log2(double x) -
calculateNormalAsConvex
public static org.joml.Vector3d calculateNormalAsConvex(List<HalfEdgeVertex> vertices, org.joml.Vector3d resultNormal) -
calculateArea
-
calculateAspectRatioAsTriangle
public static double calculateAspectRatioAsTriangle(HalfEdgeVertex a, HalfEdgeVertex b, HalfEdgeVertex c) -
weldVerticesGaiaSurface
public static void weldVerticesGaiaSurface(GaiaSurface gaiaSurface, List<GaiaVertex> gaiaVertices, double error, boolean checkTexCoord, boolean checkNormal, boolean checkColor, boolean checkBatchId) -
makeMapPlaneTypeFacesList
public static Map<PlaneType,List<HalfEdgeFace>> makeMapPlaneTypeFacesList(List<HalfEdgeFace> facesList, Map<PlaneType, List<HalfEdgeFace>> mapPlaneTypeFacesList) -
makeMapCameraDirectionTypeFacesList
public static Map<CameraDirectionType,List<HalfEdgeFace>> makeMapCameraDirectionTypeFacesList(List<HalfEdgeFace> facesList) -
getBoundingBoxOfFaces
-
deformHalfEdgeSurfaceByVerticesConvexConcave
-
deformHalfEdgeSurfaceByVerticesConvexConcave
public static void deformHalfEdgeSurfaceByVerticesConvexConcave(HalfEdgeSurface surface, double factor) -
getGaiaTriangleFacesFromGaiaFace
-