80 likes | 219 Views
Electrical Engineering Software Lab - Technion. 3D Object Retrieval Client-Server Project. Spring semester 2001/02. Developers : Iddo Simhon Omer Boker Supervisor : George Leifman. Project Definition. 3D objects retrieval by several algorithms.
E N D
Electrical Engineering Software Lab - Technion 3D Object Retrieval Client-Server Project Spring semester 2001/02 Developers: Iddo Simhon Omer Boker Supervisor: George Leifman
Project Definition • 3D objects retrieval by several algorithms. • The design enables addition of more algorithms in the future, open data-base. • The project is built as client-server system, each operates as a separate application. • The client is a Java application, based on Java 3D technology. • The server is a multi-threaded C++ application, and includes the 3D algorithms.
Project Features • Comparing a 3D object versus a bank of objects, and returning the 50 most similar objects, by a selected object comparison algorithm. • Fetching icons from the server by the above compare or by name/first letters or just the first 50 objects for a start. • Presentation of selected 3D objects using Java 3D. • Upload additional objects files to the server. • Download selected objects from the server. • Distributed system that enables many clients to work with the server. • Enabling the client to run on any platform, requiring minimum resources.
Handling Socket Handling Socket Handling Socket Client-Server Sockets Presentation Client A Client Socket Server Listening Socket Client B Client Socket Client C Client Socket
Server Flow Chart Request from Client Listening Thread Respond Thread Search Get 3D file Get Icons Upload/Download Compare given shape vs. the shapes DB, using one of the comparing algorithms. Send to the client most similar icons. Send to the client icons, by a given string, or first 500 icons. Send to the client 3D shape file for presentation. Get/Put .off file. When uploading, the server creates also .obj and .gif files, and updates the databases.
Searching the data base for the closest 50 shapes to a selected shape Uploading or downloading a shape to/from the data base Client GUI Showing the shape using Java 3D Bringing images from the data-base by name/first letters or first 50
Shapes Examples Shapes can be rotated by moving the mouse on the shape When rotating a shape, the shades and light on it are changing
Java 3D Scene Structure Virtual Universe Locale Object Branch Group Nodes BG BG Transform Group Nodes Behavior Node T T View Platform Object Shape3D Node Appearance Geometry