All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.jeometry.geom3D.mesh.indexed.IndexedTriangleMesh Maven / Gradle / Ivy

There is a newer version: 1.0.5
Show newest version
package org.jeometry.geom3D.mesh.indexed;

import java.util.List;

import org.jeometry.Jeometry;
import org.jeometry.geom3D.point.Point3D;
import org.jeometry.geom3D.primitive.indexed.IndexedTriangle;

/**
 * An {@link IndexedMesh indexed mesh} that contains only {@link IndexedTriangle triangular faces}.
 * @param  The type of the underlying 3D points
 * @author Julien Seinturier - COMEX S.A. - [email protected] - https://github.com/jorigin/jeometry
 * @version {@value Jeometry#version}
 * @since 1.0.0
 *
 */
public interface IndexedTriangleMesh extends IndexedMesh {

	  /**
	   * Return the indexed {@link IndexedTriangle indexed triangles} that compose the mesh.
	   * @return the indexed {@link IndexedTriangle indexed triangles} that compose the mesh. 
	   */
	  @Override
	  public List> getFacesIndexes();
	
	  /**
	   * Add a {@link IndexedTriangle triangular face} made of the given indices to the indexed triangle mesh. 
	   * This method enable to specific mesh to provide use specific implementation of 
	   * {@link IndexedFace indexed face}.
	   * @param indices the indices composing the {@link IndexedFace indexed face}.
	   * @return true if the face is successfully added to the mesh and false otherwise.
	   */
	  public boolean addTriangle(List indices);
	  
	  /**
	   * Add a {@link IndexedTriangle triangular face} made of the given indices to the indexed triangle mesh. 
	   * This method enable to specific mesh to provide use specific implementation of 
	   * {@link IndexedFace indexed face}.
	   * @param indices the indices composing the {@link IndexedFace indexed face}.
	   * @return true if the face is successfully added to the mesh and false otherwise.
	   */
	  public boolean addTriangle(int[] indices);
	
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy