This is i3d_api.h in view mode; [Download] [Up]
/* * Copyright 1993 by Cub'x Systemes * * All Rights Reserved * * Permission to use, copy, and distribute this software and its * documentation for the purpose of making new intuitiv'3d modules. * This copyright notice must appears in all copies that you distribute. * The name of Cub'x Systeme should not be used in advertising or publicity * without specific, written prior permission. * CUB'X SYSTEMES DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING * ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL * CUB'X SYSTEMES BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR * ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS * SOFTWARE. */ /******************************************************************************* * * * Project intuitiv'3d * * ------------------- * * * * * * File: i3d_api.h * * * * * * Creation date: Mon Jul 26 11:52:40 GMT+0200 1993 * * * * * * Contents: i3d's API classes and constant definition * * * * * *******************************************************************************/ #import <3Dkit/next3d.h> #import <i3d/CXOpenPanel.h> /******************************************************************************* * * * Intuitiv'3d classe name are changing, please use CX3Dxxx instead of N3Dxxx * * * *******************************************************************************/ #define CX3DLightSource N3DLightSource #define CX3DAttributeInsp AttributeInsp #define CX3DNode N3DNode #define CX3DObject N3DObject #define CX3DGenericShaderInspector GenericShaderInspector #define CX3DLightTransformInsp LightTransformInsp #define CX3DLightDisplayInsp LightDisplayInsp #define CX3DLightShaderInsp LightShaderInsp /******************************************************************************* * * * Types and useful macros * * * *******************************************************************************/ typedef struct { float x,y; } Point2d; typedef struct { float minx,maxx; float miny,maxy; } N3DRect,CX3DRect; #define CX(n) ((n)[0]) #define CY(n) ((n)[1]) #define CZ(n) ((n)[2]) #define CRED(n) CX(n) #define CGREEN(n) CY(n) #define CBLUE(n) CZ(n) #define ZERO(n) ((n) == 0.0) /* * Bounding box constants */ #define BB_MINX(b) ((b)[0]) #define BB_MAXX(b) ((b)[1]) #define BB_MINY(b) ((b)[2]) #define BB_MAXY(b) ((b)[3]) #define BB_MINZ(b) ((b)[4]) #define BB_MAXZ(b) ((b)[5]) /* * Prerendering level */ #define PRERENDER_TEXTURE 1 #define PRERENDER_DEFAULT 2 /******************************************************************************* * * * Some methods that you can call * * * *******************************************************************************/ @protocol Displayer_api - constLightSet; - rootObject; - scene; - setShouldRefresh; - justDisplay; - renderShadowMapIn:(const char*) filename from: (float*) from toward: (float*) to shadowDetail: (float) aFloat; - renderShadowMapIn:(const char*) filename from: (float*) from toward: (float*) to shadowDetail: (float) aFloat perspective: (BOOL) doPerspective screenWindow: (N3DRect*) swrect fov: (float) fov; - executeRibFile:(const char*) filename panelTitle:(const char*) title; - renderMapIn:(const char*) filename from: (float*) from toward: (float*) to details: (float) aFloat roll: (float) roll; - renderMapIn:(const char*)filename details: (float) details transform: (RtMatrix) t; - makeTmpFileNameIn:(char*) buff; - destroyTmpFile:(const char*) filename; - (int)preRenderLevel; @end @protocol Application_api - unlinkThisFileSomeday:(const char*) filename; - selectedObject; - currentScene; - addObjectToFree: anObject; - currentCamera; - (const char*) versionString; - (BOOL) photoRealistRender; - moduleManager; - (const char*) tmpFolder; - (BOOL) fileExists:(const char*) filename; @end @protocol Scene_api - selectedObject; - (BOOL) haveObjectInPath: anObject; - firstSelectedSet; - displayScene; - forceDisplayScene; - selectObject: anObject; - addObject: anObject; - delete: sender; @end @protocol Inspector_api - ok: sender; - revert: sender; - (BOOL) isRealTime; - currentObject; - currentScene; @end @protocol ModuleManager_api - (BOOL) getPath:(char*)path forResource:(const char*)resName ofType:(const char*)aType; @end /******************************************************************************* * * * Usefull functions * * * *******************************************************************************/ extern void calcThetamaxBound(float radius,float thetamax,RtBound aBox); extern void calcThetamaxVolumeBound(float radius,float thetamax,RtBound aBox); extern void rotate2d(Point2d *p,float r); extern void CX3DMult3DPoints( RtPoint *in, unsigned int n , RtMatrix t , RtPoint *out );
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.