Mac OS 9
QD3DStyle.h
Go to the documentation of this file.
1 
19 #ifndef __QD3DSTYLE__
20 #define __QD3DSTYLE__
21 
22 #ifndef __QD3D__
23 #include <QD3D.h>
24 #endif
25 
26 #if PRAGMA_ONCE
27 #pragma once
28 #endif
29 
30 #ifdef __cplusplus
31 extern "C"
32 {
33 #endif
34 
35 #if PRAGMA_IMPORT
36 #pragma import on
37 #endif
38 
39 #if PRAGMA_STRUCT_ALIGN
40 #pragma options align = power
41 #elif PRAGMA_STRUCT_PACKPUSH
42 #pragma pack(push, 2)
43 #elif PRAGMA_STRUCT_PACK
44 #pragma pack(2)
45 #endif
46 
47 #if PRAGMA_ENUM_ALWAYSINT
48 #if defined(__fourbyteints__) && !__fourbyteints__
49 #define __QD3DSTYLE__RESTORE_TWOBYTEINTS
50 #pragma fourbyteints on
51 #endif
52 #pragma enumsalwaysint on
53 #elif PRAGMA_ENUM_OPTIONS
54 #pragma option enum =int
55 #elif PRAGMA_ENUM_PACK
56 #if __option(pack_enums)
57 #define __QD3DSTYLE__RESTORE_PACKED_ENUMS
58 #pragma options(!pack_enums)
59 #endif
60 #endif
61 
62 /*******************************************************************************
63  ** **
64  ** Style Base Class Routines **
65  ** **
66  *****************************************************************************/
67 #if CALL_NOT_IN_CARBON
77  Q3Style_GetType(TQ3StyleObject style);
78 
87  TQ3Status
88  Q3Style_Submit(TQ3StyleObject style, TQ3ViewObject view);
89 
90 /*******************************************************************************
91  ** **
92  ** Subdivision **
93  ** **
94  *****************************************************************************/
95 #endif
98  {
99  kQ3SubdivisionMethodConstant = 0,
100  kQ3SubdivisionMethodWorldSpace = 1,
101  kQ3SubdivisionMethodScreenSpace = 2
102  };
104 
106  {
108  float c1;
109  float c2;
110  };
112 #if CALL_NOT_IN_CARBON
121  TQ3StyleObject
123 
132  TQ3Status
134  TQ3ViewObject view);
135 
144  TQ3Status
145  Q3SubdivisionStyle_SetData(TQ3StyleObject subdiv,
146  const TQ3SubdivisionStyleData *data);
147 
156  TQ3Status
157  Q3SubdivisionStyle_GetData(TQ3StyleObject subdiv,
159 
160  /*******************************************************************************
161  ** **
162  ** Pick ID **
163  ** **
164  *****************************************************************************/
173  TQ3StyleObject
174  Q3PickIDStyle_New(unsigned long id);
175 
184  TQ3Status
185  Q3PickIDStyle_Submit(unsigned long id, TQ3ViewObject view);
186 
195  TQ3Status
196  Q3PickIDStyle_Get(TQ3StyleObject pickIDObject, unsigned long *id);
197 
206  TQ3Status
207  Q3PickIDStyle_Set(TQ3StyleObject pickIDObject, unsigned long id);
208 
209 /*******************************************************************************
210  ** **
211  ** Pick Parts **
212  ** **
213  *****************************************************************************/
214 #endif
217  {
218  kQ3PickPartsObject = 0,
219  kQ3PickPartsMaskFace = 1 << 0,
220  kQ3PickPartsMaskEdge = 1 << 1,
221  kQ3PickPartsMaskVertex = 1 << 2
222  };
224 
225  typedef unsigned long TQ3PickParts;
226 #if CALL_NOT_IN_CARBON
235  TQ3StyleObject
236  Q3PickPartsStyle_New(TQ3PickParts parts);
237 
246  TQ3Status
247  Q3PickPartsStyle_Submit(TQ3PickParts parts, TQ3ViewObject view);
248 
257  TQ3Status
258  Q3PickPartsStyle_Get(TQ3StyleObject pickPartsObject, TQ3PickParts *parts);
259 
268  TQ3Status
269  Q3PickPartsStyle_Set(TQ3StyleObject pickPartsObject, TQ3PickParts parts);
270 
271  /*******************************************************************************
272  ** **
273  ** Receive Shadows **
274  ** **
275  *****************************************************************************/
284  TQ3StyleObject
285  Q3ReceiveShadowsStyle_New(TQ3Boolean receives);
286 
295  TQ3Status
296  Q3ReceiveShadowsStyle_Submit(TQ3Boolean receives, TQ3ViewObject view);
297 
306  TQ3Status
307  Q3ReceiveShadowsStyle_Get(TQ3StyleObject styleObject, TQ3Boolean *receives);
308 
317  TQ3Status
318  Q3ReceiveShadowsStyle_Set(TQ3StyleObject styleObject, TQ3Boolean receives);
319 
320 /*******************************************************************************
321  ** **
322  ** Fill Styles **
323  ** **
324  *****************************************************************************/
325 #endif
328  {
329  kQ3FillStyleFilled = 0,
330  kQ3FillStyleEdges = 1,
331  kQ3FillStylePoints = 2
332  };
333  typedef enum TQ3FillStyle TQ3FillStyle;
334 
335 #if CALL_NOT_IN_CARBON
344  TQ3StyleObject
346 
355  TQ3Status
356  Q3FillStyle_Submit(TQ3FillStyle fillStyle, TQ3ViewObject view);
357 
366  TQ3Status
367  Q3FillStyle_Get(TQ3StyleObject styleObject, TQ3FillStyle *fillStyle);
368 
377  TQ3Status
378  Q3FillStyle_Set(TQ3StyleObject styleObject, TQ3FillStyle fillStyle);
379 
380 /*******************************************************************************
381  ** **
382  ** Backfacing Styles **
383  ** **
384  *****************************************************************************/
385 #endif
388  {
389  kQ3BackfacingStyleBoth = 0,
390  kQ3BackfacingStyleRemove = 1,
391  kQ3BackfacingStyleFlip = 2
392  };
394 
395 #if CALL_NOT_IN_CARBON
404  TQ3StyleObject
406 
415  TQ3Status
417  TQ3ViewObject view);
418 
427  TQ3Status
428  Q3BackfacingStyle_Get(TQ3StyleObject backfacingObject,
429  TQ3BackfacingStyle *backfacingStyle);
430 
439  TQ3Status
440  Q3BackfacingStyle_Set(TQ3StyleObject backfacingObject,
441  TQ3BackfacingStyle backfacingStyle);
442 
443 /*******************************************************************************
444  ** **
445  ** Interpolation Types **
446  ** **
447  *****************************************************************************/
448 #endif
451  {
452  kQ3InterpolationStyleNone = 0,
453  kQ3InterpolationStyleVertex = 1,
454  kQ3InterpolationStylePixel = 2
455  };
457 
458 #if CALL_NOT_IN_CARBON
467  TQ3StyleObject
469 
478  TQ3Status
480  TQ3ViewObject view);
481 
490  TQ3Status
491  Q3InterpolationStyle_Get(TQ3StyleObject interpolationObject,
492  TQ3InterpolationStyle *interpolationStyle);
493 
502  TQ3Status
503  Q3InterpolationStyle_Set(TQ3StyleObject interpolationObject,
504  TQ3InterpolationStyle interpolationStyle);
505 
506  /*******************************************************************************
507  ** **
508  ** Highlight Style **
509  ** **
510  *****************************************************************************/
519  TQ3StyleObject
521 
530  TQ3Status
531  Q3HighlightStyle_Submit(TQ3AttributeSet highlightAttribute, TQ3ViewObject view);
532 
541  TQ3Status
542  Q3HighlightStyle_Get(TQ3StyleObject highlight,
543  TQ3AttributeSet *highlightAttribute);
544 
553  TQ3Status
554  Q3HighlightStyle_Set(TQ3StyleObject highlight,
555  TQ3AttributeSet highlightAttribute);
556 
557 /*******************************************************************************
558  ** **
559  ** FrontFacing Direction Styles **
560  ** **
561  *****************************************************************************/
562 #endif
565  {
566  kQ3OrientationStyleCounterClockwise = 0,
567  kQ3OrientationStyleClockwise = 1
568  };
570 
571 #if CALL_NOT_IN_CARBON
580  TQ3StyleObject
582 
591  TQ3Status
593  TQ3ViewObject view);
594 
603  TQ3Status
604  Q3OrientationStyle_Get(TQ3StyleObject frontFacingDirectionObject,
605  TQ3OrientationStyle *frontFacingDirection);
606 
615  TQ3Status
616  Q3OrientationStyle_Set(TQ3StyleObject frontFacingDirectionObject,
617  TQ3OrientationStyle frontFacingDirection);
618 
619 /*******************************************************************************
620  ** **
621  ** AntiAlias Style **
622  ** **
623  *****************************************************************************/
624 #endif
627  {
628  kQ3AntiAliasModeMaskEdges = 1 << 0,
629  kQ3AntiAliasModeMaskFilled = 1 << 1
630  };
632 
633  typedef unsigned long TQ3AntiAliasMode;
635  {
636  TQ3Switch state;
637  TQ3AntiAliasMode mode;
638  float quality;
639  };
641 #if CALL_NOT_IN_CARBON
650  TQ3StyleObject
652 
661  TQ3Status
662  Q3AntiAliasStyle_Submit(const TQ3AntiAliasStyleData *data, TQ3ViewObject view);
663 
672  TQ3Status
673  Q3AntiAliasStyle_GetData(TQ3StyleObject styleObject,
674  TQ3AntiAliasStyleData *data);
675 
684  TQ3Status
685  Q3AntiAliasStyle_SetData(TQ3StyleObject styleObject,
686  const TQ3AntiAliasStyleData *data);
687 
688 /*******************************************************************************
689  ** **
690  ** Fog Style **
691  ** **
692  *****************************************************************************/
693 #endif
696  {
697  kQ3FogModeLinear = 0,
698  kQ3FogModeExponential = 1,
699  kQ3FogModeExponentialSquared = 2,
700  kQ3FogModeAlpha = 3
701  };
702  typedef enum TQ3FogMode TQ3FogMode;
703 
705  {
706  TQ3Switch state;
707  TQ3FogMode mode;
708  float fogStart;
709  float fogEnd;
710  float density;
711  TQ3ColorARGB color;
712  };
713  typedef struct TQ3FogStyleData TQ3FogStyleData;
714 #if CALL_NOT_IN_CARBON
723  TQ3StyleObject
725 
734  TQ3Status
735  Q3FogStyle_Submit(const TQ3FogStyleData *data, TQ3ViewObject view);
736 
745  TQ3Status
746  Q3FogStyle_GetData(TQ3StyleObject styleObject, TQ3FogStyleData *data);
747 
756  TQ3Status
757  Q3FogStyle_SetData(TQ3StyleObject styleObject, const TQ3FogStyleData *data);
758 
759 #endif
761 #if PRAGMA_ENUM_ALWAYSINT
762 #pragma enumsalwaysint reset
763 #ifdef __QD3DSTYLE__RESTORE_TWOBYTEINTS
764 #pragma fourbyteints off
765 #endif
766 #elif PRAGMA_ENUM_OPTIONS
767 #pragma option enum =reset
768 #elif defined(__QD3DSTYLE__RESTORE_PACKED_ENUMS)
769 #pragma options(pack_enums)
770 #endif
771 
772 #if PRAGMA_STRUCT_ALIGN
773 #pragma options align = reset
774 #elif PRAGMA_STRUCT_PACKPUSH
775 #pragma pack(pop)
776 #elif PRAGMA_STRUCT_PACK
777 #pragma pack()
778 #endif
779 
780 #ifdef PRAGMA_IMPORT_OFF
781 #pragma import off
782 #elif PRAGMA_IMPORT
783 #pragma import reset
784 #endif
785 
786 #ifdef __cplusplus
787 }
788 #endif
789 
790 #endif
TQ3StyleObject Q3ReceiveShadowsStyle_New(TQ3Boolean receives)
TQ3Status Q3Style_Submit(TQ3StyleObject style, TQ3ViewObject view)
TQ3Status Q3AntiAliasStyle_Submit(const TQ3AntiAliasStyleData *data, TQ3ViewObject view)
TQ3Status Q3SubdivisionStyle_SetData(TQ3StyleObject subdiv, const TQ3SubdivisionStyleData *data)
TQ3StyleObject Q3PickIDStyle_New(unsigned long id)
TQ3Status Q3FillStyle_Set(TQ3StyleObject styleObject, TQ3FillStyle fillStyle)
TQ3Status Q3InterpolationStyle_Get(TQ3StyleObject interpolationObject, TQ3InterpolationStyle *interpolationStyle)
TQ3Status Q3AntiAliasStyle_SetData(TQ3StyleObject styleObject, const TQ3AntiAliasStyleData *data)
TQ3BackfacingStyle
Definition: QD3DStyle.h:388
TQ3Status Q3AntiAliasStyle_GetData(TQ3StyleObject styleObject, TQ3AntiAliasStyleData *data)
TQ3Status Q3SubdivisionStyle_GetData(TQ3StyleObject subdiv, TQ3SubdivisionStyleData *data)
TQ3StyleObject Q3HighlightStyle_New(TQ3AttributeSet highlightAttribute)
TQ3Status Q3OrientationStyle_Submit(TQ3OrientationStyle frontFacingDirection, TQ3ViewObject view)
TQ3Status Q3PickIDStyle_Submit(unsigned long id, TQ3ViewObject view)
TQ3Status Q3ReceiveShadowsStyle_Submit(TQ3Boolean receives, TQ3ViewObject view)
TQ3StyleObject Q3PickPartsStyle_New(TQ3PickParts parts)
TQ3StyleObject Q3OrientationStyle_New(TQ3OrientationStyle frontFacingDirection)
TQ3Status Q3FogStyle_SetData(TQ3StyleObject styleObject, const TQ3FogStyleData *data)
TQ3Status Q3InterpolationStyle_Set(TQ3StyleObject interpolationObject, TQ3InterpolationStyle interpolationStyle)
TQ3Status Q3HighlightStyle_Submit(TQ3AttributeSet highlightAttribute, TQ3ViewObject view)
TQ3AntiAliasModeMasks
Definition: QD3DStyle.h:627
TQ3StyleObject Q3SubdivisionStyle_New(const TQ3SubdivisionStyleData *data)
TQ3OrientationStyle
Definition: QD3DStyle.h:565
TQ3Status Q3BackfacingStyle_Set(TQ3StyleObject backfacingObject, TQ3BackfacingStyle backfacingStyle)
TQ3Status Q3PickIDStyle_Get(TQ3StyleObject pickIDObject, unsigned long *id)
TQ3Status Q3OrientationStyle_Set(TQ3StyleObject frontFacingDirectionObject, TQ3OrientationStyle frontFacingDirection)
TQ3StyleObject Q3AntiAliasStyle_New(const TQ3AntiAliasStyleData *data)
TQ3StyleObject Q3BackfacingStyle_New(TQ3BackfacingStyle backfacingStyle)
TQ3Status Q3ReceiveShadowsStyle_Set(TQ3StyleObject styleObject, TQ3Boolean receives)
TQ3FillStyle
Definition: QD3DStyle.h:328
TQ3Status Q3OrientationStyle_Get(TQ3StyleObject frontFacingDirectionObject, TQ3OrientationStyle *frontFacingDirection)
TQ3Status Q3PickPartsStyle_Submit(TQ3PickParts parts, TQ3ViewObject view)
TQ3Status Q3PickIDStyle_Set(TQ3StyleObject pickIDObject, unsigned long id)
TQ3InterpolationStyle
Definition: QD3DStyle.h:451
TQ3Status Q3FogStyle_Submit(const TQ3FogStyleData *data, TQ3ViewObject view)
TQ3Status Q3SubdivisionStyle_Submit(const TQ3SubdivisionStyleData *data, TQ3ViewObject view)
TQ3Status Q3PickPartsStyle_Set(TQ3StyleObject pickPartsObject, TQ3PickParts parts)
TQ3ObjectType Q3Style_GetType(TQ3StyleObject style)
TQ3Status Q3FogStyle_GetData(TQ3StyleObject styleObject, TQ3FogStyleData *data)
TQ3Status Q3BackfacingStyle_Get(TQ3StyleObject backfacingObject, TQ3BackfacingStyle *backfacingStyle)
TQ3Status Q3HighlightStyle_Get(TQ3StyleObject highlight, TQ3AttributeSet *highlightAttribute)
TQ3Status Q3FillStyle_Submit(TQ3FillStyle fillStyle, TQ3ViewObject view)
TQ3StyleObject Q3FogStyle_New(const TQ3FogStyleData *data)
TQ3PickPartsMasks
Definition: QD3DStyle.h:217
TQ3Status Q3ReceiveShadowsStyle_Get(TQ3StyleObject styleObject, TQ3Boolean *receives)
TQ3StyleObject Q3FillStyle_New(TQ3FillStyle fillStyle)
TQ3Status Q3PickPartsStyle_Get(TQ3StyleObject pickPartsObject, TQ3PickParts *parts)
TQ3FogMode
Definition: QD3DStyle.h:696
TQ3StyleObject Q3InterpolationStyle_New(TQ3InterpolationStyle interpolationStyle)
TQ3SubdivisionMethod
Definition: QD3DStyle.h:98
TQ3Status Q3HighlightStyle_Set(TQ3StyleObject highlight, TQ3AttributeSet highlightAttribute)
TQ3Status Q3BackfacingStyle_Submit(TQ3BackfacingStyle backfacingStyle, TQ3ViewObject view)
TQ3Status Q3InterpolationStyle_Submit(TQ3InterpolationStyle interpolationStyle, TQ3ViewObject view)
TQ3Status Q3FillStyle_Get(TQ3StyleObject styleObject, TQ3FillStyle *fillStyle)
Base types for Quickdraw 3D.
TQ3SetObject TQ3AttributeSet
Definition: QD3D.h:197
long TQ3ObjectType
Definition: QD3D.h:152
TQAMethodSelector
Definition: RAVE.h:1009
Definition: QD3DStyle.h:635
Definition: QD3D.h:465
Definition: QD3DStyle.h:705
Definition: QD3DStyle.h:106