In this project you're expected to develop a Java program that performs feature recognition from solid modeling objects as used in concurrent design evaluation. These objects consist of features such as ribs, slots, and a base. The program must:
1. Read in data from a file that represents the surfaces of an object. The data file will contain the totla nubmer of vertices, xyz coordinates of all vertices, total number of edges, each edge defined by two vertices and also an additional parameter to describe whether the edge is concave (0) or convex(1), total nmber of faces, the number of edges in the faces, and the edge in the face. Store this data in data structures or arrays and give reasons for why you selected that data structure/array.
2. Write a program to genereate a VRML format file which describes an object you should use the VRML format files you create and the VRML program to verify the geometry of the objects.
3. Perform the feature recognition step (i.e. ribs, slots, and base)), form the data structures that were read in
4. Answer the following question: a) Have your program display the dimension of the ribs, slots and the base. b) Based on the results of the program answer the folloing questions for each part: i) Are the heuristics used to develop the algorithm good enough? Did they determine the correct number of ribs and slots? Which are the problem features? ii) Can you suggest other heuristics that will result in better solution? c) will yor code work for the other objects?
Must turn in: program, the 3 data files, the 3 VRML format files, answers to questions.
1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.
2) Deliverables must be in ready-to-run condition, as follows (depending on the nature of the deliverables):
a) For web sites or other server-side deliverables intended to only ever exist in one place in the Buyer's environment--Deliverables must be installed by the Seller in ready-to-run condition in the Buyer's environment.
b) For all others including desktop software or software the buyer intends to distribute: A software installation package that will install the software in ready-to-run condition on the platform(s) specified in this bid request.
3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement).
Windows XP, Windows 2003, Java