Changes between Version 2 and Version 3 of ossimPlanetAPI


Ignore:
Timestamp:
Feb 4, 2008, 10:27:28 AM (16 years ago)
Author:
mlucas17
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • ossimPlanetAPI

    v2 v3  
    1616The objective of the ossimPlanet Applications Programming Interface (API) is to make it easy to integrate ossimPlanet capabilities into other programs, solutions, technologies and computer languages.  A properly implemented API will minimize the learning curve and provide a simplified interface to integrate a 3D planet into a new application.  The ossimPlanet API will be implemented in C in an ossimPlanetAPI.c and ossimPlanetAPI.h header file.  That interface will be wrapped to provide bindings to other languages (Java, Python, Cocoa, etc) to provide native interfaces for the project.  There will initially be three modes, depending on application requirements, for use of the API:
    1717
    18 # The application owns and controls its own OpenGL Context and embeds planet as another drawable (SCOPES)
    19 # The application owns and controls its own OpenSceneGraph,  planet is just a node in that scene graph
    20 # The application gets all OpenSceneGraph and viewing capabilites from ossimPlanet, it creates the context and the rendering window
     18 # The application owns and controls its own OpenGL Context and embeds planet as another drawable (SCOPES)
     19 # The application owns and controls its own OpenSceneGraph,  planet is just a node in that scene graph
     20 # The application gets all OpenSceneGraph and viewing capabilites from ossimPlanet, it creates the context and the rendering window
    2121
    2222The API should simplify the initialization and viewing of a fully capable planet with a minimum number of program calls.  The API implementation strategy will take advantage of the existing router/action communications infrastructure that is already established in ossimPlanet.  Once the planet is up and running, virtually all other functions can be controlled by sending messages to ossimPlanet.  These messages and their corresponding actions will be defined in a separate section of this API.  Java and other languages have simple mechanisms to transmit messages with standard communications protocols.  These requests can be sent generically at run time to trigger desired behavior in local or remote planets.
    2323
    2424This document will take a top down approach to the API and implement some quick start guides to show the developer how to quickly implement an application that incorporates ossimPlanet capabilities.  The ultimate reference for the API will be ossimPlanet/include/ossimPlanet/ossimPlanetApi.h and ossimPlanet/src/ossimPlanet/ossimPlanetApi.cpp in the svn ossim repository.  To check out the ossim repository, type in the following from a terminal:
     25
     26{{{
    2527 svn co https://svn.osgeo.org/ossim/trunk .
    2628 For non developers use the technique that does not go through a secure socket:
    2729 svn co http://svn.osgeo.org/ossim/trunk .
    2830 (note the trailing . )
     31}}}
    2932
    3033== Quickstart Guide ==
     
    3235There are three potential paths to integrating ossimPlanet into your application:
    3336
    34  #  The application owns and controls its own OpenGL Context and embeds planet as another drawable (SCOPES)
     37 #  The application owns and controls its own OpenGL Context and embeds planet as another drawable
    3538 #  The application owns and controls its own OpenSceneGraph,  planet is just a node in that scene graph
    3639 #  The application gets all OpenSceneGraph and viewing capabilites from ossimPlanet, it creates the context and the rendering window