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: lod_8h-source.html,v 1.29 2008-03-10 07:09:28 stage Exp $ 00013 */ 00014 00015 /* 00016 * This file consolidated from the separate files we had before. 00017 */ 00018 00019 00020 /************************************************************************ 00021 00022 MxMain.h 00023 00024 This file contains the structures and function prototypes needed for 00025 communication with the outside world. In converting between HOOPS and 00026 non-hoops versions of the LOD module, this is the only file that should 00027 need changes (for non-HOOPS representations of 3d models, MxMain.c may 00028 also need some changes). 00029 00030 Copyright (C) 1998 Michael Garland. See "COPYING.txt" for details. 00031 00032 ************************************************************************/ 00033 00034 #include "hi_proto.h" 00035 00036 00037 #ifndef LOD_H_INCLUDED 00038 #define LOD_H_INCLUDED 00039 00040 00041 #define MX_USE_DEFAULT -1 00042 00043 /* for target units */ 00044 #define MX_PERCENT 1 00045 #define MX_LEVEL 2 00046 00047 00048 /* a "-1" in any of these fields indicates that the default should be used */ 00049 struct HT_MxConfig{ 00050 int placement_policy; 00051 int weighting_policy; 00052 float boundary_weight; 00053 float compactness_ratio; 00054 float meshing_penalty; 00055 int will_join_only; 00056 float ratio; 00057 int max_degree; 00058 }; 00059 00060 struct HT_MxShell{ 00061 float *points; 00062 int *faces; /* hoops HC_Insert_Shell() format, but w/o the negative faces */ 00063 int pcount; 00064 int flen; 00065 }; 00066 00067 struct HT_MxShellChain{ 00068 HT_MxShell sh; 00069 int *pointmap; 00070 HT_MxShellChain *next; 00071 int pointmap_count; 00072 }; 00073 00074 00075 #endif 00076 00077 00078