Commit ddd4d314 authored by Matej Lukes's avatar Matej Lukes
Browse files

added copy constructors

parent ada105d5
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -11,6 +11,17 @@
    </content>
    <orderEntry type="inheritedJdk" />
    <orderEntry type="sourceFolder" forTests="false" />
    <orderEntry type="library" scope="TEST" name="Maven: org.junit.jupiter:junit-jupiter:5.6.0" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: org.junit.jupiter:junit-jupiter-params:5.6.0" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: org.junit.jupiter:junit-jupiter-engine:5.6.0" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: org.junit.platform:junit-platform-engine:1.6.0" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: org.testng:testng:7.1.0" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: com.beust:jcommander:1.72" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: com.google.inject:guice:no_aop:4.1.0" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: javax.inject:javax.inject:1" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: aopalliance:aopalliance:1.0" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: com.google.guava:guava:19.0" level="project" />
    <orderEntry type="library" scope="TEST" name="Maven: org.yaml:snakeyaml:1.21" level="project" />
    <orderEntry type="library" name="Maven: java3d:j3d-core-utils:1.3.1" level="project" />
    <orderEntry type="library" name="Maven: java3d:vecmath:1.3.1" level="project" />
    <orderEntry type="library" name="Maven: java3d:j3d-core:1.3.1" level="project" />
+19 −0
Original line number Diff line number Diff line
@@ -13,6 +13,25 @@ public class CornerTable {

    private List<CornerTableRow> rows = new ArrayList<>();

    /**
     * Constructor of CornerTable
     */
    public CornerTable() {

    }

    /**
     * Copy constructor of CornerTable
     *
     * @param cornerTable copied CornerTable
     */
    public CornerTable(CornerTable cornerTable) {
        for (CornerTableRow row :
                cornerTable.rows) {
            rows.add(new CornerTableRow(row));
        }
    }

    /**
     * returns index of face that contains corner.
     * returns -2 if index is less than 0 or more than number of rows in corner table
+13 −1
Original line number Diff line number Diff line
@@ -11,6 +11,7 @@ public class CornerTableRow {

    /**
     * Constructor of a row in corner
     *
     * @param vertexIndex         index of associated vertex in MashFacet
     * @param oppositeCornerIndex index of the opposite corner, -1 if there is no opposite corner
     */
@@ -19,6 +20,16 @@ public class CornerTableRow {
        this.oppositeCornerIndex = oppositeCornerIndex;
    }

    /**
     * Copy constructor of a row in corner
     *
     * @param cornerTableRow copied row
     */
    public CornerTableRow(CornerTableRow cornerTableRow) {
        this.vertexIndex = cornerTableRow.getVertexIndex();
        this.oppositeCornerIndex = cornerTableRow.getOppositeCornerIndex();
    }

    /**
     * returns vertex of corner
     *
@@ -37,6 +48,7 @@ public class CornerTableRow {

    /**
     * sets index of the opposite corner
     *
     * @param index index of the opposite corner in corner table
     */
    public void setOppositeCornerIndex(int index) {
+27 −2
Original line number Diff line number Diff line
@@ -10,10 +10,31 @@ import java.util.List;
 */
public class MeshFacet {
    private List<MeshPoint> vertices = new ArrayList<>();
    private CornerTable cornerTable = new CornerTable();
    private CornerTable cornerTable;

    /**
     * Constructor of MeshFacet
     */
    public MeshFacet() {
        cornerTable = new CornerTable();
    }

    /**
     * Copy constructor of MeshFacet
     *
     * @param facet copied MeshFacet
     */
    public MeshFacet(MeshFacet facet) {
        for (MeshPoint vertex :
                facet.vertices) {
            vertices.add(new MeshPoint(vertex));
        }
        cornerTable = new CornerTable(facet.cornerTable);
    }

    /**
     * returns vertex of specified index
     *
     * @param index index of vertex
     * @return vertex
     */
@@ -23,6 +44,7 @@ public class MeshFacet {

    /**
     * adds vertex to MeshFacet
     *
     * @param point new vertex
     */
    public void addVertex(MeshPoint point) {
@@ -31,6 +53,7 @@ public class MeshFacet {

    /**
     * returns number of vertices in MeshFacet
     *
     * @return number of vertices
     */
    public int getNumberOfVertices() {
@@ -39,6 +62,7 @@ public class MeshFacet {

    /**
     * returns list of vertices in MeshFacet
     *
     * @return list if vertices
     */
    public List<MeshPoint> getVertices() {
@@ -47,6 +71,7 @@ public class MeshFacet {

    /**
     * returns Corner Table representing MeshFacet
     *
     * @return corner table
     */
    public CornerTable getCornerTable() {
+21 −0
Original line number Diff line number Diff line
@@ -11,8 +11,28 @@ import java.util.List;
public class MeshModel {
    private List<MeshFacet> facets = new ArrayList<>();

    /**
     * Constructor of MeshModel
     */
    public MeshModel() {

    }

    /**
     * Copy constructor of MeshModel
     *
     * @param meshModel copied MeshModel
     */
    public MeshModel(MeshModel meshModel) {
        for (MeshFacet facet :
                meshModel.facets) {
            facets.add(new MeshFacet(facet));
        }
    }

    /**
     * returns list of MeshFacets
     *
     * @return list of MeshFacets
     */
    public List<MeshFacet> getFacets() {
@@ -21,6 +41,7 @@ public class MeshModel {

    /**
     * adds new MeshFacet to the model
     *
     * @param facet new MeshFacet
     */
    public void addFacet(MeshFacet facet) {
Loading