Difference between revisions of "Geometry Service Project Main"

(Hrm, looks like a width var on the table is neeed for InternetExplorer)
(Update definitions)
Line 8: Line 8:
 
===The Geometry Service consists of three major pieces===
 
===The Geometry Service consists of three major pieces===
  
* [[iBME_GeometryEngine|Geometry Engine]] - C++ library consisting of the existing BRL-CAD libraries and added functionality such as integration of '''all''' BRL-CAD file format converters and SVN storage utilities.
+
* '''Geometry Engine''':  The Geometry Engine(GE) is a stateless library built on top of the existing BRL-CAD Libraries: libbu, libbn, libdm, libged, librt, etc. The GE contains all geometric processing functions to include Format Converters, Tessilation, and image processors.
* [[iBME_GeometryService|Geometry Service]] - Background service that leverages a Geometry Engine, a Session Manager, an Access Manager, and a Communications Manager to facilitate multi-user, multi-threaded, networked access to the Geometry Engine.
+
 
* [[iBME_GUI|GUI]] - Standalone client that provides visualization of geometry and captures user input. This client is connected a Geometry Service over the network via the Geometry Service Network (GSNet) Protocol.
+
* '''Geometry Service''':  The Geometry Service(GS) is an application that expands on the functionality of the Geometry Engine (GE) by adding Multi-user Communications and Session Management, Access Controls, Multithread capabilities and SVN utilities.  
 +
 
 +
* '''"New" GUI Project''': Currently nicknamed "G3D", it is a standalone client that provides visualization of geometry and captures user input. G3D is designed to be connected to a Geometry Service over the network via the Geometry Service Network (GSNet) Protocol.
  
 
----
 
----
 +
 
===QuickLinks===
 
===QuickLinks===
 
<!-- hackish, I know.... -->
 
<!-- hackish, I know.... -->

Revision as of 10:37, 19 January 2011

Geometry Service
The Geometry Service Project (GS) is the internal name for a project under development that aims to restructure the geometry management services within BRL-CAD and provide a new user interface. More specifically, the restructuring aims to leverage an object-oriented design and encapsulate much of the existing functionality in BRL-CAD through three C++ interfaces.

The Geometry Service consists of three major pieces

  • Geometry Engine: The Geometry Engine(GE) is a stateless library built on top of the existing BRL-CAD Libraries: libbu, libbn, libdm, libged, librt, etc. The GE contains all geometric processing functions to include Format Converters, Tessilation, and image processors.
  • Geometry Service: The Geometry Service(GS) is an application that expands on the functionality of the Geometry Engine (GE) by adding Multi-user Communications and Session Management, Access Controls, Multithread capabilities and SVN utilities.
  • "New" GUI Project: Currently nicknamed "G3D", it is a standalone client that provides visualization of geometry and captures user input. G3D is designed to be connected to a Geometry Service over the network via the Geometry Service Network (GSNet) Protocol.

QuickLinks

Alt Text                               Developer Pages
User Pages Developer Pages

Implementation Particulars

  • The Geomtery Service will be written in C/C++ to allow runtime-extensibility and reuse of code in future projects.
  • The Geomtery Service leverages the proven and stable functionalities in BRL-CAD's libraries and binaries.
  • The Geometry Service provides an easy to use and extensible network protocol (GSNet Protocol) for interacting with a running Geometry Server.
  • The Geometry Engine provides a clean and easy to use API for BRL-CAD's libraries and binaries.
  • Each of the three major pieces will be stand-alone products