00001 #ifndef __AIPlanarObject__
00002 #define __AIPlanarObject__
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029 #ifndef __AIArt__
00030 #include "AIArt.h"
00031 #endif
00032 #ifndef __AIPath__
00033 #include "AIPath.h"
00034 #endif
00035 #ifndef __AIArtStyle__
00036 #include "AIArtStyle.h"
00037 #endif
00038
00039 #include "AIHeaderBegin.h"
00040
00043
00044
00045
00046
00047
00048
00049 #define kAIPlanarObjectSuite "AI Planar Object Suite"
00050 #define kAIPlanarObjectSuiteVersion4 AIAPI_VERSION(4)
00051 #define kAIPlanarObjectSuiteVersion kAIPlanarObjectSuiteVersion4
00052 #define kAIPlanarObjectVersion kAIPlanarObjectSuiteVersion
00053
00054
00057 #define kLivePaintComplexityWarning "LivePaintComplexityWarning"
00058
00060 #define kPlanarObjectPluginSelection "Planar FaceEdgeSelection"
00061
00062
00063
00064
00065
00066
00067
00068
00071 typedef struct _AIPlanarObject* AIPlanarObjectHandle;
00072
00075 typedef struct
00076 {
00079 AIReal gapMax;
00081 AIBoolean gapDetectEnabled;
00082 } AIGapOptions;
00083
00084
00085
00086
00087
00088
00089
00090
00091
00101 typedef struct {
00102
00110 AIAPI AIPlanarObjectHandle (*NewPlanarObject) ( const AIRealMatrix* matrix, const AIGapOptions* gapOptions );
00111
00146 AIAPI AIErr (*AddPath) (
00147 AIPlanarObjectHandle object, int segmentCount, AIPathSegment *segments,
00148 AIArtStyleHandle *leftFill, AIArtStyleHandle *rightFill, AIArtStyleHandle *stroke,
00149 AIBoolean closed );
00150
00151
00152
00153
00154
00155
00156
00157
00158
00159
00160
00161
00162
00163
00164
00165
00166
00167
00168 AIAPI AIErr (*AddPathUniform) (
00169 AIPlanarObjectHandle object, int segmentCount, AIPathSegment *segments,
00170 AIArtStyleHandle leftFill, AIArtStyleHandle rightFill, AIArtStyleHandle stroke,
00171 AIBoolean closed );
00172
00176 AIAPI AIErr (*Abandon) ( AIPlanarObjectHandle object );
00177
00190 AIAPI AIErr (*CreateArt) ( AIPlanarObjectHandle object, ai::int16 paintOrder, AIArtHandle prep, AIArtHandle *newArt );
00191
00197 AIAPI AIBoolean (*IsPlanarArtObject) ( AIArtHandle art );
00198
00229 AIAPI AIErr (*ComplexConversionCanceled) ( AIBoolean fromPlanarMap, ai::int32 pathOrEdgeCount,
00230 const AIGapOptions* gapOptions, AIBoolean *warningDisplayed );
00231
00232
00240 AIAPI AIErr (*EraseBlob)( AIArtHandle pathBlob, AIArtHandle planarObject, AIBoolean* erasedSomething );
00241
00248 AIAPI AIErr (*SelectSimilarFaceStyle)(void);
00254 AIAPI AIBoolean (*CanSelectSimilarFaceStyle)(void);
00255
00256
00263 AIAPI AIErr (*SelectSimilarEdgeWeights)(void);
00269 AIAPI AIBoolean (*CanSelectSimilarEdgeWeights)(void);
00270
00271
00278 AIAPI AIErr (*SelectSimilarEdgeColors)(void);
00284 AIAPI AIBoolean (*CanSelectSimilarEdgeColors)(void);
00285
00286
00287
00288 } AIPlanarObjectSuite;
00289
00290
00291 #include "AIHeaderEnd.h"
00292
00293
00294 #endif // __AIPlanarObject__