Reverted incorrect merge (missing files)
authorAndre Susano Pinto <andresusanopinto@gmail.com>
Thu, 2 Jul 2009 02:59:43 +0000 (02:59 +0000)
committerAndre Susano Pinto <andresusanopinto@gmail.com>
Thu, 2 Jul 2009 02:59:43 +0000 (02:59 +0000)
svn up -r 21247
svn merge -r 21247:21246 . (<= revert incorrect: merge -r 21041:21243)
svn up

783 files changed:
1  2 
CMake/macros.cmake
CMakeLists.txt
SConstruct
config/darwin-config.py
config/irix6-config.py
config/linux2-config.py
config/linuxcross-config.py
config/openbsd3-config.py
config/sunos5-config.py
config/win32-mingw-config.py
config/win32-vc-config.py
config/win64-vc-config.py
extern/CMakeLists.txt
extern/Makefile
extern/SConscript
extern/qhull/CMakeLists.txt
extern/qhull/COPYING.txt
extern/qhull/README.txt
extern/qhull/REGISTER.txt
extern/qhull/SConscript
extern/qhull/VisualC6/qhull.dsw
extern/qhull/VisualC6/qhull/qhull.dsp
extern/qhull/include/qhull/geom.h
extern/qhull/include/qhull/io.h
extern/qhull/include/qhull/mem.h
extern/qhull/include/qhull/merge.h
extern/qhull/include/qhull/poly.h
extern/qhull/include/qhull/qhull.h
extern/qhull/include/qhull/qhull_a.h
extern/qhull/include/qhull/qset.h
extern/qhull/include/qhull/stat.h
extern/qhull/include/qhull/user.h
extern/qhull/make/msvc_7_0/qhull.vcproj
extern/qhull/make/msvc_9_0/qhull.vcproj
extern/qhull/src/Make-config.sh
extern/qhull/src/Makefile
extern/qhull/src/Makefile.txt
extern/qhull/src/geom.c
extern/qhull/src/geom.h
extern/qhull/src/geom2.c
extern/qhull/src/global.c
extern/qhull/src/io.c
extern/qhull/src/io.h
extern/qhull/src/mem.c
extern/qhull/src/mem.h
extern/qhull/src/merge.c
extern/qhull/src/merge.h
extern/qhull/src/poly.c
extern/qhull/src/poly.h
extern/qhull/src/poly2.c
extern/qhull/src/qconvex.c
extern/qhull/src/qdelaun.c
extern/qhull/src/qhalf.c
extern/qhull/src/qhull.c
extern/qhull/src/qhull.h
extern/qhull/src/qhull_a.h
extern/qhull/src/qhull_interface.cpp
extern/qhull/src/qset.c
extern/qhull/src/qset.h
extern/qhull/src/qvoronoi.c
extern/qhull/src/rbox.c
extern/qhull/src/stat.c
extern/qhull/src/stat.h
extern/qhull/src/unix.c
extern/qhull/src/user.c
extern/qhull/src/user.h
extern/qhull/src/user_eg.c
extern/qhull/src/user_eg2.c
extern/solid/CMakeLists.txt
extern/solid/LICENSE_GPL.txt
extern/solid/LICENSE_QPL.txt
extern/solid/Makefile
extern/solid/README.txt
extern/solid/SConscript
extern/solid/SOLID/SOLID.h
extern/solid/SOLID/SOLID_broad.h
extern/solid/SOLID/SOLID_types.h
extern/solid/VisualC6/broad/broad.dsp
extern/solid/VisualC6/complex/complex.dsp
extern/solid/VisualC6/convex/convex.dsp
extern/solid/VisualC6/dynamics/dynamics.dsp
extern/solid/VisualC6/gldemo/gldemo.dsp
extern/solid/VisualC6/mnm/mnm.dsp
extern/solid/VisualC6/physics/physics.dsp
extern/solid/VisualC6/sample/sample.dsp
extern/solid/VisualC6/solid.dsw
extern/solid/VisualC6/solid/solid.dsp
extern/solid/VisualC6/solid_dll/solid_dll.dsp
extern/solid/include/GEN_MinMax.h
extern/solid/include/GEN_random.h
extern/solid/include/MT/Interval.h
extern/solid/include/MT/Matrix3x3.h
extern/solid/include/MT/Quaternion.h
extern/solid/include/MT/Transform.h
extern/solid/include/MT/Tuple3.h
extern/solid/include/MT/Tuple4.h
extern/solid/include/MT/Vector3.h
extern/solid/include/MT_BBox.h
extern/solid/include/MT_Interval.h
extern/solid/include/MT_Matrix3x3.h
extern/solid/include/MT_Point3.h
extern/solid/include/MT_Quaternion.h
extern/solid/include/MT_Scalar.h
extern/solid/include/MT_Transform.h
extern/solid/include/MT_Vector3.h
extern/solid/include/SOLID.h
extern/solid/include/SOLID_broad.h
extern/solid/include/SOLID_types.h
extern/solid/make/msvc_7_0/broad/broad.vcproj
extern/solid/make/msvc_7_0/complex/complex.vcproj
extern/solid/make/msvc_7_0/convex/convex.vcproj
extern/solid/make/msvc_7_0/solid.vcproj
extern/solid/make/msvc_9_0/broad/broad.vcproj
extern/solid/make/msvc_9_0/complex/complex.vcproj
extern/solid/make/msvc_9_0/convex/convex.vcproj
extern/solid/make/msvc_9_0/solid.vcproj
extern/solid/src/DT_AlgoTable.h
extern/solid/src/DT_C-api.cpp
extern/solid/src/DT_Encounter.cpp
extern/solid/src/DT_Encounter.h
extern/solid/src/DT_Object.cpp
extern/solid/src/DT_Object.h
extern/solid/src/DT_RespTable.cpp
extern/solid/src/DT_RespTable.h
extern/solid/src/DT_Response.h
extern/solid/src/DT_Scene.cpp
extern/solid/src/DT_Scene.h
extern/solid/src/Makefile
extern/solid/src/broad/BP_C-api.cpp
extern/solid/src/broad/BP_Endpoint.h
extern/solid/src/broad/BP_EndpointList.cpp
extern/solid/src/broad/BP_EndpointList.h
extern/solid/src/broad/BP_Proxy.cpp
extern/solid/src/broad/BP_Proxy.h
extern/solid/src/broad/BP_ProxyList.h
extern/solid/src/broad/BP_Scene.cpp
extern/solid/src/broad/BP_Scene.h
extern/solid/src/broad/Makefile
extern/solid/src/complex/DT_BBoxTree.cpp
extern/solid/src/complex/DT_BBoxTree.h
extern/solid/src/complex/DT_CBox.h
extern/solid/src/complex/DT_Complex.cpp
extern/solid/src/complex/DT_Complex.h
extern/solid/src/complex/Makefile
extern/solid/src/convex/DT_Accuracy.cpp
extern/solid/src/convex/DT_Accuracy.h
extern/solid/src/convex/DT_Array.h
extern/solid/src/convex/DT_Box.cpp
extern/solid/src/convex/DT_Box.h
extern/solid/src/convex/DT_Cone.cpp
extern/solid/src/convex/DT_Cone.h
extern/solid/src/convex/DT_Convex.cpp
extern/solid/src/convex/DT_Convex.h
extern/solid/src/convex/DT_Cylinder.cpp
extern/solid/src/convex/DT_Cylinder.h
extern/solid/src/convex/DT_Facet.cpp
extern/solid/src/convex/DT_Facet.h
extern/solid/src/convex/DT_GJK.h
extern/solid/src/convex/DT_Hull.h
extern/solid/src/convex/DT_IndexArray.h
extern/solid/src/convex/DT_LineSegment.cpp
extern/solid/src/convex/DT_LineSegment.h
extern/solid/src/convex/DT_Minkowski.h
extern/solid/src/convex/DT_PenDepth.cpp
extern/solid/src/convex/DT_PenDepth.h
extern/solid/src/convex/DT_Point.cpp
extern/solid/src/convex/DT_Point.h
extern/solid/src/convex/DT_Polyhedron.cpp
extern/solid/src/convex/DT_Polyhedron.h
extern/solid/src/convex/DT_Polytope.cpp
extern/solid/src/convex/DT_Polytope.h
extern/solid/src/convex/DT_Shape.h
extern/solid/src/convex/DT_Sphere.cpp
extern/solid/src/convex/DT_Sphere.h
extern/solid/src/convex/DT_Transform.h
extern/solid/src/convex/DT_Triangle.cpp
extern/solid/src/convex/DT_Triangle.h
extern/solid/src/convex/DT_VertexBase.h
extern/solid/src/convex/Makefile
intern/bsp/test/Makefile
intern/guardedalloc/intern/mallocn.c
intern/iksolver/test/Makefile
intern/moto/include/MT_Matrix3x3.h
intern/string/intern/STR_String.cpp
projectfiles_vc9/blender/BPY_python/BPY_python.vcproj
projectfiles_vc9/blender/blender.sln
projectfiles_vc9/blender/editors/ED_editors.vcproj
projectfiles_vc9/blender/makesrna/RNA_makesrna.vcproj
projectfiles_vc9/blender/makesrna/RNA_rna.vcproj
projectfiles_vc9/gameengine/blenderhook/KX_blenderhook.vcproj
projectfiles_vc9/gameengine/converter/KX_converter.vcproj
projectfiles_vc9/gameengine/expression/EXP_expressions.vcproj
projectfiles_vc9/gameengine/ketsji/KX_ketsji.vcproj
release/ui/buttons_data_armature.py
release/ui/buttons_data_camera.py
release/ui/buttons_data_curve.py
release/ui/buttons_data_lamp.py
release/ui/buttons_data_lattice.py
release/ui/buttons_data_mesh.py
release/ui/buttons_data_modifier.py
release/ui/buttons_data_text.py
release/ui/buttons_material.py
release/ui/buttons_object_constraint.py
release/ui/buttons_particle.py
release/ui/buttons_physic_cloth.py
release/ui/buttons_texture.py
release/ui/buttons_world.py
release/ui/space_image.py
release/ui/space_logic.py
release/ui/space_outliner.py
release/ui/space_sequencer.py
release/ui/space_text.py
source/Makefile
source/blender/CMakeLists.txt
source/blender/Makefile
source/blender/SConscript
source/blender/blenfont/BLF_api.h
source/blender/blenfont/intern/blf.c
source/blender/blenfont/intern/blf_dir.c
source/blender/blenfont/intern/blf_font.c
source/blender/blenfont/intern/blf_glyph.c
source/blender/blenfont/intern/blf_internal.h
source/blender/blenfont/intern/blf_internal_types.h
source/blender/blenfont/intern/blf_lang.c
source/blender/blenkernel/BKE_cloth.h
source/blender/blenkernel/BKE_context.h
source/blender/blenkernel/BKE_exotic.h
source/blender/blenkernel/BKE_gpencil.h
source/blender/blenkernel/BKE_material.h
source/blender/blenkernel/BKE_particle.h
source/blender/blenkernel/BKE_pointcache.h
source/blender/blenkernel/BKE_report.h
source/blender/blenkernel/BKE_sequence.h
source/blender/blenkernel/BKE_utildefines.h
source/blender/blenkernel/intern/anim_sys.c
source/blender/blenkernel/intern/blender.c
source/blender/blenkernel/intern/cloth.c
source/blender/blenkernel/intern/constraint.c
source/blender/blenkernel/intern/context.c
source/blender/blenkernel/intern/depsgraph.c
source/blender/blenkernel/intern/displist.c
source/blender/blenkernel/intern/effect.c
source/blender/blenkernel/intern/exotic.c
source/blender/blenkernel/intern/fluidsim.c
source/blender/blenkernel/intern/gpencil.c
source/blender/blenkernel/intern/idprop.c
source/blender/blenkernel/intern/image.c
source/blender/blenkernel/intern/implicit.c
source/blender/blenkernel/intern/material.c
source/blender/blenkernel/intern/modifier.c
source/blender/blenkernel/intern/multires.c
source/blender/blenkernel/intern/particle.c
source/blender/blenkernel/intern/particle_system.c
source/blender/blenkernel/intern/pointcache.c
source/blender/blenkernel/intern/report.c
source/blender/blenkernel/intern/scene.c
source/blender/blenkernel/intern/sequence.c
source/blender/blenlib/BLI_listbase.h
source/blender/blenlib/BLI_noise.h
source/blender/blenlib/BLI_rect.h
source/blender/blenlib/BLI_storage.h
source/blender/blenlib/BLI_string.h
source/blender/blenlib/intern/dynamiclist.c
source/blender/blenlib/intern/dynamiclist.h
source/blender/blenlib/intern/listbase.c
source/blender/blenlib/intern/psfont.c
source/blender/blenlib/intern/storage.c
source/blender/blenlib/intern/string.c
source/blender/blenlib/intern/util.c
source/blender/blenloader/intern/readblenentry.c
source/blender/blenloader/intern/readfile.c
source/blender/blenloader/intern/writefile.c
source/blender/blenpluginapi/intern/Makefile
source/blender/editors/animation/Makefile
source/blender/editors/animation/anim_channels.c
source/blender/editors/animation/keyframes_draw.c
source/blender/editors/armature/BIF_generate.h
source/blender/editors/armature/BIF_retarget.h
source/blender/editors/armature/Makefile
source/blender/editors/armature/editarmature_generate.c
source/blender/editors/armature/editarmature_sketch.c
source/blender/editors/armature/meshlaplacian.c
source/blender/editors/armature/meshlaplacian.h
source/blender/editors/curve/Makefile
source/blender/editors/curve/curve_intern.h
source/blender/editors/curve/curve_ops.c
source/blender/editors/curve/editcurve.c
source/blender/editors/curve/editfont.c
source/blender/editors/datafiles/Bfont.c
source/blender/editors/datafiles/Makefile
source/blender/editors/gpencil/Makefile
source/blender/editors/gpencil/gpencil_edit.c
source/blender/editors/include/BIF_gl.h
source/blender/editors/include/ED_curve.h
source/blender/editors/include/ED_datafiles.h
source/blender/editors/include/ED_fluidsim.h
source/blender/editors/include/ED_keyframes_draw.h
source/blender/editors/include/ED_keyframing.h
source/blender/editors/include/ED_mesh.h
source/blender/editors/include/ED_object.h
source/blender/editors/include/ED_particle.h
source/blender/editors/include/ED_previewrender.h
source/blender/editors/include/ED_view3d.h
source/blender/editors/include/UI_icons.h
source/blender/editors/include/UI_interface.h
source/blender/editors/include/UI_resources.h
source/blender/editors/interface/Makefile
source/blender/editors/interface/interface.c
source/blender/editors/interface/interface_draw.c
source/blender/editors/interface/interface_handlers.c
source/blender/editors/interface/interface_icons.c
source/blender/editors/interface/interface_intern.h
source/blender/editors/interface/interface_layout.c
source/blender/editors/interface/interface_panel.c
source/blender/editors/interface/interface_regions.c
source/blender/editors/interface/interface_style.c
source/blender/editors/interface/interface_templates.c
source/blender/editors/interface/interface_utils.c
source/blender/editors/interface/interface_widgets.c
source/blender/editors/interface/resources.c
source/blender/editors/interface/view2d.c
source/blender/editors/mesh/Makefile
source/blender/editors/mesh/editmesh.c
source/blender/editors/mesh/editmesh_add.c
source/blender/editors/mesh/editmesh_mods.c
source/blender/editors/mesh/editmesh_tools.c
source/blender/editors/object/Makefile
source/blender/editors/object/object_edit.c
source/blender/editors/object/object_modifier.c
source/blender/editors/physics/Makefile
source/blender/editors/physics/editparticle.c
source/blender/editors/physics/physics_intern.h
source/blender/editors/preview/Makefile
source/blender/editors/preview/previewrender.c
source/blender/editors/screen/Makefile
source/blender/editors/screen/area.c
source/blender/editors/screen/glutil.c
source/blender/editors/screen/screen_ops.c
source/blender/editors/sculpt_paint/Makefile
source/blender/editors/sculpt_paint/sculpt.c
source/blender/editors/sculpt_paint/sculpt_intern.h
source/blender/editors/sculpt_paint/sculpt_stroke.c
source/blender/editors/space_action/Makefile
source/blender/editors/space_action/action_draw.c
source/blender/editors/space_action/action_edit.c
source/blender/editors/space_action/action_select.c
source/blender/editors/space_api/Makefile
source/blender/editors/space_api/spacetypes.c
source/blender/editors/space_buttons/Makefile
source/blender/editors/space_buttons/SConscript
source/blender/editors/space_buttons/buttons_context.c
source/blender/editors/space_buttons/buttons_header.c
source/blender/editors/space_buttons/buttons_intern.h
source/blender/editors/space_buttons/buttons_ops.c
source/blender/editors/space_buttons/space_buttons.c
source/blender/editors/space_file/Makefile
source/blender/editors/space_file/file_draw.c
source/blender/editors/space_file/file_header.c
source/blender/editors/space_file/file_ops.c
source/blender/editors/space_file/filesel.c
source/blender/editors/space_graph/Makefile
source/blender/editors/space_graph/graph_draw.c
source/blender/editors/space_graph/graph_edit.c
source/blender/editors/space_graph/graph_select.c
source/blender/editors/space_image/Makefile
source/blender/editors/space_image/image_buttons.c
source/blender/editors/space_image/image_draw.c
source/blender/editors/space_image/image_header.c
source/blender/editors/space_image/image_ops.c
source/blender/editors/space_image/space_image.c
source/blender/editors/space_info/Makefile
source/blender/editors/space_info/SConscript
source/blender/editors/space_info/info_header.c
source/blender/editors/space_logic/Makefile
source/blender/editors/space_logic/SConscript
source/blender/editors/space_logic/logic_buttons.c
source/blender/editors/space_logic/logic_header.c
source/blender/editors/space_logic/logic_window.c
source/blender/editors/space_nla/Makefile
source/blender/editors/space_nla/nla_header.c
source/blender/editors/space_node/Makefile
source/blender/editors/space_node/node_draw.c
source/blender/editors/space_node/node_header.c
source/blender/editors/space_outliner/Makefile
source/blender/editors/space_outliner/outliner.c
source/blender/editors/space_outliner/outliner_header.c
source/blender/editors/space_outliner/space_outliner.c
source/blender/editors/space_script/Makefile
source/blender/editors/space_script/script_header.c
source/blender/editors/space_sequencer/Makefile
source/blender/editors/space_sequencer/sequencer_buttons.c
source/blender/editors/space_sound/Makefile
source/blender/editors/space_sound/sound_header.c
source/blender/editors/space_text/Makefile
source/blender/editors/space_text/text_header.c
source/blender/editors/space_text/text_python.c
source/blender/editors/space_time/Makefile
source/blender/editors/space_time/space_time.c
source/blender/editors/space_time/time_header.c
source/blender/editors/space_view3d/Makefile
source/blender/editors/space_view3d/drawobject.c
source/blender/editors/space_view3d/space_view3d.c
source/blender/editors/space_view3d/view3d_buttons.c
source/blender/editors/space_view3d/view3d_header.c
source/blender/editors/space_view3d/view3d_select.c
source/blender/editors/space_view3d/view3d_toolbar.c
source/blender/editors/space_view3d/view3d_view.c
source/blender/editors/transform/Makefile
source/blender/editors/transform/transform.c
source/blender/editors/transform/transform.h
source/blender/editors/transform/transform_conversions.c
source/blender/editors/transform/transform_generics.c
source/blender/editors/transform/transform_input.c
source/blender/editors/transform/transform_ndofinput.c
source/blender/editors/transform/transform_numinput.c
source/blender/editors/transform/transform_ops.c
source/blender/editors/transform/transform_snap.c
source/blender/editors/util/Makefile
source/blender/editors/util/undo.c
source/blender/editors/uvedit/Makefile
source/blender/editors/uvedit/uvedit_draw.c
source/blender/editors/uvedit/uvedit_ops.c
source/blender/gpu/intern/Makefile
source/blender/imbuf/intern/imbuf.h
source/blender/imbuf/intern/readimage.c
source/blender/makesdna/DNA_object_force.h
source/blender/makesdna/DNA_particle_types.h
source/blender/makesdna/DNA_radio_types.h
source/blender/makesdna/DNA_scene_types.h
source/blender/makesdna/DNA_space_types.h
source/blender/makesdna/DNA_userdef_types.h
source/blender/makesdna/DNA_windowmanager_types.h
source/blender/makesdna/intern/makesdna.c
source/blender/makesrna/Makefile
source/blender/makesrna/RNA_access.h
source/blender/makesrna/RNA_define.h
source/blender/makesrna/RNA_enum_types.h
source/blender/makesrna/RNA_types.h
source/blender/makesrna/intern/Makefile
source/blender/makesrna/intern/makesrna.c
source/blender/makesrna/intern/rna_ID.c
source/blender/makesrna/intern/rna_access.c
source/blender/makesrna/intern/rna_action.c
source/blender/makesrna/intern/rna_actuator.c
source/blender/makesrna/intern/rna_animation.c
source/blender/makesrna/intern/rna_armature.c
source/blender/makesrna/intern/rna_brush.c
source/blender/makesrna/intern/rna_camera.c
source/blender/makesrna/intern/rna_cloth.c
source/blender/makesrna/intern/rna_color.c
source/blender/makesrna/intern/rna_constraint.c
source/blender/makesrna/intern/rna_context.c
source/blender/makesrna/intern/rna_controller.c
source/blender/makesrna/intern/rna_curve.c
source/blender/makesrna/intern/rna_define.c
source/blender/makesrna/intern/rna_fcurve.c
source/blender/makesrna/intern/rna_fluidsim.c
source/blender/makesrna/intern/rna_group.c
source/blender/makesrna/intern/rna_image.c
source/blender/makesrna/intern/rna_internal.h
source/blender/makesrna/intern/rna_internal_types.h
source/blender/makesrna/intern/rna_key.c
source/blender/makesrna/intern/rna_lamp.c
source/blender/makesrna/intern/rna_lattice.c
source/blender/makesrna/intern/rna_main.c
source/blender/makesrna/intern/rna_main_api.c
source/blender/makesrna/intern/rna_material.c
source/blender/makesrna/intern/rna_mesh.c
source/blender/makesrna/intern/rna_mesh_api.c
source/blender/makesrna/intern/rna_meta.c
source/blender/makesrna/intern/rna_modifier.c
source/blender/makesrna/intern/rna_nodetree.c
source/blender/makesrna/intern/rna_nodetree_types.h
source/blender/makesrna/intern/rna_object.c
source/blender/makesrna/intern/rna_object_api.c
source/blender/makesrna/intern/rna_object_force.c
source/blender/makesrna/intern/rna_packedfile.c
source/blender/makesrna/intern/rna_particle.c
source/blender/makesrna/intern/rna_pose.c
source/blender/makesrna/intern/rna_property.c
source/blender/makesrna/intern/rna_radio.c
source/blender/makesrna/intern/rna_rna.c
source/blender/makesrna/intern/rna_scene.c
source/blender/makesrna/intern/rna_screen.c
source/blender/makesrna/intern/rna_scriptlink.c
source/blender/makesrna/intern/rna_sensor.c
source/blender/makesrna/intern/rna_sequence.c
source/blender/makesrna/intern/rna_sound.c
source/blender/makesrna/intern/rna_space.c
source/blender/makesrna/intern/rna_text.c
source/blender/makesrna/intern/rna_texture.c
source/blender/makesrna/intern/rna_timeline.c
source/blender/makesrna/intern/rna_ui.c
source/blender/makesrna/intern/rna_ui_api.c
source/blender/makesrna/intern/rna_userdef.c
source/blender/makesrna/intern/rna_vfont.c
source/blender/makesrna/intern/rna_vpaint.c
source/blender/makesrna/intern/rna_wm.c
source/blender/makesrna/intern/rna_wm_api.c
source/blender/makesrna/intern/rna_world.c
source/blender/python/BPY_extern.h
source/blender/python/BPY_menus.c
source/blender/python/BPY_menus.h
source/blender/python/Makefile
source/blender/python/generic/BGL.c
source/blender/python/generic/BGL.h
source/blender/python/generic/Geometry.c
source/blender/python/generic/Geometry.h
source/blender/python/generic/Makefile
source/blender/python/generic/Mathutils.c
source/blender/python/generic/Mathutils.h
source/blender/python/generic/bpy_internal_import.c
source/blender/python/generic/bpy_internal_import.h
source/blender/python/generic/euler.c
source/blender/python/generic/euler.h
source/blender/python/generic/matrix.c
source/blender/python/generic/matrix.h
source/blender/python/generic/quat.c
source/blender/python/generic/quat.h
source/blender/python/generic/vector.c
source/blender/python/generic/vector.h
source/blender/python/intern/Makefile
source/blender/python/intern/bpy_compat.h
source/blender/python/intern/bpy_interface.c
source/blender/python/intern/bpy_operator.c
source/blender/python/intern/bpy_operator.h
source/blender/python/intern/bpy_operator_wrap.c
source/blender/python/intern/bpy_operator_wrap.h
source/blender/python/intern/bpy_rna.c
source/blender/python/intern/bpy_rna.h
source/blender/python/intern/bpy_ui.c
source/blender/python/intern/bpy_ui.h
source/blender/python/intern/bpy_util.c
source/blender/python/intern/bpy_util.h
source/blender/radiosity/CMakeLists.txt
source/blender/radiosity/Makefile
source/blender/radiosity/SConscript
source/blender/radiosity/extern/include/radio.h
source/blender/radiosity/extern/include/radio_types.h
source/blender/radiosity/intern/Makefile
source/blender/radiosity/intern/source/Makefile
source/blender/radiosity/intern/source/raddisplay.c
source/blender/radiosity/intern/source/radfactors.c
source/blender/radiosity/intern/source/radio.c
source/blender/radiosity/intern/source/radnode.c
source/blender/radiosity/intern/source/radpostprocess.c
source/blender/radiosity/intern/source/radpreprocess.c
source/blender/radiosity/intern/source/radrender.c
source/blender/render/extern/include/RE_render_ext.h
source/blender/render/intern/source/convertblender.c
source/blender/render/intern/source/pipeline.c
source/blender/render/intern/source/zbuf.c
source/blender/windowmanager/WM_api.h
source/blender/windowmanager/WM_types.h
source/blender/windowmanager/intern/Makefile
source/blender/windowmanager/intern/wm.c
source/blender/windowmanager/intern/wm_event_system.c
source/blender/windowmanager/intern/wm_files.c
source/blender/windowmanager/intern/wm_init_exit.c
source/blender/windowmanager/intern/wm_keymap.c
source/blender/windowmanager/intern/wm_operators.c
source/blender/windowmanager/intern/wm_subwindow.c
source/blender/windowmanager/wm_cursors.h
source/blender/windowmanager/wm_subwindow.h
source/creator/CMakeLists.txt
source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp
source/gameengine/BlenderRoutines/CMakeLists.txt
source/gameengine/BlenderRoutines/KX_BlenderCanvas.cpp
source/gameengine/BlenderRoutines/Makefile
source/gameengine/BlenderRoutines/SConscript
source/gameengine/CMakeLists.txt
source/gameengine/Converter/BL_ActionActuator.cpp
source/gameengine/Converter/BL_ActionActuator.h
source/gameengine/Converter/BL_BlenderDataConversion.cpp
source/gameengine/Converter/BL_ShapeActionActuator.cpp
source/gameengine/Converter/BL_ShapeActionActuator.h
source/gameengine/Converter/KX_BlenderSceneConverter.cpp
source/gameengine/Converter/Makefile
source/gameengine/Converter/SConscript
source/gameengine/Expressions/BoolValue.cpp
source/gameengine/Expressions/CMakeLists.txt
source/gameengine/Expressions/IntValue.cpp
source/gameengine/Expressions/KX_Python.h
source/gameengine/Expressions/ListValue.cpp
source/gameengine/Expressions/ListValue.h
source/gameengine/Expressions/Makefile
source/gameengine/Expressions/PyObjectPlus.cpp
source/gameengine/Expressions/PyObjectPlus.h
source/gameengine/Expressions/StringValue.h
source/gameengine/Expressions/Value.cpp
source/gameengine/Expressions/Value.h
source/gameengine/GameLogic/SCA_2DFilterActuator.cpp
source/gameengine/GameLogic/SCA_2DFilterActuator.h
source/gameengine/GameLogic/SCA_ANDController.cpp
source/gameengine/GameLogic/SCA_ANDController.h
source/gameengine/GameLogic/SCA_ActuatorSensor.cpp
source/gameengine/GameLogic/SCA_ActuatorSensor.h
source/gameengine/GameLogic/SCA_AlwaysSensor.cpp
source/gameengine/GameLogic/SCA_AlwaysSensor.h
source/gameengine/GameLogic/SCA_DelaySensor.cpp
source/gameengine/GameLogic/SCA_DelaySensor.h
source/gameengine/GameLogic/SCA_ExpressionController.cpp
source/gameengine/GameLogic/SCA_ExpressionController.h
source/gameengine/GameLogic/SCA_IActuator.cpp
source/gameengine/GameLogic/SCA_IActuator.h
source/gameengine/GameLogic/SCA_IController.cpp
source/gameengine/GameLogic/SCA_IController.h
source/gameengine/GameLogic/SCA_ILogicBrick.cpp
source/gameengine/GameLogic/SCA_ILogicBrick.h
source/gameengine/GameLogic/SCA_IObject.cpp
source/gameengine/GameLogic/SCA_IObject.h
source/gameengine/GameLogic/SCA_ISensor.cpp
source/gameengine/GameLogic/SCA_ISensor.h
source/gameengine/GameLogic/SCA_JoystickSensor.cpp
source/gameengine/GameLogic/SCA_JoystickSensor.h
source/gameengine/GameLogic/SCA_KeyboardSensor.cpp
source/gameengine/GameLogic/SCA_KeyboardSensor.h
source/gameengine/GameLogic/SCA_LogicManager.cpp
source/gameengine/GameLogic/SCA_MouseSensor.cpp
source/gameengine/GameLogic/SCA_MouseSensor.h
source/gameengine/GameLogic/SCA_NANDController.cpp
source/gameengine/GameLogic/SCA_NANDController.h
source/gameengine/GameLogic/SCA_NORController.cpp
source/gameengine/GameLogic/SCA_NORController.h
source/gameengine/GameLogic/SCA_ORController.cpp
source/gameengine/GameLogic/SCA_ORController.h
source/gameengine/GameLogic/SCA_PropertyActuator.cpp
source/gameengine/GameLogic/SCA_PropertyActuator.h
source/gameengine/GameLogic/SCA_PropertySensor.cpp
source/gameengine/GameLogic/SCA_PropertySensor.h
source/gameengine/GameLogic/SCA_PythonController.cpp
source/gameengine/GameLogic/SCA_PythonController.h
source/gameengine/GameLogic/SCA_RandomActuator.cpp
source/gameengine/GameLogic/SCA_RandomActuator.h
source/gameengine/GameLogic/SCA_RandomSensor.cpp
source/gameengine/GameLogic/SCA_RandomSensor.h
source/gameengine/GameLogic/SCA_XNORController.cpp
source/gameengine/GameLogic/SCA_XNORController.h
source/gameengine/GameLogic/SCA_XORController.cpp
source/gameengine/GameLogic/SCA_XORController.h
source/gameengine/GamePlayer/common/Makefile
source/gameengine/GamePlayer/common/SConscript
source/gameengine/GamePlayer/common/unix/GPU_Engine.cpp
source/gameengine/GamePlayer/common/unix/Makefile
source/gameengine/GamePlayer/ghost/SConscript
source/gameengine/Ketsji/BL_Shader.cpp
source/gameengine/Ketsji/BL_Shader.h
source/gameengine/Ketsji/KXNetwork/KX_NetworkMessageActuator.cpp
source/gameengine/Ketsji/KXNetwork/KX_NetworkMessageActuator.h
source/gameengine/Ketsji/KXNetwork/KX_NetworkMessageSensor.cpp
source/gameengine/Ketsji/KXNetwork/KX_NetworkMessageSensor.h
source/gameengine/Ketsji/KX_BlenderMaterial.cpp
source/gameengine/Ketsji/KX_BlenderMaterial.h
source/gameengine/Ketsji/KX_CDActuator.cpp
source/gameengine/Ketsji/KX_CDActuator.h
source/gameengine/Ketsji/KX_Camera.cpp
source/gameengine/Ketsji/KX_Camera.h
source/gameengine/Ketsji/KX_CameraActuator.cpp
source/gameengine/Ketsji/KX_CameraActuator.h
source/gameengine/Ketsji/KX_ClientObjectInfo.h
source/gameengine/Ketsji/KX_ConstraintActuator.cpp
source/gameengine/Ketsji/KX_ConstraintActuator.h
source/gameengine/Ketsji/KX_ConstraintWrapper.cpp
source/gameengine/Ketsji/KX_ConstraintWrapper.h
source/gameengine/Ketsji/KX_ConvertPhysicsObject.h
source/gameengine/Ketsji/KX_ConvertPhysicsObjects.cpp
source/gameengine/Ketsji/KX_GameActuator.cpp
source/gameengine/Ketsji/KX_GameActuator.h
source/gameengine/Ketsji/KX_GameObject.cpp
source/gameengine/Ketsji/KX_GameObject.h
source/gameengine/Ketsji/KX_IpoActuator.cpp
source/gameengine/Ketsji/KX_IpoActuator.h
source/gameengine/Ketsji/KX_KetsjiEngine.cpp
source/gameengine/Ketsji/KX_Light.cpp
source/gameengine/Ketsji/KX_Light.h
source/gameengine/Ketsji/KX_MeshProxy.cpp
source/gameengine/Ketsji/KX_MeshProxy.h
source/gameengine/Ketsji/KX_MouseFocusSensor.cpp
source/gameengine/Ketsji/KX_MouseFocusSensor.h
source/gameengine/Ketsji/KX_NearSensor.cpp
source/gameengine/Ketsji/KX_NearSensor.h
source/gameengine/Ketsji/KX_ObjectActuator.cpp
source/gameengine/Ketsji/KX_ObjectActuator.h
source/gameengine/Ketsji/KX_OdePhysicsController.cpp
source/gameengine/Ketsji/KX_OdePhysicsController.h
source/gameengine/Ketsji/KX_ParentActuator.cpp
source/gameengine/Ketsji/KX_ParentActuator.h
source/gameengine/Ketsji/KX_PhysicsObjectWrapper.cpp
source/gameengine/Ketsji/KX_PhysicsObjectWrapper.h
source/gameengine/Ketsji/KX_PolyProxy.cpp
source/gameengine/Ketsji/KX_PolyProxy.h
source/gameengine/Ketsji/KX_PolygonMaterial.cpp
source/gameengine/Ketsji/KX_PolygonMaterial.h
source/gameengine/Ketsji/KX_PyConstraintBinding.cpp
source/gameengine/Ketsji/KX_PyMath.cpp
source/gameengine/Ketsji/KX_PyMath.h
source/gameengine/Ketsji/KX_PythonInit.cpp
source/gameengine/Ketsji/KX_PythonInitTypes.cpp
source/gameengine/Ketsji/KX_PythonSeq.cpp
source/gameengine/Ketsji/KX_RadarSensor.cpp
source/gameengine/Ketsji/KX_RadarSensor.h
source/gameengine/Ketsji/KX_RaySensor.cpp
source/gameengine/Ketsji/KX_RaySensor.h
source/gameengine/Ketsji/KX_SCA_AddObjectActuator.cpp
source/gameengine/Ketsji/KX_SCA_AddObjectActuator.h
source/gameengine/Ketsji/KX_SCA_DynamicActuator.cpp
source/gameengine/Ketsji/KX_SCA_DynamicActuator.h
source/gameengine/Ketsji/KX_SCA_EndObjectActuator.cpp
source/gameengine/Ketsji/KX_SCA_EndObjectActuator.h
source/gameengine/Ketsji/KX_SCA_ReplaceMeshActuator.cpp
source/gameengine/Ketsji/KX_SCA_ReplaceMeshActuator.h
source/gameengine/Ketsji/KX_Scene.cpp
source/gameengine/Ketsji/KX_Scene.h
source/gameengine/Ketsji/KX_SceneActuator.cpp
source/gameengine/Ketsji/KX_SceneActuator.h
source/gameengine/Ketsji/KX_SoundActuator.cpp
source/gameengine/Ketsji/KX_SoundActuator.h
source/gameengine/Ketsji/KX_StateActuator.cpp
source/gameengine/Ketsji/KX_StateActuator.h
source/gameengine/Ketsji/KX_SumoPhysicsController.cpp
source/gameengine/Ketsji/KX_SumoPhysicsController.h
source/gameengine/Ketsji/KX_TouchSensor.cpp
source/gameengine/Ketsji/KX_TouchSensor.h
source/gameengine/Ketsji/KX_TrackToActuator.cpp
source/gameengine/Ketsji/KX_TrackToActuator.h
source/gameengine/Ketsji/KX_VehicleWrapper.cpp
source/gameengine/Ketsji/KX_VehicleWrapper.h
source/gameengine/Ketsji/KX_VertexProxy.cpp
source/gameengine/Ketsji/KX_VertexProxy.h
source/gameengine/Ketsji/KX_VisibilityActuator.cpp
source/gameengine/Ketsji/KX_VisibilityActuator.h
source/gameengine/Ketsji/Makefile
source/gameengine/Ketsji/SConscript
source/gameengine/Physics/BlOde/Makefile
source/gameengine/Physics/BlOde/OdePhysicsController.cpp
source/gameengine/Physics/BlOde/OdePhysicsController.h
source/gameengine/Physics/BlOde/OdePhysicsEnvironment.cpp
source/gameengine/Physics/BlOde/OdePhysicsEnvironment.h
source/gameengine/Physics/BlOde/SConscript
source/gameengine/Physics/Dummy/Makefile
source/gameengine/Physics/Makefile
source/gameengine/Physics/Sumo/CMakeLists.txt
source/gameengine/Physics/Sumo/Fuzzics/Makefile
source/gameengine/Physics/Sumo/Fuzzics/include/SM_Callback.h
source/gameengine/Physics/Sumo/Fuzzics/include/SM_ClientObjectInfo.h
source/gameengine/Physics/Sumo/Fuzzics/include/SM_Debug.h
source/gameengine/Physics/Sumo/Fuzzics/include/SM_FhObject.h
source/gameengine/Physics/Sumo/Fuzzics/include/SM_MotionState.h
source/gameengine/Physics/Sumo/Fuzzics/include/SM_Object.h
source/gameengine/Physics/Sumo/Fuzzics/include/SM_Props.h
source/gameengine/Physics/Sumo/Fuzzics/include/SM_Scene.h
source/gameengine/Physics/Sumo/Fuzzics/sample/Makefile
source/gameengine/Physics/Sumo/Fuzzics/sample/particle.cpp
source/gameengine/Physics/Sumo/Fuzzics/sample/particle0.cpp
source/gameengine/Physics/Sumo/Fuzzics/src/Makefile
source/gameengine/Physics/Sumo/Fuzzics/src/SM_FhObject.cpp
source/gameengine/Physics/Sumo/Fuzzics/src/SM_MotionState.cpp
source/gameengine/Physics/Sumo/Fuzzics/src/SM_Object.cpp
source/gameengine/Physics/Sumo/Fuzzics/src/SM_Scene.cpp
source/gameengine/Physics/Sumo/Makefile
source/gameengine/Physics/Sumo/SConscript
source/gameengine/Physics/Sumo/SumoPHYCallbackBridge.cpp
source/gameengine/Physics/Sumo/SumoPHYCallbackBridge.h
source/gameengine/Physics/Sumo/SumoPhysicsController.cpp
source/gameengine/Physics/Sumo/SumoPhysicsController.h
source/gameengine/Physics/Sumo/SumoPhysicsEnvironment.cpp
source/gameengine/Physics/Sumo/SumoPhysicsEnvironment.h
source/gameengine/Physics/Sumo/convert.txt
source/gameengine/Physics/Sumo/include/interpolator.h
source/gameengine/Physics/common/Makefile
source/gameengine/SConscript
source/gameengine/VideoTexture/FilterBlueScreen.cpp
source/gameengine/VideoTexture/FilterColor.cpp
source/gameengine/VideoTexture/FilterNormal.cpp
source/gameengine/VideoTexture/ImageRender.cpp
source/gameengine/VideoTexture/ImageViewport.cpp
source/gameengine/VideoTexture/VideoBase.cpp
source/gameengine/VideoTexture/VideoFFmpeg.cpp
source/gameengine/VideoTexture/blendVideoTex.cpp
source/nan_compile.mk
source/nan_definitions.mk
source/nan_link.mk
tools/btools.py

