SVN Repository and Homework 1

Each group has its own svn repository:

  • https://svn.math.tu-berlin.de/svn/MathVis/WS14/mvws14YOURGROUP (YOURGROUP = 01 – 15, don’t miss the 0 for group-numbers below 10)

Please check out your repository as soon as you got your svn-account.

  • Go to “Window” -> “Other Perspective” -> “SVN Repository Exploring”
  • click the “New Repository Location” and add “https://svn.math.tu-berlin.de/svn/MathVis/WS14” at the “URL:” line
  • Add your “User:” and “Password” and click “Finish”
  • Left click on the project until you see all the mvws14?? projects
  • Right click on “mvws1400” -> left click “checkout”
  • and right click on mvws14YOURGROUP -> left click “checkout”

You have now checked out your homework repository and the uebungsrepository where I will add the classes for the Uebung. You have to check in your results before the Uebung. At the Uebung we will watch and discuss your results.

Durning the Uebung we will mainly work with the jTEM projects HalfEdge and HalfEdgeTools. Check out the git-projects as you did it with jReality:

  • git@gitlab.discretization.de:jtem/halfedge.git
  • git@gitlab.discretization.de:jtem/halfedgetools.git

Attention, please check out the no_awt-branch for the halfedgetools-project.

As next step you copy all the Classes provided in the src-folder of mvws1400 to your group-project mvws14YOURGROUP. You should further copy the “models”-folder. You will notice that your project-folder will turn red. You have to import the 3 projects (jReality, HETools, HE) to your classpath.

  • right click on mvws14YOURGROUP -> “Build Path” -> left click on “Configure Build Path …”
  • Go to the “Projects”-tab and click “Add…” select the three projects (jReality, HE, HETools) and press “OK”

HOMEWORK 1:

In the mathvis-package you can start a “Viewer”. You have to open a geometry out of the models-folder. You can select random edges/vertices/faces. These selections will be used for your code. You always work on one Vertex / Edge / Face unless you have to handle your Selection as a List:

e.g.:

public static void removeEdge(MVHDS hds, AdapterSet as, Selection s){
System.out.println("remove Edge");
for(MVE e : s.getEdges(hds)){
remove(hds, e);
}
}

You find the methods you have to implement at the utility package:

  • VertexOperationsUtility
  • EdgeOperationUtility
  • FaceOperationUtility

Both groups have to implement the following functions:

  • previousEdge (EdgeOperations)
  • removeEdge (EdgeOperations)
  • contractEdge (EdgeOperations)
  • subdivideEdge (EdgeOperations)
  • flipEdge (EdgeOperations)

Homework Group 1 (Tuesday):

  • vertexStar (VertexOperations)
  • incomingEdges (VertexOperations)
  • removeVertex (VertexOperations)
  • splitVertex (VertexOperations)
  • adjacentVertices (FaceOperations)
  • triangulate (FaceOperations)

Homework Group 2 (Thursday:

  • edgeStar (VertexOperations)
  • faceStar (VertexOperations)
  • removeFace (FaceOperations)
  • splitFace (FaceOperations)
  • boundaryEdges (FaceOperations)
  • triangulateStellar (FaceOperations)