HOOPS/3dGS I.M. Interface

     << Back      Full Index      Forward >>


hcd.h

00001 /*
00002  * Copyright (c) 1998 by Tech Soft 3D, LLC.
00003  * The information contained herein is confidential and proprietary to
00004  * Tech Soft 3D, LLC., and considered a trade secret as defined under
00005  * civil and criminal statutes.  Tech Soft 3D shall pursue its civil
00006  * and criminal remedies in the event of unauthorized use or misappropriation
00007  * of its trade secrets.  Use of this information by anyone other than
00008  * authorized employees of Tech Soft 3D, LLC. is granted only under a
00009  * written non-disclosure agreement, expressly prescribing the scope and
00010  * manner of such use.
00011  *
00012  * $Id: hcd_8h-source.html,v 1.29 2008-03-10 07:09:28 stage Exp $
00013  */
00014 
00015 #ifndef HCD_DEFINED
00016 #define HCD_DEFINED
00017 
00018 #include "hc.h"
00019 
00020 
00021 #ifndef HCD_POINT
00022 #  define HCD_POINT void
00023 #endif
00024 
00025 /* start by defining the macros necessary to intercept some calls */ 
00026 #define HC_Delete_By_Key(a0) HC_DDelete_By_Key(a0) 
00027 #define HC_Delete_Segment(a0) HC_DDelete_Segment(a0)
00028 #define HC_Flush_By_Key(a0) HC_DFlush_By_Key(a0)
00029 #define HC_Flush_Contents(a0,a1) HC_DFlush_Contents(a0,a1)
00030 #define HC_Flush_Geometry(a0) HC_DFlush_Contents(a0,"geometry");
00031 
00032 /* this one is no longer necessary (the functionality moved into 
00033  * HC_Reset_System) but provided for backward compatibility */
00034 #define HC_DReset_System()
00035 
00036  /*  */
00037 
00038 /* prototypes for the intercepted calls */
00039 HC_EXTERNAL void HC_CDECL HC_DDelete_By_Key HC_PROTO ((HC_KEY));
00040 HC_EXTERNAL void HC_CDECL HC_DDelete_Segment HC_PROTO ((const char *));
00041 HC_EXTERNAL void HC_CDECL HC_DFlush_By_Key HC_PROTO ((HC_KEY));
00042 HC_EXTERNAL void HC_CDECL HC_DFlush_Contents HC_PROTO ((
00043                 const char *, const char *));
00044 HC_EXTERNAL void HC_CDECL HC_DCleanup HC_PROTO (());
00045 
00046 /* prototypes for the new calls */
00047 
00048 /* Compute Routines */
00049 HC_EXTERNAL void HC_CDECL HC_DCompute_Optimized_Shell HC_PROTO ((
00050                 int, const HCD_POINT *, const float *, int, const int *, const char *, int *, HCD_POINT *, int *, int *, int *, int *));
00051 #define HC_DCompute_Minimized_Shell(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10) HC_DCompute_Optimized_Shell(a0,a1,NULL,a2,a3,a4,a5,a6,a7,a8,a9,a10)
00052 HC_EXTERNAL HC_BOOLEAN HC_CDECL HC_DCompute_Coordinates HC_PROTO ((
00053                 const char *, const char *, const HCD_POINT *, const char *, HCD_POINT *));
00054 HC_EXTERNAL void HC_CDECL HC_DCompute_Transformed_Points HC_PROTO ((
00055                 int, const HCD_POINT *, const double *, HCD_POINT *));
00056 
00057 
00058 /* NURBS Curves */
00059 HC_EXTERNAL HC_KEY HC_CDECL HC_DQKInsert_NURBS_Curve HC_PROTO ((
00060                 const char *, int, int, const HCD_POINT *, 
00061                 const double *, const double *, double, double));
00062 HC_EXTERNAL void HC_CDECL HC_DEdit_NURBS_Curve HC_PROTO (( 
00063                 HC_KEY, int, int, int, int, const HCD_POINT *, const double *, const double* ));
00064 HC_EXTERNAL void HC_CDECL HC_DShow_NURBS_Curve HC_PROTO (( 
00065                 HC_KEY, int *, int *, HCD_POINT *, double *, double *, double *, double *));
00066 #define HC_DInsert_NURBS_Curve(a0,a1,a2,a3,a4,a5,a6) ((void) HC_DQKInsert_NURBS_Curve(".",a0,a1,a2,a3,a4,a5,a6))
00067 #define HC_DQInsert_NURBS_Curve(a0,a1,a2,a3,a4,a5,a6,a7) ((void) HC_DQKInsert_NURBS_Curve(a0,a1,a2,a3,a4,a5,a6,a7))
00068 #define HC_DKInsert_NURBS_Curve(a0,a1,a2,a3,a4,a5,a6) HC_DQKInsert_NURBS_Curve(".",a0,a1,a2,a3,a4,a5,a6)
00069 
00070 /* NURBS Surfaces */
00071 HC_EXTERNAL HC_KEY HC_CDECL HC_DQKInsert_NURBS_Surface HC_PROTO ((
00072                 const char *, int, int, int, int, 
00073                 const HCD_POINT *, const double *, const double *, const double *));
00074 HC_EXTERNAL void HC_CDECL HC_DEdit_NURBS_Surface HC_PROTO (( 
00075                 HC_KEY, int, int, int, int, int, int, int, int, const HCD_POINT *, const double *, const double*, const double* )); 
00076 HC_EXTERNAL void HC_CDECL HC_DShow_NURBS_Surface HC_PROTO (( 
00077                 HC_KEY, int *, int *, int *, int *, HCD_POINT *, double *, double *, double *));
00078 #define HC_DInsert_NURBS_Surface(a0,a1,a2,a3,a4,a5,a6, a7) ((void) HC_DQKInsert_NURBS_Surface(".",a0,a1,a2,a3,a4,a5,a6,a7))
00079 #define HC_DQInsert_NURBS_Surface(a0,a1,a2,a3,a4,a5,a6,a7, a8) ((void) HC_DQKInsert_NURBS_Surface(a0,a1,a2,a3,a4,a5,a6,a7,a8))
00080 #define HC_DKInsert_NURBS_Surface(a0,a1,a2,a3,a4,a5,a6, a7) HC_DQKInsert_NURBS_Curve(".",a0,a1,a2,a3,a4,a5,a6,a7)
00081 #define HC_DEdit_NURBS_Surface_Points(a0,a1,a2,a3) HC_DEdit_NURBS_Surface(a0,a1,0,0,0,a2,0,0,0,a3,NULL,NULL,NULL)
00082 #define HC_DEdit_NURBS_Surface_Weights(a0,a1,a2,a3) HC_DEdit_NURBS_Surface(a0,0,a1,0,0,0,a2,0,0,NULL,a3,NULL,NULL)
00083 #define HC_DEdit_NURBS_Surface_Knots(a0,a1,a2,a3,a4,a5,a6) HC_DEdit_NURBS_Surface(a0,0,0,a1,a2,0,0,a3,a4,NULL,NULL,a5,a6)
00084 
00085 /* Shells */
00086 HC_EXTERNAL HC_KEY HC_CDECL HC_DQKInsert_Shell HC_PROTO ((
00087                 const char *, int, const HCD_POINT *, int, const int *));
00088 HC_EXTERNAL void HC_CDECL HC_DEdit_Shell_Points HC_PROTO ((
00089                 HC_KEY, int, int, int, const HCD_POINT *));
00090 HC_EXTERNAL void HC_CDECL HC_DShow_Shell HC_PROTO ((
00091                 HC_KEY, int *, HCD_POINT *, int *, int *));
00092 #define HC_DInsert_Shell(a0,a1,a2,a3) ((void) HC_DQKInsert_Shell(".",a0,a1,a2,a3))
00093 #define HC_DQInsert_Shell(a0,a1,a2,a3,a4) ((void) HC_DQKInsert_Shell(a0,a1,a2,a3,a4))
00094 #define HC_DKInsert_Shell(a0,a1,a2,a3) HC_DQKInsert_Shell(".",a0,a1,a2,a3)
00095 
00096 #define HC_DQKInsert_Shell_By_Ref(a0,a1,a2,a3,a4) not_supported
00097 #define HC_DInsert_Shell_By_Ref(a0,a1,a2,a3) ((void) HC_DQKInsert_Shell_By_Ref(".",a0,a1,a2,a3))
00098 #define HC_DQInsert_Shell_By_Ref(a0,a1,a2,a3,a4) ((void) HC_DQKInsert_Shell_By_Ref(a0,a1,a2,a3,a4))
00099 #define HC_DKInsert_Shell_By_Ref(a0,a1,a2,a3) HC_DQKInsert_Shell_By_Ref(".",a0,a1,a2,a3)
00100 
00101 /* Grids */
00102 HC_EXTERNAL HC_KEY HC_CDECL HC_DQKInsert_Grid HC_PROTO ((
00103                 const char *, const char *, const HCD_POINT *, const HCD_POINT *, const HCD_POINT *, int, int));
00104 HC_EXTERNAL void HC_CDECL HC_DShow_Grid HC_PROTO ((
00105                 HC_KEY, char *, HCD_POINT *, HCD_POINT *, HCD_POINT *, int *, int *));
00106 #define HC_DInsert_Grid(a0,a1,a2,a3,a4,a5) ((void) HC_DQKInsert_Grid(".",a0,a1,a2,a3,a4,a5))
00107 #define HC_DQInsert_Grid(a0,a1,a2,a3,a4,a5,a6) ((void) HC_DQKInsert_Grid(a0,a1,a2,a3,a4,a5,a6))
00108 #define HC_DKInsert_Grid(a0,a1,a2,a3,a4,a5) HC_DQKInsert_Grid(".",a0,a1,a2,a3,a4,a5)
00109 
00110 /* Meshes */
00111 HC_EXTERNAL HC_KEY HC_CDECL HC_DQKInsert_Mesh HC_PROTO ((
00112                 const char *, int, int, const HCD_POINT *));
00113 HC_EXTERNAL void HC_CDECL HC_DEdit_Mesh HC_PROTO ((
00114                 HC_KEY, int, int, int, int, const HCD_POINT *));
00115 HC_EXTERNAL void HC_CDECL HC_DShow_Mesh HC_PROTO ((
00116                 HC_KEY, int *, int *, HCD_POINT *));
00117 #define HC_DInsert_Mesh(a0,a1,a2) ((void) HC_DQKInsert_Mesh(".",a0,a1,a2))
00118 #define HC_DQInsert_Mesh(a0,a1,a2,a3) ((void) HC_DQKInsert_Mesh(a0,a1,a2,a3))
00119 #define HC_DKInsert_Mesh(a0,a1,a2) HC_DQKInsert_Mesh(".",a0,a1,a2)
00120 
00121 #define HC_DQKInsert_Mesh_By_Ref(a0,a1,a2,a3) not_supported
00122 #define HC_DInsert_Mesh_By_Ref(a0,a1,a2) ((void) HC_DQKInsert_Mesh_By_Ref(".",a0,a1,a2))
00123 #define HC_DQInsert_Mesh_By_Ref(a0,a1,a2,a3) ((void) HC_DQKInsert_Mesh_By_Ref(a0,a1,a2,a3))
00124 #define HC_DKInsert_Mesh_By_Ref(a0,a1,a2) HC_DQKInsert_Mesh_By_Ref(".",a0,a1,a2)
00125 
00126 /* Polylines */
00127 HC_EXTERNAL HC_KEY HC_CDECL HC_DQKInsert_Polyline HC_PROTO ((
00128                 const char *, int, const HCD_POINT *));
00129 HC_EXTERNAL void HC_CDECL HC_DEdit_Polyline HC_PROTO ((
00130                 HC_KEY, int, int, int, const HCD_POINT *));
00131 HC_EXTERNAL void HC_CDECL HC_DShow_Polyline HC_PROTO ((
00132                 HC_KEY, int *, HCD_POINT *));
00133 #define HC_DInsert_Polyline(a0,a1) ((void) HC_DQKInsert_Polyline(".",a0,a1))
00134 #define HC_DQInsert_Polyline(a0,a1,a2) ((void) HC_DQKInsert_Polyline(a0,a1,a2))
00135 #define HC_DKInsert_Polyline(a0,a1) HC_DQKInsert_Polyline(".",a0,a1)
00136 
00137 HC_EXTERNAL HC_KEY HC_CDECL HC_DQKInsert_Ink HC_PROTO ((
00138                 const char *, double, double, double));
00139 #define HC_DInsert_Ink(a0,a1,a2) ((void)HC_DQKInsert_Ink(".",a0,a1,a2))
00140 #define HC_DQInsert_Ink(a0,a1,a2,a3) ((void)HC_DQKInsert_Ink(a0,a1,a2,a3))
00141 #define HC_DKInsert_Ink(a0,a1,a2) HC_DQKInsert_Ink(".",a0,a1,a2)
00142 #define HC_DQRestart_Ink(a0) HC_QRestart_Ink(a0)
00143 #define HC_DRestart_Ink HC_Restart_Ink
00144 
00145 
00146 /* Lines */
00147 HC_EXTERNAL HC_KEY HC_CDECL HC_DQKInsert_Line HC_PROTO ((
00148                 const char *, double, double, double, double, double, double));
00149 HC_EXTERNAL void HC_CDECL HC_DShow_Line HC_PROTO ((
00150                 HC_KEY, double *, double *, double *, double *, double *, double *));
00151 #define HC_DInsert_Line(a0,a1,a2,a3,a4,a5) ((void) HC_DQKInsert_Line(".",a0,a1,a2,a3,a4,a5))
00152 #define HC_DQInsert_Line(a0,a1,a2,a3,a4,a5,a6) ((void) HC_DQKInsert_Line(a0,a1,a2,a3,a4,a5,a6))
00153 #define HC_DKInsert_Line(a0,a1,a2,a3,a4,a5) HC_DQKInsert_Line(".",a0,a1,a2,a3,a4,a5)
00154 
00155 /* Polygons */
00156 HC_EXTERNAL HC_KEY HC_CDECL HC_DQKInsert_Polygon HC_PROTO ((
00157                 const char *, int, const HCD_POINT *));
00158 HC_EXTERNAL void HC_CDECL HC_DEdit_Polygon HC_PROTO ((
00159                 HC_KEY, int, int, int, const HCD_POINT *));
00160 HC_EXTERNAL void HC_CDECL HC_DShow_Polygon HC_PROTO ((
00161                 HC_KEY, int *, HCD_POINT *));
00162 #define HC_DInsert_Polygon(a0,a1) ((void)HC_DQKInsert_Polygon(".",a0,a1))
00163 #define HC_DQInsert_Polygon(a0,a1,a2) ((void)HC_DQKInsert_Polygon(a0,a1,a2))
00164 #define HC_DKInsert_Polygon(a0,a1) HC_DQKInsert_Polygon(".",a0,a1)
00165 
00166 /* Markers */
00167 HC_EXTERNAL HC_KEY HC_CDECL HC_DQKInsert_Marker HC_PROTO ((
00168                 const char *, double, double, double));
00169 HC_EXTERNAL void HC_CDECL HC_DShow_Marker HC_PROTO ((
00170                 HC_KEY, double *, double *, double *));
00171 #define HC_DInsert_Marker(a0,a1,a2) ((void)HC_DQKInsert_Marker(".",a0,a1,a2))
00172 #define HC_DQInsert_Marker(a0,a1,a2,a3) ((void)HC_DQKInsert_Marker(a0,a1,a2,a3))
00173 #define HC_DKInsert_Marker(a0,a1,a2) HC_DQKInsert_Marker(".",a0,a1,a2)
00174 
00175 /* Cylinders */
00176 HC_EXTERNAL HC_KEY HC_CDECL HC_DQKInsert_Cylinder HC_PROTO ((
00177                 const char *, const HCD_POINT *, const HCD_POINT *, const double, const char *));
00178 HC_EXTERNAL void HC_CDECL HC_DShow_Cylinder HC_PROTO ((
00179                 HC_KEY, HCD_POINT *, HCD_POINT *, double *, char *));
00180 #define HC_DInsert_Cylinder(a0,a1,a2,a3) ((void)HC_DQKInsert_Cylinder(".",a0,a1,a2,a3))
00181 #define HC_DQInsert_Cylinder(a0,a1,a2,a3,a4) ((void)HC_DQKInsert_Cylinder(a0,a1,a2,a3,a4))
00182 #define HC_DKInsert_Cylinder(a0,a1,a2,a3) HC_DQKInsert_Cylinder(".",a0,a1,a2,a3)
00183 
00184 
00185 /* Circles */
00186 HC_EXTERNAL HC_KEY HC_CDECL HC_DQKInsert_Circle HC_PROTO ((
00187                 const char *, const HCD_POINT *, const HCD_POINT *, const HCD_POINT *));
00188 HC_EXTERNAL void HC_CDECL HC_DShow_Circle HC_PROTO ((
00189                 HC_KEY, HCD_POINT *, HCD_POINT *, HCD_POINT *));
00190 #define HC_DInsert_Circle(a0,a1,a2) ((void)HC_DQKInsert_Circle(".",a0,a1,a2))
00191 #define HC_DQInsert_Circle(a0,a1,a2,a3) ((void)HC_DQKInsert_Circle(a0,a1,a2,a3))
00192 #define HC_DKInsert_Circle(a0,a1,a2) HC_DQKInsert_Circle(".",a0,a1,a2)
00193 
00194 
00195 
00196 /* Circular Arcs */
00197 HC_EXTERNAL HC_KEY HC_CDECL HC_DQKInsert_Circular_Arc HC_PROTO ((
00198                 const char *, const HCD_POINT *, const HCD_POINT *, const HCD_POINT *));
00199 HC_EXTERNAL void HC_CDECL HC_DShow_Circular_Arc HC_PROTO ((
00200                 HC_KEY, HCD_POINT *, HCD_POINT *, HCD_POINT *));
00201 #define HC_DInsert_Circular_Arc(a0,a1,a2) ((void)HC_DQKInsert_Circular_Arc(".",a0,a1,a2))
00202 #define HC_DQInsert_Circular_Arc(a0,a1,a2,a3) ((void)HC_DQKInsert_Circular_Arc(a0,a1,a2,a3))
00203 #define HC_DKInsert_Circular_Arc(a0,a1,a2) HC_DQKInsert_Circular_Arc(".",a0,a1,a2)
00204 
00205 /* Circular Chords */
00206 HC_EXTERNAL HC_KEY HC_CDECL HC_DQKInsert_Circular_Chord HC_PROTO ((
00207                 const char *, const HCD_POINT *, const HCD_POINT *, const HCD_POINT *));
00208 HC_EXTERNAL void HC_CDECL HC_DShow_Circular_Chord HC_PROTO ((
00209                 HC_KEY, HCD_POINT *, HCD_POINT *, HCD_POINT *));
00210 #define HC_DInsert_Circular_Chord(a0,a1,a2) ((void)HC_DQKInsert_Circular_Chord(".",a0,a1,a2))
00211 #define HC_DQInsert_Circular_Chord(a0,a1,a2,a3) ((void)HC_DQKInsert_Circular_Chord(a0,a1,a2,a3))
00212 #define HC_DKInsert_Circular_Chord(a0,a1,a2) HC_DQKInsert_Circular_Chord(".",a0,a1,a2)
00213 
00214 /* Circular Wedges */
00215 HC_EXTERNAL HC_KEY HC_CDECL HC_DQKInsert_Circular_Wedge HC_PROTO ((
00216                 const char *, const HCD_POINT *, const HCD_POINT *, const HCD_POINT *));
00217 HC_EXTERNAL void HC_CDECL HC_DShow_Circular_Wedge HC_PROTO ((
00218                 HC_KEY, HCD_POINT *, HCD_POINT *, HCD_POINT *));
00219 #define HC_DInsert_Circular_Wedge(a0,a1,a2) ((void)HC_DQKInsert_Circular_Wedge(".",a0,a1,a2))
00220 #define HC_DQInsert_Circular_Wedge(a0,a1,a2,a3) ((void)HC_DQKInsert_Circular_Wedge(a0,a1,a2,a3))
00221 #define HC_DKInsert_Circular_Wedge(a0,a1,a2) HC_DQKInsert_Circular_Wedge(".",a0,a1,a2)
00222 
00223 /* Ellipses */
00224 HC_EXTERNAL HC_KEY HC_CDECL HC_DQKInsert_Ellipse HC_PROTO ((
00225                 const char *, const HCD_POINT *, const HCD_POINT *, const HCD_POINT *));
00226 HC_EXTERNAL void HC_CDECL HC_DShow_Ellipse HC_PROTO ((
00227                 HC_KEY, HCD_POINT *, HCD_POINT *, HCD_POINT *));
00228 #define HC_DInsert_Ellipse(a0,a1,a2) ((void)HC_DQKInsert_Ellipse(".",a0,a1,a2))
00229 #define HC_DQInsert_Ellipse(a0,a1,a2,a3) ((void)HC_DQKInsert_Ellipse(a0,a1,a2,a3))
00230 #define HC_DKInsert_Ellipse(a0,a1,a2) HC_DQKInsert_Ellipse(".",a0,a1,a2)
00231 
00232 
00233 /* Elliptical Arcs */
00234 HC_EXTERNAL HC_KEY HC_CDECL HC_DQKInsert_Elliptical_Arc HC_PROTO ((
00235                 const char *, const HCD_POINT *, const HCD_POINT *, const HCD_POINT *, double, double));
00236 HC_EXTERNAL void HC_CDECL HC_DShow_Elliptical_Arc HC_PROTO ((
00237                 HC_KEY, HCD_POINT *, HCD_POINT *, HCD_POINT *, double *, double *));
00238 #define HC_DInsert_Elliptical_Arc(a0,a1,a2,a3,a4) ((void) HC_DQKInsert_Elliptical_Arc(".",a0,a1,a2,a3,a4))
00239 #define HC_DQInsert_Elliptical_Arc(a0,a1,a2,a3,a4,a5) ((void) HC_DQKInsert_Elliptical_Arc(a0,a1,a2,a3,a4,a5))
00240 #define HC_DKInsert_Elliptical_Arc(a0,a1,a2,a3,a4) HC_DQKInsert_Elliptical_Arc(".",a0,a1,a2,a3,a4)
00241 
00242 
00243 /* Cutting Planes */
00244 HC_EXTERNAL HC_KEY HC_CDECL HC_DQKInsert_Cutting_Plane HC_PROTO ((
00245                 const char *, double, double, double, double));
00246 HC_EXTERNAL void HC_CDECL HC_DShow_Cutting_Plane HC_PROTO ((
00247                 HC_KEY, double *, double *, double *, double *));
00248 #define HC_DInsert_Cutting_Plane(a0,a1,a2,a3) ((void)HC_DQKInsert_Cutting_Plane(".",a0,a1,a2,a3))
00249 #define HC_DQInsert_Cutting_Plane(a0,a1,a2,a3,a4) ((void)HC_DQKInsert_Cutting_Plane(a0,a1,a2,a3,a4))
00250 #define HC_DKInsert_Cutting_Plane(a0,a1,a2,a3) HC_DQKInsert_Cutting_Plane(".",a0,a1,a2,a3)
00251 
00252 /* Images */
00253 HC_EXTERNAL HC_KEY HC_CDECL HC_DQKInsert_Image HC_PROTO ((
00254                 const char *, double, double, double, const char *, int, int, const HC_PIXEL *));
00255 HC_EXTERNAL void HC_CDECL HC_DMove_Image HC_PROTO ((
00256                 HC_KEY, double, double, double));
00257 HC_EXTERNAL void HC_CDECL HC_DShow_Image HC_PROTO ((
00258                 HC_KEY, double *, double *, double *, char *, int *, int *, HC_PIXEL *));
00259 #define HC_DInsert_Image(a0,a1,a2,a3,a4,a5,a6)  ((void) HC_DQKInsert_Image(".",a0,a1,a2,a3,a4,a5,a6))
00260 #define HC_DQInsert_Image(a0,a1,a2,a3,a4,a5,a6,a7) ((void) HC_DQKInsert_Image(a0,a1,a2,a3,a4,a5,a6,a7))
00261 #define HC_DKInsert_Image(a0,a1,a2,a3,a4,a5,a6) HC_DQKInsert_Image(".",a0,a1,a2,a3,a4,a5,a6)
00262 
00263 #define HC_DQKInsert_Image_By_Ref(a0,a1,a2,a3,a4,a5,a6,a7) not_supported
00264 #define HC_DInsert_Image_By_Ref(a0,a1,a2,a3,a4,a5,a6)   ((void) HC_DQKInsert_Image_By_Ref(".",a0,a1,a2,a3,a4,a5,a6))
00265 #define HC_DQInsert_Image_By_Ref(a0,a1,a2,a3,a4,a5,a6,a7) ((void) HC_DQKInsert_Image_By_Ref(a0,a1,a2,a3,a4,a5,a6,a7))
00266 #define HC_DKInsert_Image_By_Ref(a0,a1,a2,a3,a4,a5,a6) HC_DQKInsert_Image_By_Ref(".",a0,a1,a2,a3,a4,a5,a6)
00267 
00268 /* Local Lights */
00269 HC_EXTERNAL HC_KEY HC_CDECL HC_DQKInsert_Local_Light HC_PROTO ((
00270                 const char *, double, double, double));
00271 HC_EXTERNAL void HC_CDECL HC_DShow_Local_Light HC_PROTO ((
00272                 HC_KEY, double *, double *, double *));
00273 #define HC_DInsert_Local_Light(a0,a1,a2) ((void)HC_DQKInsert_Local_Light(".",a0,a1,a2))
00274 #define HC_DQInsert_Local_Light(a0,a1,a2,a3) ((void)HC_DQKInsert_Local_Light(a0,a1,a2,a3))
00275 #define HC_DKInsert_Local_Light(a0,a1,a2) HC_DQKInsert_Local_Light(".",a0,a1,a2)
00276 
00277 /* Spot Lights */
00278 HC_EXTERNAL HC_KEY HC_CDECL HC_DQKInsert_Spot_Light HC_PROTO ((
00279                 const char *, const HCD_POINT *, const HCD_POINT *, const char *));
00280 HC_EXTERNAL void HC_CDECL HC_DShow_Spot_Light HC_PROTO ((
00281                 HC_KEY, HCD_POINT *, HCD_POINT *, char *));
00282 #define HC_DInsert_Spot_Light(a0,a1,a2) ((void)HC_DQKInsert_Spot_Light(".",a0,a1,a2))
00283 #define HC_DQInsert_Spot_Light(a0,a1,a2,a3) ((void)HC_DQKInsert_Spot_Light(a0,a1,a2,a3))
00284 #define HC_DKInsert_Spot_Light(a0,a1,a2) HC_DQKInsert_Spot_Light(".",a0,a1,a2)
00285 
00286 /* Distant Lights */
00287 HC_EXTERNAL HC_KEY HC_CDECL HC_DQKInsert_Distant_Light HC_PROTO ((
00288                 const char *, double, double, double));
00289 HC_EXTERNAL void HC_CDECL HC_DMove_Distant_Light HC_PROTO ((
00290                 HC_KEY, double, double, double));
00291 HC_EXTERNAL void HC_CDECL HC_DShow_Distant_Light HC_PROTO ((
00292                 HC_KEY, double *, double *, double *));
00293 #define HC_DInsert_Distant_Light(a0,a1,a2) ((void)HC_DQKInsert_Distant_Light(".",a0,a1,a2))
00294 #define HC_DQInsert_Distant_Light(a0,a1,a2,a3) ((void)HC_DQKInsert_Distant_Light(a0,a1,a2,a3))
00295 #define HC_DKInsert_Distant_Light(a0,a1,a2) HC_DQKInsert_Distant_Light(".",a0,a1,a2)
00296 
00297 /* Area Lights */
00298 HC_EXTERNAL HC_KEY HC_CDECL HC_DQKInsert_Area_Light HC_PROTO ((
00299                 const char *, int, const HCD_POINT *, const char *));
00300 HC_EXTERNAL void HC_CDECL HC_DShow_Area_Light HC_PROTO ((
00301                 HC_KEY, int *, HCD_POINT *, char *));
00302 #define HC_DInsert_Area_Light(a0,a1,a2) ((void)HC_DQKInsert_Area_Light(".",a0,a1,a2))
00303 #define HC_DQInsert_Area_Light(a0,a1,a2,a3) ((void)HC_DQKInsert_Area_Light(a0,a1,a2,a3))
00304 #define HC_DKInsert_Area_Light(a0,a1,a2) HC_DQKInsert_Area_Light(".",a0,a1,a2)
00305 
00306 /* Text */
00307 HC_EXTERNAL HC_KEY HC_CDECL HC_DQKInsert_Text HC_PROTO ((
00308                 const char *, double, double, double, const char *));
00309 HC_EXTERNAL void HC_CDECL HC_DShow_Text HC_PROTO ((
00310                 HC_KEY, double *, double *, double *, char *));
00311 #define HC_DInsert_Text(a0,a1,a2,a3) ((void)HC_DQKInsert_Text(".",a0,a1,a2,a3))
00312 #define HC_DQInsert_Text(a0,a1,a2,a3,a4) ((void)HC_DQKInsert_Text(a0,a1,a2,a3,a4))
00313 #define HC_DKInsert_Text(a0,a1,a2,a3) HC_DQKInsert_Text(".",a0,a1,a2,a3)
00314 
00315 
00316 HC_EXTERNAL HC_KEY HC_CDECL HC_DQKInsert_Text_With_Encoding HC_PROTO ((
00317                 const char *, double, double, double, const char *, const char *));
00318 HC_EXTERNAL void HC_CDECL HC_DShow_Text_With_Encoding HC_PROTO ((
00319                 HC_KEY, double *, double *, double *, char *, char *));
00320 #define HC_DInsert_Text_With_Encoding(a0,a1,a2,a3,a4) ((void)HC_DQKInsert_Text_With_Encoding(".",a0,a1,a2,a3,a4))
00321 #define HC_DQInsert_Text_With_Encoding(a0,a1,a2,a3,a4,a5) ((void)HC_DQKInsert_Text_With_Encoding(a0,a1,a2,a3,a4,a5))
00322 #define HC_DKInsert_Text_With_Encoding(a0,a1,a2,a3,a4) HC_DQKInsert_Text_With_Encoding(".",a0,a1,a2,a3,a4)
00323 
00324 HC_EXTERNAL void HC_CDECL HC_DSet_Camera HC_PROTO ((
00325                 const HCD_POINT *, const HCD_POINT *, const HCD_POINT *, double, double, const char * ));
00326 HC_EXTERNAL void HC_CDECL HC_DSet_Camera_Position HC_PROTO ((
00327                 double, double, double ));
00328 HC_EXTERNAL void HC_CDECL HC_DSet_Camera_Target HC_PROTO ((
00329                 double, double, double ));
00330 HC_EXTERNAL void HC_CDECL HC_DSet_Camera_Up_Vector HC_PROTO ((
00331                 double, double, double ));
00332 HC_EXTERNAL void HC_CDECL HC_DSet_Camera_Field HC_PROTO ((
00333                 double, double ));
00334 HC_EXTERNAL void HC_CDECL HC_DShow_Camera HC_PROTO ((
00335                 HCD_POINT *, HCD_POINT *, HCD_POINT *, double *, double *, char * ));
00336 HC_EXTERNAL void HC_CDECL HC_DShow_Camera_Position HC_PROTO ((
00337                 double *, double *, double * ));
00338 HC_EXTERNAL void HC_CDECL HC_DShow_Camera_Target HC_PROTO ((
00339                 double *, double *, double * ));
00340 HC_EXTERNAL void HC_CDECL HC_DShow_Camera_Up_Vector HC_PROTO ((
00341                 double *, double *, double * ));
00342 HC_EXTERNAL void HC_CDECL HC_DShow_Camera_Field HC_PROTO ((
00343                 double *, double * ));
00344 HC_EXTERNAL HC_KEY HC_CDECL HC_DKCompute_Boolean_Shell HC_PROTO ((
00345         int, const HCD_POINT *, const HC_POINT *, int, const int *, int, const HCD_POINT *, const HC_POINT *, int, const int *, const char *,
00346         const HC_POINT *, const HC_POINT *, const unsigned short *, const unsigned short *));
00347  
00348 HC_EXTERNAL int HC_DShow_Existence_By_Key HC_PROTO (( 
00349         HC_KEY ));
00350 
00351 #endif /* HCD_DEFINED */
Main Index
HOOPS/3dGS I.M. Interface

     << Back      Full Index      Forward >>