@@@ -61,7 -61,7 +61,7 @@@ MACRO(SETUP_LIBLINK
    SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${PLATFORM_LINKFLAGS} ")
    #TARGET_LINK_LIBRARIES(${target} ${OPENGL_gl_LIBRARY} ${OPENGL_glu_LIBRARY} ${PYTHON_LIB} ${PYTHON_LINKFLAGS} ${JPEG_LIB} ${PNG_LIB} ${ZLIB_LIB} ${SDL_LIB} ${LLIBS})
  
--  TARGET_LINK_LIBRARIES(${target} ${OPENGL_gl_LIBRARY} ${OPENGL_glu_LIBRARY} ${PYTHON_LINKFLAGS} ${JPEG_LIBRARY} ${PNG_LIBRARIES} ${ZLIB_LIBRARIES} ${SDL_LIB} ${LLIBS})
++  TARGET_LINK_LIBRARIES(${target} ${OPENGL_gl_LIBRARY} ${OPENGL_glu_LIBRARY} ${PYTHON_LINKFLAGS} ${JPEG_LIB} ${PNG_LIB} ${ZLIB_LIB} ${SDL_LIB} ${LLIBS})
  
    # since we are using the local libs for python when compiling msvc projects, we need to add _d when compiling debug versions
  
diff --cc CMakeLists.txt
@@@ -89,7 -89,7 +89,7 @@@ INCLUDE(CMake/macros.cmake
  
  IF(UNIX)
    IF(WITH_OPENAL)
--    FIND_PACKAGE(OpenAL)
++    INCLUDE(${CMAKE_ROOT}/Modules/FindOpenAL.cmake)
      IF(OPENAL_FOUND)
        SET(WITH_OPENAL ON)
        SET(OPENAL_LIB ${OPENAL_LIBRARY})
    FIND_LIBRARY(INTL_LIBRARY
      NAMES intl
      PATHS
++    /usr/local/lib
++    /usr/lib
      /sw/lib
++    /opt/local/lib
++    /opt/csw/lib
++    /opt/lib
    )
    FIND_LIBRARY(ICONV_LIBRARY
      NAMES iconv
      PATHS
++    /usr/local/lib
++    /usr/lib
      /sw/lib
++    /opt/local/lib
++    /opt/csw/lib
++    /opt/lib
    )
    IF(INTL_LIBRARY AND ICONV_LIBRARY)
      SET(GETTEXT_LIB ${INTL_LIBRARY} ${ICONV_LIBRARY})
    )
    SET(FREETYPE_LIB freetype)
  
--  FIND_PACKAGE(PythonLibs)
++  INCLUDE(${CMAKE_ROOT}/Modules/FindPythonLibs.cmake)
    SET(PYTHON_INC "${PYTHON_INCLUDE_PATH}" CACHE STRING "")
    SET(PYTHON_LIB "${PYTHON_LIBRARIES}" CACHE STRING "")
--  FIND_PACKAGE(PythonInterp)
++  INCLUDE(${CMAKE_ROOT}/Modules/FindPythonInterp.cmake)
    SET(PYTHON_BINARY ${PYTHON_EXECUTABLE} CACHE STRING "")
    SET(PYTHON_LINKFLAGS "-Xlinker -export-dynamic")
  
--  FIND_PACKAGE(SDL)
++  INCLUDE(${CMAKE_ROOT}/Modules/FindSDL.cmake)
    SET(SDL_INC ${SDL_INCLUDE_DIR})
    SET(SDL_LIB ${SDL_LIBRARY})
  
    SET(FFMPEG_LIB avformat avcodec avutil avdevice swscale)
    SET(FFMPEG_LIBPATH ${FFMPEG}/lib)
  
--  FIND_PACKAGE(JPEG REQUIRED)
++  SET(JPEG_LIB jpeg)
  
--  FIND_PACKAGE(PNG REQUIRED)
++  SET(PNG_LIB png)
  
--  FIND_PACKAGE(ZLIB REQUIRED)
++  SET(ZLIB_LIB z)
  
    SET(LLIBS "-lXi -lutil -lc -lm -lpthread -lstdc++ -lX11 -ldl")
  
    # Better warnings
    SET(C_WARNINGS "-Wall -Wno-char-subscripts -Wpointer-arith -Wcast-align -Wnested-externs -Wdeclaration-after-statement")
  
--  INCLUDE_DIRECTORIES(${JPEG_INCLUDE_DIR} ${PNG_INCLUDE_DIR} ${ZLIB_INCLUDE_DIR} )
++  INCLUDE_DIRECTORIES(/usr/include /usr/local/include)
  ENDIF(UNIX)
  
  IF(WIN32)
  
--  # this file is included anyway when building under Windows with cl.exe
--  #  INCLUDE(${CMAKE_ROOT}/Modules/Platform/Windows-cl.cmake)
++  INCLUDE(${CMAKE_ROOT}/Modules/Platform/Windows-cl.cmake)
    
    SET(LIBDIR ${CMAKE_SOURCE_DIR}/../lib/windows)
  
    ENDIF(CMAKE_CL_64)
  
    IF(CMAKE_CL_64)
--      SET(PNG_LIBRARIES libpng)
++      SET(PNG_LIB libpng)
    ELSE(CMAKE_CL_64)
--    SET(PNG_LIBRARIES libpng_st)
++      SET(PNG_LIB libpng_st)
    ENDIF(CMAKE_CL_64)
--  SET(JPEG_LIBRARY libjpeg)
++  SET(JPEG_LIB libjpeg)
  
    SET(ZLIB ${LIBDIR}/zlib)
    SET(ZLIB_INC ${ZLIB}/include)
--  SET(ZLIB_LIBRARIES zlib)
++  SET(ZLIB_LIB libz)
    SET(ZLIB_LIBPATH ${ZLIB}/lib)
    
    SET(PTHREADS ${LIBDIR}/pthreads)
@@@ -326,7 -326,7 +335,7 @@@ IF(APPLE
    ENDIF(CMAKE_OSX_ARCHITECTURES MATCHES i386)
  
    IF(WITH_OPENAL)
--    FIND_PACKAGE(OpenAL)
++    INCLUDE(${CMAKE_ROOT}/Modules/FindOpenAL.cmake)
      IF(OPENAL_FOUND)
        SET(WITH_OPENAL ON)
        SET(OPENAL_LIB ${OPENAL_LIBRARY})
    SET(GETTEXT_LIB intl iconv)
    SET(GETTEXT_LIBPATH ${GETTEXT}/lib)
  
--  SET(PNG_LIBRARIES png)
--  SET(JPEG_LIBRARY jpeg)
++  SET(PNG_LIB png)
++  SET(JPEG_LIB jpeg)
  
    SET(ZLIB /usr)
    SET(ZLIB_INC "${ZLIB}/include")
--  SET(ZLIB_LIBRARIES z)
++  SET(ZLIB_LIB z)
  
    SET(FREETYPE ${LIBDIR}/freetype)
    SET(FREETYPE_INC ${FREETYPE}/include ${FREETYPE}/include/freetype2)
@@@ -429,7 -429,7 +438,7 @@@ ENDIF(WITH_WEBPLUGIN
  
  #-----------------------------------------------------------------------------
  # Configure OpenGL.
--FIND_PACKAGE(OpenGL)
++INCLUDE(${CMAKE_ROOT}/Modules/FindOpenGL.cmake)
  INCLUDE_DIRECTORIES(${OPENGL_INCLUDE_DIR})
  #-----------------------------------------------------------------------------
  # Extra compile flags
diff --cc SConstruct
@@@ -285,7 -285,7 +285,9 @@@ if 'blenderlite' in B.targets
        target_env_defs['WITH_BF_SDL'] = False
        target_env_defs['WITH_BF_JPEG'] = False
        target_env_defs['WITH_BF_PNG'] = False
++      target_env_defs['WITH_BF_ODE'] = False
        target_env_defs['WITH_BF_BULLET'] = False
++      target_env_defs['WITH_BF_SOLID'] = False
        target_env_defs['WITH_BF_BINRELOC'] = False
        target_env_defs['BF_BUILDINFO'] = False
        target_env_defs['BF_NO_ELBEEM'] = True
@@@ -141,11 -141,11 +141,20 @@@ BF_GETTEXT_LIBPATH = '${BF_GETTEXT}/lib
  WITH_BF_GAMEENGINE=True
  WITH_BF_PLAYER=True
  
++WITH_BF_ODE = False
++BF_ODE = LIBDIR + '/ode'
++BF_ODE_INC = '${BF_ODE}/include'
++BF_ODE_LIB = '${BF_ODE}/lib/libode.a'
++
  WITH_BF_BULLET = True
  BF_BULLET = '#extern/bullet2/src'
  BF_BULLET_INC = '${BF_BULLET}'
  BF_BULLET_LIB = 'extern_bullet'
  
++BF_SOLID = '#extern/solid'
++BF_SOLID_INC = '${BF_SOLID}'
++BF_SOLID_LIB = 'extern_solid'
++
  #WITH_BF_NSPR = True
  #BF_NSPR = $(LIBDIR)/nspr
  #BF_NSPR_INC = -I$(BF_NSPR)/include -I$(BF_NSPR)/include/nspr
@@@ -74,11 -74,11 +74,20 @@@ BF_GETTEXT_LIBPATH = '${BF_GETTEXT}/lib
  
  WITH_BF_GAMEENGINE='false'
  
++WITH_BF_ODE = 'false'
++BF_ODE = LIBDIR + '/ode'
++BF_ODE_INC = BF_ODE + '/include'
++BF_ODE_LIB = BF_ODE + '/lib/libode.a'
++
  WITH_BF_BULLET = 'true'
  BF_BULLET = '#extern/bullet2/src'
  BF_BULLET_INC = '${BF_BULLET}'
  BF_BULLET_LIB = 'extern_bullet'
  
++BF_SOLID = '#extern/solid'
++BF_SOLID_INC = '${BF_SOLID}'
++BF_SOLID_LIB = 'extern_solid'
++
  #WITH_BF_NSPR = 'true'
  #BF_NSPR = $(LIBDIR)/nspr
  #BF_NSPR_INC = -I$(BF_NSPR)/include -I$(BF_NSPR)/include/nspr
@@@ -77,11 -77,11 +77,20 @@@ BF_GETTEXT_LIBPATH = '${BF_GETTEXT}/lib
  WITH_BF_GAMEENGINE = True
  WITH_BF_PLAYER = True
  
++WITH_BF_ODE = False
++BF_ODE = LIBDIR + '/ode'
++BF_ODE_INC = BF_ODE + '/include'
++BF_ODE_LIB = BF_ODE + '/lib/libode.a'
++
  WITH_BF_BULLET = True
  BF_BULLET = '#extern/bullet2/src'
  BF_BULLET_INC = '${BF_BULLET}'
  BF_BULLET_LIB = 'extern_bullet'
  
++BF_SOLID = '#extern/solid'
++BF_SOLID_INC = '${BF_SOLID}'
++BF_SOLID_LIB = 'extern_solid'
++
  #WITH_BF_NSPR = True
  #BF_NSPR = $(LIBDIR)/nspr
  #BF_NSPR_INC = -I$(BF_NSPR)/include -I$(BF_NSPR)/include/nspr
@@@ -74,11 -74,11 +74,20 @@@ BF_GETTEXT_LIBPATH = '${BF_GETTEXT}/lib
  
  WITH_BF_GAMEENGINE = False
  
++WITH_BF_ODE = True
++BF_ODE = LIBDIR + '/ode'
++BF_ODE_INC = BF_ODE + '/include'
++BF_ODE_LIB = BF_ODE + '/lib/libode.a'
++
  WITH_BF_BULLET = True
  BF_BULLET = '#extern/bullet2/src'
  BF_BULLET_INC = '${BF_BULLET}'
  BF_BULLET_LIB = 'extern_bullet'
  
++BF_SOLID = '#extern/solid'
++BF_SOLID_INC = '${BF_SOLID}'
++BF_SOLID_LIB = 'extern_solid'
++
  BF_WINTAB = LIBDIR + '/wintab'
  BF_WINTAB_INC = '${BF_WINTAB}/INCLUDE'
  
@@@ -61,11 -61,11 +61,20 @@@ BF_GETTEXT_LIBPATH = '${BF_GETTEXT}/lib
  
  WITH_BF_GAMEENGINE=False
  
++WITH_BF_ODE = False
++BF_ODE = LIBDIR + '/ode'
++BF_ODE_INC = '${BF_ODE}/include'
++BF_ODE_LIB = '${BF_ODE}/lib/libode.a'
++
  WITH_BF_BULLET = True
  BF_BULLET = '#extern/bullet2/src'
  BF_BULLET_INC = '${BF_BULLET}'
  BF_BULLET_LIB = 'extern_bullet'
  
++BF_SOLID = '#extern/solid'
++BF_SOLID_INC = '${BF_SOLID}'
++BF_SOLID_LIB = 'extern_solid'
++
  #WITH_BF_NSPR = True
  #BF_NSPR = $(LIBDIR)/nspr
  #BF_NSPR_INC = -I$(BF_NSPR)/include -I$(BF_NSPR)/include/nspr
@@@ -69,11 -69,11 +69,20 @@@ BF_GETTEXT_LIBPATH = '${BF_GETTEXT}/lib
  
  WITH_BF_GAMEENGINE=False
  
++WITH_BF_ODE = False
++BF_ODE = LIBDIR + '/ode'
++BF_ODE_INC = BF_ODE + '/include'
++BF_ODE_LIB = BF_ODE + '/lib/libode.a'
++
  WITH_BF_BULLET = True
  BF_BULLET = '#extern/bullet2/src'
  BF_BULLET_INC = '${BF_BULLET}'
  BF_BULLET_LIB = 'extern_bullet'
  
++BF_SOLID = '#extern/solid'
++BF_SOLID_INC = '${BF_SOLID}'
++BF_SOLID_LIB = 'extern_solid'
++
  #WITH_BF_NSPR = True
  #BF_NSPR = $(LIBDIR)/nspr
  #BF_NSPR_INC = -I$(BF_NSPR)/include -I$(BF_NSPR)/include/nspr
@@@ -77,11 -77,11 +77,20 @@@ BF_GETTEXT_LIBPATH = '${BF_GETTEXT}/lib
  
  WITH_BF_GAMEENGINE = False
  
++WITH_BF_ODE = True
++BF_ODE = LIBDIR + '/ode'
++BF_ODE_INC = BF_ODE + '/include'
++BF_ODE_LIB = BF_ODE + '/lib/libode.a'
++
  WITH_BF_BULLET = True
  BF_BULLET = '#extern/bullet2/src'
  BF_BULLET_INC = '${BF_BULLET}'
  BF_BULLET_LIB = 'extern_bullet'
  
++BF_SOLID = '#extern/solid'
++BF_SOLID_INC = '${BF_SOLID}'
++BF_SOLID_LIB = 'extern_solid'
++
  BF_WINTAB = LIBDIR + '/wintab'
  BF_WINTAB_INC = '${BF_WINTAB}/INCLUDE'
  
@@@ -90,11 -90,11 +90,20 @@@ BF_GETTEXT_LIBPATH = '${BF_GETTEXT}/lib
  WITH_BF_GAMEENGINE = True
  WITH_BF_PLAYER = True
  
++WITH_BF_ODE = True
++BF_ODE = LIBDIR + '/ode'
++BF_ODE_INC = BF_ODE + '/include'
++BF_ODE_LIB = BF_ODE + '/lib/libode.a'
++
  WITH_BF_BULLET = True
  BF_BULLET = '#extern/bullet2/src'
  BF_BULLET_INC = '${BF_BULLET}'
  BF_BULLET_LIB = 'extern_bullet'
  
++BF_SOLID = '#extern/solid'
++BF_SOLID_INC = '${BF_SOLID}'
++BF_SOLID_LIB = 'extern_solid'
++
  BF_WINTAB = LIBDIR + '/wintab'
  BF_WINTAB_INC = '${BF_WINTAB}/INCLUDE'
  
@@@ -93,11 -93,11 +93,20 @@@ BF_GETTEXT_LIBPATH = '${BF_GETTEXT}/lib
  WITH_BF_GAMEENGINE = True
  WITH_BF_PLAYER = False
  
++WITH_BF_ODE = True
++BF_ODE = LIBDIR + '/ode'
++BF_ODE_INC = BF_ODE + '/include'
++BF_ODE_LIB = BF_ODE + '/lib/libode.a'
++
  WITH_BF_BULLET = True
  BF_BULLET = '#extern/bullet2/src'
  BF_BULLET_INC = '${BF_BULLET}'
  BF_BULLET_LIB = 'extern_bullet'
  
++BF_SOLID = '#extern/solid'
++BF_SOLID_INC = '${BF_SOLID}'
++BF_SOLID_LIB = 'extern_solid'
++
  BF_WINTAB = LIBDIR + '/wintab'
  BF_WINTAB_INC = '${BF_WINTAB}/INCLUDE'
  
  #
  # ***** END GPL LICENSE BLOCK *****
  
++IF(WITH_GAMEENGINE)
++  ADD_SUBDIRECTORY(qhull)
++  ADD_SUBDIRECTORY(solid)
++ENDIF(WITH_GAMEENGINE)
++
  IF(WITH_BULLET)
    ADD_SUBDIRECTORY(bullet2)
  ENDIF(WITH_BULLET)
diff --cc extern/Makefile
@@@ -30,7 -30,7 +30,7 @@@ include nan_definitions.m
  
  SOURCEDIR = extern
  DIR = $(OCGDIR)/extern
--DIRS = glew/src
++DIRS = qhull/src solid glew/src
  
  ifeq ($(WITH_FFMPEG), true)
  ifeq ($(NAN_FFMPEG), $(LCGDIR)/ffmpeg)
@@@ -4,6 -4,6 +4,10 @@@ Import('env'
  
  SConscript(['glew/SConscript'])
  
++if env['WITH_BF_GAMEENGINE']:
++      if env['WITH_BF_SOLID']:
++              SConscript(['qhull/SConscript', 'solid/SConscript'])
++
  if env['WITH_BF_BULLET']:
      SConscript(['bullet2/src/SConscript'])
  
index 0000000,0000000..f2ac24a
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,45 @@@
++# $Id$
++# ***** BEGIN GPL LICENSE BLOCK *****
++#
++# This program is free software; you can redistribute it and/or
++# modify it under the terms of the GNU General Public License
++# as published by the Free Software Foundation; either version 2
++# of the License, or (at your option) any later version.
++#
++# This program is distributed in the hope that it will be useful,
++# but WITHOUT ANY WARRANTY; without even the implied warranty of
++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++# GNU General Public License for more details.
++#
++# You should have received a copy of the GNU General Public License
++# along with this program; if not, write to the Free Software Foundation,
++# Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
++#
++# The Original Code is Copyright (C) 2006, Blender Foundation
++# All rights reserved.
++#
++# The Original Code is: all of this file.
++#
++# Contributor(s): Jacques Beaurain.
++#
++# ***** END GPL LICENSE BLOCK *****
++
++SET(INC include src)
++
++SET(SRC
++  src/geom.c
++  src/geom2.c
++  src/global.c
++  src/io.c
++  src/mem.c
++  src/merge.c
++  src/poly.c
++  src/poly2.c
++  src/qhull.c
++  src/qset.c
++  src/stat.c
++  src/user.c
++)
++
++BLENDERLIB(extern_qhull "${SRC}" "${INC}")
++#, libtype=['game2','player'], priority=[50, 85]
index 0000000,0000000..1334eba
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,37 @@@
++                    Qhull, Copyright (c) 1993-2002
++
++       The National Science and Technology Research Center for
++        Computation and Visualization of Geometric Structures
++                        (The Geometry Center)
++                       University of Minnesota
++                            400 Lind Hall
++                        207 Church Street S.E.
++                      Minneapolis, MN 55455  USA
++
++                       email: qhull@geom.umn.edu
++
++This software includes Qhull from The Geometry Center.  Qhull is 
++copyrighted as noted above.  Qhull is free software and may be obtained 
++via http from www.geom.umn.edu.  It may be freely copied, modified, 
++and redistributed under the following conditions:
++
++1. All copyright notices must remain intact in all files.
++
++2. A copy of this text file must be distributed along with any copies 
++   of Qhull that you redistribute; this includes copies that you have 
++   modified, or copies of programs or other software products that 
++   include Qhull.
++
++3. If you modify Qhull, you must include a notice giving the
++   name of the person performing the modification, the date of
++   modification, and the reason for such modification.
++
++4. When distributing modified versions of Qhull, or other software 
++   products that include Qhull, you must provide notice that the original 
++   source code may be obtained as noted above.
++
++5. There is no warranty or other guarantee of fitness for Qhull, it is 
++   provided solely "as is".  Bug reports or fixes may be sent to 
++   qhull_bug@geom.umn.edu; the authors may or may not act on them as 
++   they desire.
++
index 0000000,0000000..9ef958a
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,318 @@@
++Name
++
++      qhull, rbox         2002.1           August 20, 2002
++  
++Convex hull, Delaunay triangulation, Voronoi diagrams, Halfspace intersection
++ 
++      Documentation:
++        html/index.htm
++
++      Available from:
++        <http://www.geom.umn.edu/software/qhull>
++      <http://savannah.gnu.org/projects/qhull>
++      <http://www.thesa.com/software/qhull>
++
++      Version 1 (simplicial only):
++        <http://www.geom.umn.edu/software/qhull/qhull-1.0.tar.gz>
++        <http://www.geom.umn.edu/software/qhull/qhull.sit.hqx>
++       
++      News and a paper:
++        <http://www.geom.umn.edu/~bradb/qhull-news.html>
++        <http://www.geom.umn.edu/software/qhull/qhull-96.ps>
++
++Purpose
++
++  Qhull is a general dimension convex hull program that reads a set 
++  of points from stdin, and outputs the smallest convex set that contains 
++  the points to stdout.  It also generates Delaunay triangulations, Voronoi 
++  diagrams, furthest-site Voronoi diagrams, and halfspace intersections
++  about a point.  
++
++  Rbox is a useful tool in generating input for Qhull; it generates 
++  hypercubes, diamonds, cones, circles, simplices, spirals, 
++  lattices, and random points.
++  
++  Qhull produces graphical output for Geomview.  This helps with
++  understanding the output. <http://www.geomview.org>
++
++    
++Environment requirements
++
++  Qhull and rbox should run on all 32-bit and 64-bit computers.  Use
++  an ANSI C or C++ compiler to compile the program.  The software is 
++  self-contained.  
++  
++  Qhull is copyrighted software.  Please read COPYING.txt and REGISTER.txt
++  before using or distributing Qhull.
++
++To contribute to Qhull
++
++  Qhull is on Savannah, http://savannah.gnu.org/projects/qhull/
++
++Qhull on Windows 95, 98, ME, NT, 2000, XP
++
++  The zip file contains rbox.exe, qhull.exe, qconvex.exe, qdelaunay.exe, 
++  qhalf.exe, qvoronoi.exe, documentation files, and source files.
++  
++  To install Qhull:
++  - Unzip the files into a directory.  You may use WinZip32 <www.hotfiles.com>
++  - Open a DOS window for the directory.  
++  - In Windows 95, the DOS window needs improvement.
++      - Double-click on qhull\eg\qhull-go.bat to call doskey (arrow keys).
++      - Increase the size of the screen font to 8x12.
++      - If the text is too dim, fix the screen colors with shareware (e.g., crt.exe)
++  - If you use qhull a lot, consider using the Cygwin Unix shell,
++        Cygwin tools (http://sources.redhat.com/cygwin/)
++  - Execute 'qconvex' for a synopsis and examples.
++  - Execute 'rbox 10 | qconvex' to compute the convex hull of 10 random points.
++  - Execute 'rbox 10 | qconvex i TO file' to write results to 'file'. 
++  - If an error occurs, Windows 95 sends the error to stdout instead of stderr 
++      - use 'TO xxx' to send normal output to xxx and error output to stdout
++  - Browse the documentation: qhull\html\index.htm
++
++Compiling for Unix
++
++  The gzip file, qhull.tgz, contains documentation and source files for
++  qhull and rbox.  
++  
++  To unpack the gzip file
++  - tar zxf qhull.tgz
++  - cd qhull
++  
++  Compiling with the Debian Make:[R. Laboissiere]
++  - cd src
++  - ./Make-config.sh
++  - cd ..
++  - configure
++  - make
++
++  Compiling with Makefile (i.e., Makefile.txt)   
++  - cd src
++  - in Makefile, check the CC, CCOPTS1, PRINTMAN, and PRINTC defines
++      - the defaults are gcc and enscript
++      - CCOPTS1 should include the ANSI flag.  It defines __STDC__
++  - in user.h, check the definitions of qh_SECticks and qh_CPUclock.
++      - use '#define qh_CLOCKtype 2' for timing runs longer than 1 hour
++  - type: make 
++      - this builds: qhull qconvex qdelaunay qhalf qvoronoi rbox libqhull.a
++  - type: make doc
++      - this prints the man page
++      - See also qhull/html/index.htm
++  - if your compiler reports many errors, it is probably not a ANSI C compiler
++      - you will need to set the -ansi switch or find another compiler
++  - if your compiler warns about missing prototypes for fprintf() etc.
++      - this is ok, your compiler should have these in stdio.h
++  - if your compiler warns about missing prototypes for memset() etc.
++      - include memory.h in qhull_a.h
++  - if your compiler is gcc-2.95.1, you need to set flag -fno-strict-aliasing.  
++      - This flag is set by default for other versions [Karas, Krishnaswami]
++  - if your compiler reports "global.c: storage size of 'qh_qh' isn't known"
++      - delete the initializer "={0}" in global.c, stat.c and mem.c
++  - if your compiler warns about "stat.c: improper initializer"
++      - this is ok, the initializer is not used
++  - if you have trouble building libqhull.a with 'ar'
++      - try 'make -f Makefile.txt qhullx' 
++  - if the code compiles, the qhull test case will automatically execute
++  - if an error occurs, there's an incompatibility between machines
++      - For gcc-2.95.1, you need to set flag -fno-strict-aliasing.
++          It is set by default for other versions of gcc [Karas, Krishnaswami]
++      - If you can, try a different compiler 
++      - You can turn off the Qhull memory manager with qh_NOmem in mem.h
++      - You can turn off compiler optimization (-O2 in Makefile)
++      - If you find the source of the problem, please let us know
++  - if you have Geomview (www.geomview.org)
++       - try  'rbox 100 | qconvex G >a' and load 'a' into Geomview
++       - run 'q_eg' for Geomview examples of Qhull output (see qh-eg.htm)
++  - to install the programs and their man pages:
++      - define MANDIR and BINDIR
++      - type 'make install'
++
++Compiling for Windows NT, 2000, XP with cygwin (www.cygwin.com)
++
++    - install cygwin with gcc, make, ar, and ln
++    - cd qhull/src
++    - make -f Makefile.txt
++
++Compiling for Windows 95, 98, NT, 2000, XP
++
++  Qhull compiles as a console application in Visual C++ 5.0 at warning 
++  level 3.
++
++  Visual C++ quickstart for qhull.exe:  
++    - create a "Win32 console application" called "qhull"
++      - add the following files:
++          geom.c geom2.c global.c io.c mem.c merge.c poly.c poly2.c qhull.c
++              qset.c stat.c unix.c user.c
++    - create a "Win32 console application" called "rbox" 
++      - add rbox.c
++
++  Visual C++ quickstart for qhull library, qconvex.exe, etc.
++    - To simplify setting up lots of projects, 
++      - create a temporary "Win32 console application" called "source"
++      - add all .c files from .../src/...
++      - In Tools::Options::Tab
++        Set tab size to 8 and indent size to 2
++
++    - create a "Win32 console application" called "rbox"
++      - move rbox.c from "qhull source"
++      - for Project:Settings..., Link
++        you only need the default libraries
++      - build the project
++
++    - create a "Win32 static library" called "library"
++      - move these files from "qhull source"
++          geom.c geom2.c global.c io.c mem.c merge.c poly.c poly2.c qhull.c
++              qset.c stat.c user.c
++      - set the library file (use the same for debug and release)
++      - build the project
++
++    - create a "Win32 console application" called "qhull"
++      - move unix.c from "qhull source"
++      - Set the library file in Project:Settings..., Link
++      - Qhull does not use other libraries
++
++    - create a "Win32 console application" called "qconvex"
++      - move qconvex.c from "qhull source"
++      - Set the library file in Project:Settings..., Link
++
++    - do the same for qdelaun.c, qhalf, qvoronoi.c, user_eg.c, user_eg2.c
++      - delete "qhull sources" since it is no longer needed
++      - Set the library file in Project:Settings..., Link
++      - use Project:Settings to make any changes
++      - use batch build to rebuild everything
++  
++  Qhull compiles with Borland C++ 5.0 bcc32.  A Makefile is included.
++  Execute 'make -f MBorland'.  If you use the Borland IDE, set the ANSI
++  option in Options:Project:Compiler:Source:Language-compliance.
++  
++  Qhull compiles with Borland C++ 4.02 for Win32 and DOS Power Pack.  
++  Use 'make -f MBorland -D_DPMI'.  Qhull 1.0 compiles with Borland 
++  C++ 4.02.  For rbox 1.0, use "bcc32 -WX -w- -O2-e -erbox -lc rbox.c".  
++  Use the same options for Qhull 1.0. [D. Zwick]
++  
++  Qhull compiles with Metrowerks C++ 1.7 with the ANSI option.
++
++  If you turn on full warnings, the compiler will report a number of 
++  unused variables, variables set but not used, and dead code.  These are
++  intentional.  For example, variables may be initialized (unnecessarily)
++  to prevent warnings about possible use of uninitialized variables.  
++
++Compiling for the Power Macintosh
++
++  Qhull compiles for the Power Macintosh with Metrowerk's C compiler.
++  It uses the SIOUX interface to read point coordinates and return output.
++  There is no graphical output.  For project files, see 'Compiling for
++  Windows 95'.  Instead of using SIOUX, Qhull may be embedded within an 
++  application.  
++
++  Version 1 is available for Macintosh computers by download of qhull.sit.hqx
++  It reads point coordinates from a standard file and returns output
++  to a standard file.  There is no graphical output.
++
++
++Compiling for other machines
++ 
++  Some users have reported problems with compiling Qhull under Irix 5.1.  It
++  compiles under other versions of Irix. 
++  
++  If you have troubles with the memory manager, you can turn it off by
++  defining qh_NOmem in mem.h.
++
++  You may compile Qhull with a C++ compiler.  
++
++
++Distributed files
++
++  README.txt           // instructions for installing Qhull 
++  REGISTER.txt         // Qhull registration 
++  COPYING.txt          // copyright notice 
++  Announce.txt         // announcement 
++  Changes.txt          // change history for Qhull and rbox 
++  qh-faq.htm           // Frequently asked questions
++  qh-home.htm          // Home page 
++  qh-get.htm         // Download page
++  html/index.htm       // Manual
++  Makefile.txt         // Makefile for Unix or cygwin 'make' 
++  MBorland             // Makefile for Borland C++/Win32
++  Make-config.sh       // Create Debian configure and automake
++ 
++src/      
++  rbox consists of:
++     rbox.exe          // Win32 executable (.zip only) 
++     rbox.htm          // html manual 
++     rbox.man          // Unix man page 
++     rbox.txt
++     rbox.c            // source program 
++     
++  qhull consists of:
++     qhull.exe         // Win32 executables (.zip only) 
++     qconvex.exe
++     qdelaunay.exe
++     qhalf.exe
++     qvoronoi.exe
++     qhull-go.bat      // DOS window
++     qconvex.htm       // html manuals
++     qdelaun.htm
++     qdelau_f.htm        
++     qhalf.htm
++     qvoronoi.htm
++     qvoron_f.htm
++     qh-eg.htm
++     qh-impre.htm
++     qh-in.htm
++     index.htm
++     qh-opt*.htm
++     qh-quick.htm
++     qh--4d.gif,etc.   // images for manual 
++     qhull.man         // Unix man page 
++     qhull.txt
++     q_eg              // shell script for Geomview examples
++     q_egtest          // shell script for Geomview test examples
++     q_test            // shell script to test qhull
++  
++  top-level source files:
++     src/index.htm     // index to source files 
++       qh-...htm         //   specific files
++     user.h            // header file of user definable constants 
++     qhull.h           // header file for qhull 
++     unix.c            // Unix front end to qhull 
++     qhull.c           // Quickhull algorithm with partitioning 
++     user.c            // user re-definable functions 
++     user_eg.c         // example of incorporating qhull into a user program 
++     user_eg2.c        // more complex example 
++     qhull_interface.cpp // call Qhull from C++
++
++  other source files:
++     qhull_a.h         // include file for *.c 
++     geom.c            // geometric routines 
++     geom2.c
++     geom.h   
++     global.c          // global variables 
++     io.c              // input-output routines 
++     io.h
++     mem.c             // memory routines, this is stand-alone code 
++     mem.h
++     merge.c           // merging of non-convex facets 
++     merge.h
++     poly.c            // polyhedron routines 
++     poly2.c
++     poly.h 
++     qset.c            // set routines, this only depends on mem.c 
++     qset.h
++     stat.c            // statistics 
++     stat.h
++
++Authors:
++
++  C. Bradford Barber                    Hannu Huhdanpaa
++  bradb@geom.umn.edu                    hannu@geom.umn.edu
++  
++                    c/o The Geometry Center
++                    University of Minnesota
++                    400 Lind Hall
++                    207 Church Street S.E.
++                    Minneapolis, MN 55455
++  
++  This software was developed under NSF grants NSF/DMS-8920161 and
++  NSF-CCR-91-15793 750-7504 at the Geometry Center and Harvard 
++  University.  If you find Qhull useful, please let us know.
index 0000000,0000000..767eb1c
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,37 @@@
++Dear User of Geometry Center Software:
++
++We would like to find out how you are using our software.  Think of
++Geometry Center software as a new kind of shareware: you share your
++science and successes with us, and we share our software and support
++with you. 
++
++If you use Geometry Center software, please send us a note telling
++us what you are doing with it.
++
++We need to know:
++
++  (1) What you are working on - an abstract of your work would be
++      fine.
++
++  (2) What Geometry Center software you use.
++
++  (3) How that software has helped you, for example, by increasing
++      your productivity or allowing you to do things you could not do
++      before.  In particular, if you feel that Geometry Center
++      software has had a direct bearing on your work, please tell us
++      about this.
++
++We encourage you to cite the use of any Geometry Center software you
++have used in your publications.  
++
++To cite Qhull, use
++
++    Barber, C.B., Dobkin, D.P., and Huhdanpaa, H.T., "The Quickhull 
++      algorithm for convex hulls," ACM Trans. on Mathematical Software,
++      Dec 1996.  http://www.geom.umn.edu/software/qhull
++
++Please send e-mail to
++
++    qhull@geom.umn.edu
++
++Thank you!
index 0000000,0000000..d3db67c
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,35 @@@
++#!/usr/bin/python
++import sys
++import os
++
++Import('env')
++defs = ''
++cflags = []
++if sys.platform=='linux2' or sys.platform=='linux-i386':
++   cflags += ['-O2','-ansi']
++elif env['OURPLATFORM']=='win32-vc':
++   cflags += ['/O2']
++elif env['OURPLATFORM']=='win32-mingw':
++   cflags += ['-O2']
++elif sys.platform=='sunos5':
++   cflags += ['-O2', '-ansi']
++elif sys.platform=='darwin':
++   cflags += ['-O2', '-pipe', '-fPIC', '-funsigned-char', '-ffast-math']
++
++sources = ['src/geom.c',
++    'src/geom2.c',
++    'src/global.c',
++    'src/io.c',
++    'src/mem.c',
++    'src/merge.c',
++    'src/poly.c',
++    'src/poly2.c',
++    'src/qhull.c',
++    'src/qset.c',
++    'src/stat.c',
++    'src/user.c']
++
++
++incs = 'include src'
++
++env.BlenderLib ( 'extern_qhull', sources, Split(incs), Split(defs), libtype=['extern'], priority=[50], compileflags = cflags)
index 0000000,0000000..96c68d8
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,29 @@@
++Microsoft Developer Studio Workspace File, Format Version 6.00
++# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
++
++###############################################################################
++
++Project: "qhull"=".\qhull\qhull.dsp" - Package Owner=<4>
++
++Package=<5>
++{{{
++}}}
++
++Package=<4>
++{{{
++}}}
++
++###############################################################################
++
++Global:
++
++Package=<5>
++{{{
++}}}
++
++Package=<3>
++{{{
++}}}
++
++###############################################################################
++
index 0000000,0000000..6e059b0
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,192 @@@
++# Microsoft Developer Studio Project File - Name="qhull" - Package Owner=<4>
++# Microsoft Developer Studio Generated Build File, Format Version 6.00
++# ** DO NOT EDIT **
++
++# TARGTYPE "Win32 (x86) Static Library" 0x0104
++
++CFG=qhull - Win32 Debug
++!MESSAGE This is not a valid makefile. To build this project using NMAKE,
++!MESSAGE use the Export Makefile command and run
++!MESSAGE 
++!MESSAGE NMAKE /f "qhull.mak".
++!MESSAGE 
++!MESSAGE You can specify a configuration when running NMAKE
++!MESSAGE by defining the macro CFG on the command line. For example:
++!MESSAGE 
++!MESSAGE NMAKE /f "qhull.mak" CFG="qhull - Win32 Debug"
++!MESSAGE 
++!MESSAGE Possible choices for configuration are:
++!MESSAGE 
++!MESSAGE "qhull - Win32 Release" (based on "Win32 (x86) Static Library")
++!MESSAGE "qhull - Win32 Debug" (based on "Win32 (x86) Static Library")
++!MESSAGE 
++
++# Begin Project
++# PROP AllowPerConfigDependencies 0
++# PROP Scc_ProjName ""
++# PROP Scc_LocalPath ""
++CPP=cl.exe
++RSC=rc.exe
++
++!IF  "$(CFG)" == "qhull - Win32 Release"
++
++# PROP BASE Use_MFC 0
++# PROP BASE Use_Debug_Libraries 0
++# PROP BASE Output_Dir "Release"
++# PROP BASE Intermediate_Dir "Release"
++# PROP BASE Target_Dir ""
++# PROP Use_MFC 0
++# PROP Use_Debug_Libraries 0
++# PROP Output_Dir "Release"
++# PROP Intermediate_Dir "Release"
++# PROP Target_Dir ""
++LINK32=cwlink.exe
++MTL=midl.exe
++# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c
++# ADD CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c
++# ADD BASE RSC /l 0x409 /d "NDEBUG"
++# ADD RSC /l 0x409 /d "NDEBUG"
++BSC32=bscmake.exe
++# ADD BASE BSC32 /nologo
++# ADD BSC32 /nologo
++LIB32=link.exe -lib
++# ADD BASE LIB32 /nologo
++# ADD LIB32 /nologo
++# Begin Special Build Tool
++SOURCE="$(InputPath)"
++PostBuild_Cmds=XCOPY   /Y   ..\..\include\qhull\*.h   ..\..\..\..\..\lib\windows\qhull\include\qhull\         XCOPY   /Y   Release\*.lib   ..\..\..\..\..\lib\windows\qhull\lib\ 
++# End Special Build Tool
++
++!ELSEIF  "$(CFG)" == "qhull - Win32 Debug"
++
++# PROP BASE Use_MFC 0
++# PROP BASE Use_Debug_Libraries 1
++# PROP BASE Output_Dir "Debug"
++# PROP BASE Intermediate_Dir "Debug"
++# PROP BASE Target_Dir ""
++# PROP Use_MFC 0
++# PROP Use_Debug_Libraries 1
++# PROP Output_Dir "Debug"
++# PROP Intermediate_Dir "Debug"
++# PROP Target_Dir ""
++LINK32=cwlink.exe
++MTL=midl.exe
++# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c
++# ADD CPP /nologo /MT /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c
++# ADD BASE RSC /l 0x409 /d "_DEBUG"
++# ADD RSC /l 0x409 /d "_DEBUG"
++BSC32=bscmake.exe
++# ADD BASE BSC32 /nologo
++# ADD BSC32 /nologo
++LIB32=link.exe -lib
++# ADD BASE LIB32 /nologo
++# ADD LIB32 /nologo
++# Begin Special Build Tool
++SOURCE="$(InputPath)"
++PostBuild_Cmds=XCOPY   /Y   ..\..\include\qhull\*.h   ..\..\..\..\..\lib\windows\qhull\include\qhull\         XCOPY   /Y   Debug\*.lib   ..\..\..\..\..\lib\windows\qhull\lib\Debug\ 
++# End Special Build Tool
++
++!ENDIF 
++
++# Begin Target
++
++# Name "qhull - Win32 Release"
++# Name "qhull - Win32 Debug"
++# Begin Group "Source Files"
++
++# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
++# Begin Source File
++
++SOURCE=..\..\src\geom.c
++# End Source File
++# Begin Source File
++
++SOURCE=..\..\src\geom2.c
++# End Source File
++# Begin Source File
++
++SOURCE=..\..\src\global.c
++# End Source File
++# Begin Source File
++
++SOURCE=..\..\src\io.c
++# End Source File
++# Begin Source File
++
++SOURCE=..\..\src\mem.c
++# End Source File
++# Begin Source File
++
++SOURCE=..\..\src\merge.c
++# End Source File
++# Begin Source File
++
++SOURCE=..\..\src\poly.c
++# End Source File
++# Begin Source File
++
++SOURCE=..\..\src\poly2.c
++# End Source File
++# Begin Source File
++
++SOURCE=..\..\src\qhull.c
++# End Source File
++# Begin Source File
++
++SOURCE=..\..\src\qset.c
++# End Source File
++# Begin Source File
++
++SOURCE=..\..\src\stat.c
++# End Source File
++# Begin Source File
++
++SOURCE=..\..\src\user.c
++# End Source File
++# End Group
++# Begin Group "Header Files"
++
++# PROP Default_Filter "h;hpp;hxx;hm;inl"
++# Begin Source File
++
++SOURCE=..\..\src\geom.h
++# End Source File
++# Begin Source File
++
++SOURCE=..\..\src\io.h
++# End Source File
++# Begin Source File
++
++SOURCE=..\..\src\mem.h
++# End Source File
++# Begin Source File
++
++SOURCE=..\..\src\merge.h
++# End Source File
++# Begin Source File
++
++SOURCE=..\..\src\poly.h
++# End Source File
++# Begin Source File
++
++SOURCE=..\..\src\qhull.h
++# End Source File
++# Begin Source File
++
++SOURCE=..\..\src\qhull_a.h
++# End Source File
++# Begin Source File
++
++SOURCE=..\..\src\qset.h
++# End Source File
++# Begin Source File
++
++SOURCE=..\..\src\stat.h
++# End Source File
++# Begin Source File
++
++SOURCE=..\..\src\user.h
++# End Source File
++# End Group
++# End Target
++# End Project
index 0000000,0000000..32440cf
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,177 @@@
++/*<html><pre>  -<a                             href="qh-geom.htm"
++  >-------------------------------</a><a name="TOP">-</a>
++
++  geom.h 
++    header file for geometric routines
++
++   see qh-geom.htm and geom.c
++
++   copyright (c) 1993-2002 The Geometry Center        
++*/
++
++#ifndef qhDEFgeom
++#define qhDEFgeom 1
++
++/* ============ -macros- ======================== */
++
++/*-<a                             href="qh-geom.htm#TOC"
++  >--------------------------------</a><a name="fabs_">-</a>
++   
++  fabs_(a)
++    returns the absolute value of a
++*/
++#define fabs_( a ) ((( a ) < 0 ) ? -( a ):( a ))
++               
++/*-<a                             href="qh-geom.htm#TOC"
++  >--------------------------------</a><a name="fmax_">-</a>
++  
++  fmax_(a,b)
++    returns the maximum value of a and b
++*/
++#define fmax_( a,b )  ( ( a ) < ( b ) ? ( b ) : ( a ) )
++
++/*-<a                             href="qh-geom.htm#TOC"
++  >--------------------------------</a><a name="fmin_">-</a>
++
++  fmin_(a,b)
++    returns the minimum value of a and b
++*/
++#define fmin_( a,b )  ( ( a ) > ( b ) ? ( b ) : ( a ) )
++
++/*-<a                             href="qh-geom.htm#TOC"
++  >--------------------------------</a><a name="maximize_">-</a>
++
++  maximize_(maxval, val)
++    set maxval to val if val is greater than maxval
++*/
++#define maximize_( maxval, val ) {if (( maxval ) < ( val )) ( maxval )= ( val );}
++
++/*-<a                             href="qh-geom.htm#TOC"
++  >--------------------------------</a><a name="minimize_">-</a>
++
++  minimize_(minval, val)
++    set minval to val if val is less than minval
++*/
++#define minimize_( minval, val ) {if (( minval ) > ( val )) ( minval )= ( val );}
++
++/*-<a                             href="qh-geom.htm#TOC"
++  >--------------------------------</a><a name="det2_">-</a>
++
++  det2_(a1, a2,     
++        b1, b2)
++  
++    compute a 2-d determinate
++*/
++#define det2_( a1,a2,b1,b2 ) (( a1 )*( b2 ) - ( a2 )*( b1 ))
++
++/*-<a                             href="qh-geom.htm#TOC"
++  >--------------------------------</a><a name="det3_">-</a>
++  
++  det3_(a1, a2, a3,    
++       b1, b2, b3,
++       c1, c2, c3)
++  
++    compute a 3-d determinate
++*/
++#define det3_( a1,a2,a3,b1,b2,b3,c1,c2,c3 ) ( ( a1 )*det2_( b2,b3,c2,c3 ) \
++                - ( b1 )*det2_( a2,a3,c2,c3 ) + ( c1 )*det2_( a2,a3,b2,b3 ) )
++
++/*-<a                             href="qh-geom.htm#TOC"
++  >--------------------------------</a><a name="dX">-</a>
++  
++  dX( p1, p2 )
++  dY( p1, p2 )
++  dZ( p1, p2 )
++  
++    given two indices into rows[],
++
++    compute the difference between X, Y, or Z coordinates
++*/
++#define dX( p1,p2 )  ( *( rows[p1] ) - *( rows[p2] ))
++#define dY( p1,p2 )  ( *( rows[p1]+1 ) - *( rows[p2]+1 ))
++#define dZ( p1,p2 )  ( *( rows[p1]+2 ) - *( rows[p2]+2 ))
++#define dW( p1,p2 )  ( *( rows[p1]+3 ) - *( rows[p2]+3 ))
++
++/*============= prototypes in alphabetical order, infrequent at end ======= */
++
++void    qh_backnormal (realT **rows, int numrow, int numcol, boolT sign, coordT *normal, boolT *nearzero);
++void  qh_distplane (pointT *point, facetT *facet, realT *dist);
++facetT *qh_findbest (pointT *point, facetT *startfacet,
++                   boolT bestoutside, boolT isnewfacets, boolT noupper,
++                   realT *dist, boolT *isoutside, int *numpart);
++facetT *qh_findbesthorizon (boolT ischeckmax, pointT *point, 
++                   facetT *startfacet, boolT noupper, realT *bestdist, int *numpart);
++facetT *qh_findbestnew (pointT *point, facetT *startfacet, realT *dist, 
++                   boolT bestoutside, boolT *isoutside, int *numpart);
++void  qh_gausselim(realT **rows, int numrow, int numcol, boolT *sign, boolT *nearzero);
++realT   qh_getangle(pointT *vect1, pointT *vect2);
++pointT *qh_getcenter(setT *vertices);
++pointT *qh_getcentrum(facetT *facet);
++realT   qh_getdistance(facetT *facet, facetT *neighbor, realT *mindist, realT *maxdist);
++void    qh_normalize (coordT *normal, int dim, boolT toporient);
++void    qh_normalize2 (coordT *normal, int dim, boolT toporient, 
++            realT *minnorm, boolT *ismin);
++pointT *qh_projectpoint(pointT *point, facetT *facet, realT dist);
++
++void    qh_setfacetplane(facetT *newfacets);
++void  qh_sethyperplane_det (int dim, coordT **rows, coordT *point0, 
++              boolT toporient, coordT *normal, realT *offset, boolT *nearzero);
++void  qh_sethyperplane_gauss (int dim, coordT **rows, pointT *point0, 
++           boolT toporient, coordT *normal, coordT *offset, boolT *nearzero);
++boolT   qh_sharpnewfacets (void);
++
++/*========= infrequently used code in geom2.c =============*/
++
++
++coordT *qh_copypoints (coordT *points, int numpoints, int dimension);
++void    qh_crossproduct (int dim, realT vecA[3], realT vecB[3], realT vecC[3]);
++realT         qh_determinant (realT **rows, int dim, boolT *nearzero);
++realT   qh_detjoggle (pointT *points, int numpoints, int dimension);
++void    qh_detroundoff (void);
++realT   qh_detsimplex(pointT *apex, setT *points, int dim, boolT *nearzero);
++realT   qh_distnorm (int dim, pointT *point, pointT *normal, realT *offsetp);
++realT   qh_distround (int dimension, realT maxabs, realT maxsumabs);
++realT   qh_divzero(realT numer, realT denom, realT mindenom1, boolT *zerodiv);
++realT   qh_facetarea (facetT *facet);
++realT   qh_facetarea_simplex (int dim, coordT *apex, setT *vertices, 
++          vertexT *notvertex,  boolT toporient, coordT *normal, realT *offset);
++pointT *qh_facetcenter (setT *vertices);
++facetT *qh_findgooddist (pointT *point, facetT *facetA, realT *distp, facetT **facetlist);
++void    qh_getarea (facetT *facetlist);
++boolT   qh_gram_schmidt(int dim, realT **rows);
++boolT   qh_inthresholds (coordT *normal, realT *angle);
++void    qh_joggleinput (void);
++realT  *qh_maxabsval (realT *normal, int dim);
++setT   *qh_maxmin(pointT *points, int numpoints, int dimension);
++realT   qh_maxouter (void);
++void    qh_maxsimplex (int dim, setT *maxpoints, pointT *points, int numpoints, setT **simplex);
++realT   qh_minabsval (realT *normal, int dim);
++int     qh_mindiff (realT *vecA, realT *vecB, int dim);
++boolT   qh_orientoutside (facetT *facet);
++void    qh_outerinner (facetT *facet, realT *outerplane, realT *innerplane);
++coordT  qh_pointdist(pointT *point1, pointT *point2, int dim);
++void    qh_printmatrix (FILE *fp, char *string, realT **rows, int numrow, int numcol);
++void    qh_printpoints (FILE *fp, char *string, setT *points);
++void    qh_projectinput (void);
++void  qh_projectpoints (signed char *project, int n, realT *points, 
++             int numpoints, int dim, realT *newpoints, int newdim);
++int     qh_rand( void);
++void    qh_srand( int seed);
++realT   qh_randomfactor (void);
++void    qh_randommatrix (realT *buffer, int dim, realT **row);
++void    qh_rotateinput (realT **rows);
++void    qh_rotatepoints (realT *points, int numpoints, int dim, realT **rows);
++void    qh_scaleinput (void);
++void    qh_scalelast (coordT *points, int numpoints, int dim, coordT low,
++                 coordT high, coordT newhigh);
++void  qh_scalepoints (pointT *points, int numpoints, int dim,
++              realT *newlows, realT *newhighs);
++boolT   qh_sethalfspace (int dim, coordT *coords, coordT **nextp, 
++              coordT *normal, coordT *offset, coordT *feasible);
++coordT *qh_sethalfspace_all (int dim, int count, coordT *halfspaces, pointT *feasible);
++pointT *qh_voronoi_center (int dim, setT *points);
++
++#endif /* qhDEFgeom */
++
++
++
index 0000000,0000000..351d56b
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,149 @@@
++/*<html><pre>  -<a                             href="qh-io.htm"
++  >-------------------------------</a><a name="TOP">-</a>
++
++   io.h 
++   declarations of Input/Output functions
++
++   see README, qhull.h and io.c
++
++   copyright (c) 1993-2002, The Geometry Center
++*/
++
++#ifndef qhDEFio
++#define qhDEFio 1
++
++/*============ constants and flags ==================*/
++
++/*-<a                             href="qh-io.htm#TOC"
++  >--------------------------------</a><a name="qh_MAXfirst">-</a>
++  
++  qh_MAXfirst
++    maximum length of first two lines of stdin
++*/
++#define qh_MAXfirst  200
++
++/*-<a                             href="qh-io.htm#TOC"
++  >--------------------------------</a><a name="qh_MINradius">-</a>
++  
++  qh_MINradius
++    min radius for Gp and Gv, fraction of maxcoord
++*/
++#define qh_MINradius 0.02
++
++/*-<a                             href="qh-io.htm#TOC"
++  >--------------------------------</a><a name="qh_GEOMepsilon">-</a>
++  
++  qh_GEOMepsilon
++    adjust outer planes for 'lines closer' and geomview roundoff.  
++    This prevents bleed through.
++*/
++#define qh_GEOMepsilon 2e-3
++
++/*-<a                             href="qh-io.htm#TOC"
++  >--------------------------------</a><a name="qh_WHITESPACE">-</a>
++  
++  qh_WHITESPACE
++    possible values of white space
++*/
++#define qh_WHITESPACE " \n\t\v\r\f"
++
++
++/*-<a                             href="qh-io.htm#TOC"
++  >--------------------------------</a><a name="RIDGE">-</a>
++  
++  qh_RIDGE
++    to select which ridges to print in qh_eachvoronoi
++*/
++typedef enum
++{
++    qh_RIDGEall = 0, qh_RIDGEinner, qh_RIDGEouter
++}
++qh_RIDGE;
++
++/*-<a                             href="qh-io.htm#TOC"
++  >--------------------------------</a><a name="printvridgeT">-</a>
++  
++  printvridgeT
++    prints results of qh_printvdiagram
++
++  see:
++    <a href="io.c#printvridge">qh_printvridge</a> for an example
++*/
++typedef void (*printvridgeT)(FILE *fp, vertexT *vertex, vertexT *vertexA, setT *centers, boolT unbounded);
++
++/*============== -prototypes in alphabetical order =========*/
++
++void    dfacet( unsigned id);
++void    dvertex( unsigned id);
++void    qh_countfacets (facetT *facetlist, setT *facets, boolT printall, 
++              int *numfacetsp, int *numsimplicialp, int *totneighborsp, 
++              int *numridgesp, int *numcoplanarsp, int *numnumtricoplanarsp);
++pointT *qh_detvnorm (vertexT *vertex, vertexT *vertexA, setT *centers, realT *offsetp);
++setT   *qh_detvridge (vertexT *vertex);
++setT   *qh_detvridge3 (vertexT *atvertex, vertexT *vertex);
++int     qh_eachvoronoi (FILE *fp, printvridgeT printvridge, vertexT *atvertex, boolT visitall, qh_RIDGE innerouter, boolT inorder);
++int     qh_eachvoronoi_all (FILE *fp, printvridgeT printvridge, boolT isupper, qh_RIDGE innerouter, boolT inorder);
++void  qh_facet2point(facetT *facet, pointT **point0, pointT **point1, realT *mindist);
++setT   *qh_facetvertices (facetT *facetlist, setT *facets, boolT allfacets);
++void    qh_geomplanes (facetT *facet, realT *outerplane, realT *innerplane);
++void    qh_markkeep (facetT *facetlist);
++setT   *qh_markvoronoi (facetT *facetlist, setT *facets, boolT printall, boolT *islowerp, int *numcentersp);
++void    qh_order_vertexneighbors(vertexT *vertex);
++void  qh_printafacet(FILE *fp, int format, facetT *facet, boolT printall);
++void    qh_printbegin (FILE *fp, int format, facetT *facetlist, setT *facets, boolT printall);
++void  qh_printcenter (FILE *fp, int format, char *string, facetT *facet);
++void    qh_printcentrum (FILE *fp, facetT *facet, realT radius);
++void    qh_printend (FILE *fp, int format, facetT *facetlist, setT *facets, boolT printall);
++void    qh_printend4geom (FILE *fp, facetT *facet, int *num, boolT printall);
++void    qh_printextremes (FILE *fp, facetT *facetlist, setT *facets, int printall);
++void    qh_printextremes_2d (FILE *fp, facetT *facetlist, setT *facets, int printall);
++void    qh_printextremes_d (FILE *fp, facetT *facetlist, setT *facets, int printall);
++void  qh_printfacet(FILE *fp, facetT *facet);
++void  qh_printfacet2math(FILE *fp, facetT *facet, int notfirst);
++void  qh_printfacet2geom(FILE *fp, facetT *facet, realT color[3]);
++void    qh_printfacet2geom_points(FILE *fp, pointT *point1, pointT *point2,
++                             facetT *facet, realT offset, realT color[3]);
++void  qh_printfacet3math (FILE *fp, facetT *facet, int notfirst);
++void  qh_printfacet3geom_nonsimplicial(FILE *fp, facetT *facet, realT color[3]);
++void  qh_printfacet3geom_points(FILE *fp, setT *points, facetT *facet, realT offset, realT color[3]);
++void  qh_printfacet3geom_simplicial(FILE *fp, facetT *facet, realT color[3]);
++void  qh_printfacet3vertex(FILE *fp, facetT *facet, int format);
++void  qh_printfacet4geom_nonsimplicial(FILE *fp, facetT *facet, realT color[3]);
++void  qh_printfacet4geom_simplicial(FILE *fp, facetT *facet, realT color[3]);
++void  qh_printfacetNvertex_nonsimplicial(FILE *fp, facetT *facet, int id, int format);
++void  qh_printfacetNvertex_simplicial(FILE *fp, facetT *facet, int format);
++void    qh_printfacetheader(FILE *fp, facetT *facet);
++void    qh_printfacetridges(FILE *fp, facetT *facet);
++void  qh_printfacets(FILE *fp, int format, facetT *facetlist, setT *facets, boolT printall);
++void  qh_printhelp_degenerate(FILE *fp);
++void  qh_printhelp_singular(FILE *fp);
++void  qh_printhyperplaneintersection(FILE *fp, facetT *facet1, facetT *facet2,
++                 setT *vertices, realT color[3]);
++void  qh_printneighborhood (FILE *fp, int format, facetT *facetA, facetT *facetB, boolT printall);
++void    qh_printline3geom (FILE *fp, pointT *pointA, pointT *pointB, realT color[3]);
++void  qh_printpoint(FILE *fp, char *string, pointT *point);
++void  qh_printpointid(FILE *fp, char *string, int dim, pointT *point, int id);
++void    qh_printpoint3 (FILE *fp, pointT *point);
++void    qh_printpoints_out (FILE *fp, facetT *facetlist, setT *facets, int printall);
++void    qh_printpointvect (FILE *fp, pointT *point, coordT *normal, pointT *center, realT radius, realT color[3]);
++void    qh_printpointvect2 (FILE *fp, pointT *point, coordT *normal, pointT *center, realT radius);
++void  qh_printridge(FILE *fp, ridgeT *ridge);
++void    qh_printspheres(FILE *fp, setT *vertices, realT radius);
++void    qh_printvdiagram (FILE *fp, int format, facetT *facetlist, setT *facets, boolT printall);
++int     qh_printvdiagram2 (FILE *fp, printvridgeT printvridge, setT *vertices, qh_RIDGE innerouter, boolT inorder);
++void  qh_printvertex(FILE *fp, vertexT *vertex);
++void  qh_printvertexlist (FILE *fp, char* string, facetT *facetlist,
++                         setT *facets, boolT printall);
++void  qh_printvertices (FILE *fp, char* string, setT *vertices);
++void    qh_printvneighbors (FILE *fp, facetT* facetlist, setT *facets, boolT printall);
++void    qh_printvoronoi (FILE *fp, int format, facetT *facetlist, setT *facets, boolT printall);
++void    qh_printvnorm (FILE *fp, vertexT *vertex, vertexT *vertexA, setT *centers, boolT unbounded);
++void    qh_printvridge (FILE *fp, vertexT *vertex, vertexT *vertexA, setT *centers, boolT unbounded);
++void  qh_produce_output(void);
++void    qh_projectdim3 (pointT *source, pointT *destination);
++int     qh_readfeasible (int dim, char *remainder);
++coordT *qh_readpoints(int *numpoints, int *dimension, boolT *ismalloc);
++void    qh_setfeasible (int dim);
++boolT qh_skipfacet(facetT *facet);
++
++#endif /* qhDEFio */
index 0000000,0000000..e9ebd1b
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,174 @@@
++/*<html><pre>  -<a                             href="qh-mem.htm"
++  >-------------------------------</a><a name="TOP">-</a>
++
++   mem.h 
++     prototypes for memory management functions
++
++   see qh-mem.htm, mem.c and qset.h
++
++   for error handling, writes message and calls
++     qh_errexit (qhmem_ERRmem, NULL, NULL) if insufficient memory
++       and
++     qh_errexit (qhmem_ERRqhull, NULL, NULL) otherwise
++
++   copyright (c) 1993-2002, The Geometry Center
++*/
++
++#ifndef qhDEFmem
++#define qhDEFmem
++
++/*-<a                             href="qh-mem.htm#TOC"
++  >-------------------------------</a><a name="NOmem">-</a>
++  
++  qh_NOmem
++    turn off quick-fit memory allocation
++
++  notes:
++    mem.c implements Quickfit memory allocation for about 20% time
++    savings.  If it fails on your machine, try to locate the
++    problem, and send the answer to qhull@geom.umn.edu.  If this can
++    not be done, define qh_NOmem to use malloc/free instead.
++
++   #define qh_NOmem
++*/
++
++/*-------------------------------------------
++    to avoid bus errors, memory allocation must consider alignment requirements.
++    malloc() automatically takes care of alignment.   Since mem.c manages
++    its own memory, we need to explicitly specify alignment in
++    qh_meminitbuffers().
++
++    A safe choice is sizeof(double).  sizeof(float) may be used if doubles 
++    do not occur in data structures and pointers are the same size.  Be careful
++    of machines (e.g., DEC Alpha) with large pointers.  If gcc is available, 
++    use __alignof__(double) or fmax_(__alignof__(float), __alignof__(void *)).
++
++   see <a href="user.h#MEMalign">qh_MEMalign</a> in user.h for qhull's alignment
++*/
++
++#define qhmem_ERRmem 4    /* matches qh_ERRmem in qhull.h */
++#define qhmem_ERRqhull 5  /* matches qh_ERRqhull in qhull.h */
++
++/*-<a                             href="qh-mem.htm#TOC"
++  >--------------------------------</a><a name="ptr_intT">-</a>
++  
++  ptr_intT
++    for casting a void* to an integer-type
++  
++  notes:
++    On 64-bit machines, a pointer may be larger than an 'int'.  
++    qh_meminit() checks that 'long' holds a 'void*'
++*/
++typedef unsigned long ptr_intT;
++
++/*-<a                             href="qh-mem.htm#TOC"
++  >--------------------------------</a><a name="qhmemT">-</a>
++ 
++  qhmemT
++    global memory structure for mem.c
++ 
++ notes:
++   users should ignore qhmem except for writing extensions
++   qhmem is allocated in mem.c 
++   
++   qhmem could be swapable like qh and qhstat, but then
++   multiple qh's and qhmem's would need to keep in synch.  
++   A swapable qhmem would also waste memory buffers.  As long
++   as memory operations are atomic, there is no problem with
++   multiple qh structures being active at the same time.
++   If you need separate address spaces, you can swap the
++   contents of qhmem.
++*/
++typedef struct qhmemT qhmemT;
++extern qhmemT qhmem; 
++
++struct qhmemT {               /* global memory management variables */
++  int      BUFsize;         /* size of memory allocation buffer */
++  int      BUFinit;         /* initial size of memory allocation buffer */
++  int      TABLEsize;         /* actual number of sizes in free list table */
++  int      NUMsizes;          /* maximum number of sizes in free list table */
++  int      LASTsize;          /* last size in free list table */
++  int      ALIGNmask;         /* worst-case alignment, must be 2^n-1 */
++  void         **freelists;          /* free list table, linked by offset 0 */
++  int     *sizetable;         /* size of each freelist */
++  int     *indextable;        /* size->index table */
++  void    *curbuffer;         /* current buffer, linked by offset 0 */
++  void    *freemem;           /*   free memory in curbuffer */
++  int            freesize;          /*   size of free memory in bytes */
++  void          *tempstack;         /* stack of temporary memory, managed by users */
++  FILE    *ferr;              /* file for reporting errors */
++  int      IStracing;         /* =5 if tracing memory allocations */
++  int      cntquick;          /* count of quick allocations */
++                              /* remove statistics doesn't effect speed */
++  int      cntshort;          /* count of short allocations */
++  int      cntlong;           /* count of long allocations */
++  int      curlong;           /* current count of inuse, long allocations */
++  int      freeshort;       /* count of short memfrees */
++  int      freelong;        /* count of long memfrees */
++  int      totshort;          /* total size of short allocations */
++  int      totlong;           /* total size of long allocations */