00001 /* 00002 * PROPRIETARY INFORMATION. This software is proprietary to 00003 * Side Effects Software Inc., and is not to be reproduced, 00004 * transmitted, or disclosed in any way without written permission. 00005 * 00006 * Produced by: 00007 * 00008 * Cristin Barghiel 00009 * Side Effects Software Inc. 00010 * 20 Maud St. 00011 * Toronto, Ontario, M5V 2M5 00012 * Canada 00013 * 416-366-4607 00014 * 00015 * NAME: GU_Loft.C (C++) 00016 * 00017 * COMMENTS: 00018 * Stitch polygons together without changing the number of points in the 00019 * gdp. 00020 * 00021 */ 00022 00023 #ifndef __GU_Loft_h__ 00024 #define __GU_Loft_h__ 00025 00026 #include "GU_API.h" 00027 class GB_PrimitiveGroup; 00028 00029 enum GU_LoftClosureType 00030 { 00031 GU_LOFT_CLOSE_NONE = 0, 00032 GU_LOFT_CLOSE = 1, 00033 GU_LOFT_CLOSE_AUTO = 2 00034 }; 00035 00036 enum GU_LoftMinimize 00037 { 00038 GU_LOFT_2POINT_DIST = 0, 00039 GU_LOFT_3POINT_DIST = 1 00040 }; 00041 00042 class GU_API GU_LoftParms 00043 { 00044 public: 00045 GU_LoftParms(); 00046 ~GU_LoftParms() {} 00047 00048 GB_PrimitiveGroup *polys; // group of created polygons 00049 00050 int keepPrims; // keep primitives 00051 int proximity; // find start point based on proximity 00052 int consolidate; // consolidate neighbouring points 00053 float distance; // consolidation distance 00054 GU_LoftMinimize goal; // minimization goal 00055 GU_LoftClosureType wrapu; // wrap each cross-section 00056 GU_LoftClosureType wrapv; // wrap first to last skin 00057 float collinearity_tol; // tolerance for collinearity check 00058 // before building a triangle 00059 }; 00060 00061 #endif
1.5.9