├── .gitignore ├── README.md ├── gaps ├── LICENSE.txt ├── Makefile ├── README.txt ├── apps │ ├── Makefile │ ├── grd2grd │ │ ├── Makefile │ │ ├── grd2grd.cpp │ │ └── grd2grd.vcxproj │ ├── grd2msh │ │ ├── Makefile │ │ ├── grd2msh.cpp │ │ └── grd2msh.vcxproj │ ├── grd2pts │ │ ├── Makefile │ │ ├── grd2pts.cpp │ │ └── grd2pts.vcxproj │ ├── grd2txt │ │ ├── Makefile │ │ ├── grd2txt.cpp │ │ └── grd2txt.vcxproj │ ├── grdview │ │ ├── Makefile │ │ ├── grdview.cpp │ │ └── grdview.vcxproj │ ├── img2img │ │ ├── Makefile │ │ ├── img2img.cpp │ │ └── img2img.vcxproj │ ├── msh2grd │ │ ├── Makefile │ │ ├── msh2grd.cpp │ │ └── msh2grd.vcxproj │ ├── msh2msh │ │ ├── Makefile │ │ ├── msh2msh.cpp │ │ └── msh2msh.vcxproj │ ├── msh2prp │ │ ├── Makefile │ │ ├── msh2prp.cpp │ │ └── msh2prp.vcxproj │ ├── msh2pts │ │ ├── Makefile │ │ ├── msh2pts.cpp │ │ └── msh2pts.vcxproj │ ├── mshalign │ │ ├── Makefile │ │ ├── mshalign.cpp │ │ └── mshalign.vcxproj │ ├── mshinfo │ │ ├── Makefile │ │ ├── mshinfo.cpp │ │ └── mshinfo.vcxproj │ ├── mshview │ │ ├── Makefile │ │ ├── mshview.cpp │ │ └── mshview.vcxproj │ ├── pdb2grd │ │ ├── Makefile │ │ └── pdb2grd.cpp │ ├── pdb2msh │ │ ├── Makefile │ │ └── pdb2msh.cpp │ ├── pdb2pdb │ │ ├── Makefile │ │ └── pdb2pdb.cpp │ ├── pdbinfo │ │ ├── Makefile │ │ └── pdbinfo.cpp │ ├── pdbview │ │ ├── Makefile │ │ └── pdbview.cpp │ ├── pfm2pfm │ │ ├── Makefile │ │ └── pfm2pfm.cpp │ ├── pfminfo │ │ ├── Makefile │ │ └── pfminfo.cpp │ ├── pfmview │ │ ├── Makefile │ │ └── pfmview.cpp │ ├── prp2prp │ │ ├── Makefile │ │ ├── prp2prp.cpp │ │ └── prp2prp.vcxproj │ ├── prpview │ │ ├── Makefile │ │ ├── prpview.cpp │ │ └── prpview.vcxproj │ ├── ptsview │ │ ├── Makefile │ │ └── ptsview.cpp │ ├── scn2cam │ │ ├── Makefile │ │ └── scn2cam.cpp │ ├── scn2grd │ │ ├── Makefile │ │ └── scn2grd.cpp │ ├── scn2img │ │ ├── Makefile │ │ └── scn2img.cpp │ ├── scn2scn │ │ ├── Makefile │ │ └── scn2scn.cpp │ ├── scninfo │ │ ├── Makefile │ │ ├── scninfo.cpp │ │ └── scninfo.vcxproj │ ├── scnview │ │ ├── Makefile │ │ ├── scnview.cpp │ │ └── scnview.vcxproj │ ├── sfl2img │ │ ├── Makefile │ │ └── sfl2img.cpp │ ├── sfl2sfl │ │ ├── Makefile │ │ └── sfl2sfl.cpp │ ├── sflinfo │ │ ├── Makefile │ │ └── sflinfo.cpp │ ├── sflinit │ │ ├── Makefile │ │ └── sflinit.cpp │ ├── sflprocess │ │ ├── Makefile │ │ └── sflprocess.cpp │ └── sflview │ │ ├── Makefile │ │ ├── R3SurfelViewer.cpp │ │ ├── R3SurfelViewer.h │ │ ├── align.cpp │ │ ├── align.h │ │ ├── debug.cpp │ │ ├── debug.h │ │ ├── map.cpp │ │ ├── map.h │ │ ├── model.cpp │ │ └── sflview.cpp ├── docs │ ├── Makefile │ ├── headers │ │ ├── R2Shapes.header │ │ ├── R3Graphics.header │ │ ├── R3Shapes.header │ │ └── RNBasics.header │ ├── index.html │ ├── makeall │ ├── makepkg │ └── makepkg.awk ├── makefiles │ ├── Makefile.apps │ ├── Makefile.pkgs │ └── Makefile.std ├── pkgs │ ├── FET │ │ ├── FET.cpp │ │ ├── FET.h │ │ ├── FETCorrespondence.cpp │ │ ├── FETCorrespondence.h │ │ ├── FETDescriptor.cpp │ │ ├── FETDescriptor.h │ │ ├── FETFeature.cpp │ │ ├── FETFeature.h │ │ ├── FETMatch.cpp │ │ ├── FETMatch.h │ │ ├── FETReconstruction.cpp │ │ ├── FETReconstruction.h │ │ ├── FETShape.cpp │ │ ├── FETShape.h │ │ └── Makefile │ ├── Makefile │ ├── PDB │ │ ├── Makefile │ │ ├── PDB.cpp │ │ ├── PDB.h │ │ ├── PDBAminoAcid.cpp │ │ ├── PDBAminoAcid.h │ │ ├── PDBAtom.cpp │ │ ├── PDBAtom.h │ │ ├── PDBAtomTypes.cpp │ │ ├── PDBAtomTypes.h │ │ ├── PDBBond.cpp │ │ ├── PDBBond.h │ │ ├── PDBChain.cpp │ │ ├── PDBChain.h │ │ ├── PDBDistance.cpp │ │ ├── PDBDistance.h │ │ ├── PDBElement.cpp │ │ ├── PDBElement.h │ │ ├── PDBFile.cpp │ │ ├── PDBFile.h │ │ ├── PDBModel.cpp │ │ ├── PDBModel.h │ │ ├── PDBPick.cpp │ │ ├── PDBResidue.cpp │ │ ├── PDBResidue.h │ │ ├── PDBUtil.cpp │ │ ├── PDBUtil.h │ │ ├── amino_acid_atoms.txt │ │ └── charm22.txt │ ├── R2Shapes │ │ ├── Makefile │ │ ├── R2Affine.cpp │ │ ├── R2Affine.h │ │ ├── R2Align.cpp │ │ ├── R2Align.h │ │ ├── R2Arc.cpp │ │ ├── R2Arc.h │ │ ├── R2Box.cpp │ │ ├── R2Box.h │ │ ├── R2Circle.cpp │ │ ├── R2Circle.h │ │ ├── R2Cont.cpp │ │ ├── R2Cont.h │ │ ├── R2Crdsys.cpp │ │ ├── R2Crdsys.h │ │ ├── R2Curve.cpp │ │ ├── R2Curve.h │ │ ├── R2Diad.cpp │ │ ├── R2Diad.h │ │ ├── R2Dist.cpp │ │ ├── R2Dist.h │ │ ├── R2Draw.cpp │ │ ├── R2Draw.h │ │ ├── R2Grid.cpp │ │ ├── R2Grid.h │ │ ├── R2Halfspace.cpp │ │ ├── R2Halfspace.h │ │ ├── R2Image.cpp │ │ ├── R2Image.h │ │ ├── R2Io.cpp │ │ ├── R2Io.h │ │ ├── R2Isect.cpp │ │ ├── R2Isect.h │ │ ├── R2Kdtree.cpp │ │ ├── R2Kdtree.h │ │ ├── R2Line.cpp │ │ ├── R2Line.h │ │ ├── R2Parall.cpp │ │ ├── R2Parall.h │ │ ├── R2Perp.cpp │ │ ├── R2Perp.h │ │ ├── R2Point.cpp │ │ ├── R2Point.h │ │ ├── R2Polygon.cpp │ │ ├── R2Polygon.h │ │ ├── R2Polyline.cpp │ │ ├── R2Polyline.h │ │ ├── R2Ray.cpp │ │ ├── R2Ray.h │ │ ├── R2Relate.cpp │ │ ├── R2Relate.h │ │ ├── R2Shape.cpp │ │ ├── R2Shape.h │ │ ├── R2Shapes.cpp │ │ ├── R2Shapes.h │ │ ├── R2Shapes.vcxproj │ │ ├── R2Shapes.vcxproj.filters │ │ ├── R2Solid.cpp │ │ ├── R2Solid.h │ │ ├── R2Span.cpp │ │ ├── R2Span.h │ │ ├── R2Vector.cpp │ │ ├── R2Vector.h │ │ ├── R2Xform.cpp │ │ ├── R2Xform.h │ │ ├── R3Matrix.cpp │ │ └── R3Matrix.h │ ├── R3Graphics │ │ ├── Makefile │ │ ├── R2Texture.cpp │ │ ├── R2Texture.h │ │ ├── R2Viewport.cpp │ │ ├── R2Viewport.h │ │ ├── R3AreaLight.cpp │ │ ├── R3AreaLight.h │ │ ├── R3Brdf.cpp │ │ ├── R3Brdf.h │ │ ├── R3Camera.cpp │ │ ├── R3Camera.h │ │ ├── R3DirectionalLight.cpp │ │ ├── R3DirectionalLight.h │ │ ├── R3Frustum.cpp │ │ ├── R3Frustum.h │ │ ├── R3Graphics.cpp │ │ ├── R3Graphics.h │ │ ├── R3Graphics.vcxproj │ │ ├── R3Graphics.vcxproj.filters │ │ ├── R3Light.cpp │ │ ├── R3Light.h │ │ ├── R3Material.cpp │ │ ├── R3Material.h │ │ ├── R3PointLight.cpp │ │ ├── R3PointLight.h │ │ ├── R3Scene.cpp │ │ ├── R3Scene.h │ │ ├── R3SceneElement.cpp │ │ ├── R3SceneElement.h │ │ ├── R3SceneNode.cpp │ │ ├── R3SceneNode.h │ │ ├── R3SceneReference.cpp │ │ ├── R3SceneReference.h │ │ ├── R3SpotLight.cpp │ │ ├── R3SpotLight.h │ │ ├── R3Viewer.cpp │ │ ├── R3Viewer.h │ │ ├── json.cpp │ │ └── json.h │ ├── R3Shapes │ │ ├── Makefile │ │ ├── R3Affine.cpp │ │ ├── R3Affine.h │ │ ├── R3Align.cpp │ │ ├── R3Align.h │ │ ├── R3Base.cpp │ │ ├── R3Base.h │ │ ├── R3Box.cpp │ │ ├── R3Box.h │ │ ├── R3CatmullRomSpline.cpp │ │ ├── R3CatmullRomSpline.h │ │ ├── R3Circle.cpp │ │ ├── R3Circle.h │ │ ├── R3Cone.cpp │ │ ├── R3Cone.h │ │ ├── R3Cont.cpp │ │ ├── R3Cont.h │ │ ├── R3Crdsys.cpp │ │ ├── R3Crdsys.h │ │ ├── R3Curve.cpp │ │ ├── R3Curve.h │ │ ├── R3Cylinder.cpp │ │ ├── R3Cylinder.h │ │ ├── R3Dist.cpp │ │ ├── R3Dist.h │ │ ├── R3Draw.cpp │ │ ├── R3Draw.h │ │ ├── R3Ellipse.cpp │ │ ├── R3Ellipse.h │ │ ├── R3Ellipsoid.cpp │ │ ├── R3Ellipsoid.h │ │ ├── R3Grid.cpp │ │ ├── R3Grid.h │ │ ├── R3Halfspace.cpp │ │ ├── R3Halfspace.h │ │ ├── R3Isect.cpp │ │ ├── R3Isect.h │ │ ├── R3Kdtree.cpp │ │ ├── R3Kdtree.h │ │ ├── R3Line.cpp │ │ ├── R3Line.h │ │ ├── R3Mesh.cpp │ │ ├── R3Mesh.h │ │ ├── R3MeshProperty.cpp │ │ ├── R3MeshProperty.h │ │ ├── R3MeshPropertySet.cpp │ │ ├── R3MeshPropertySet.h │ │ ├── R3MeshSearchTree.cpp │ │ ├── R3MeshSearchTree.h │ │ ├── R3OrientedBox.cpp │ │ ├── R3OrientedBox.h │ │ ├── R3Parall.cpp │ │ ├── R3Parall.h │ │ ├── R3Perp.cpp │ │ ├── R3Perp.h │ │ ├── R3PlanarGrid.cpp │ │ ├── R3PlanarGrid.h │ │ ├── R3Plane.cpp │ │ ├── R3Plane.h │ │ ├── R3Point.cpp │ │ ├── R3Point.h │ │ ├── R3Polyline.cpp │ │ ├── R3Polyline.h │ │ ├── R3Quaternion.cpp │ │ ├── R3Quaternion.h │ │ ├── R3Ray.cpp │ │ ├── R3Ray.h │ │ ├── R3Rectangle.cpp │ │ ├── R3Rectangle.h │ │ ├── R3Relate.cpp │ │ ├── R3Relate.h │ │ ├── R3Shape.cpp │ │ ├── R3Shape.h │ │ ├── R3Shapes.cpp │ │ ├── R3Shapes.h │ │ ├── R3Shapes.vcxproj │ │ ├── R3Shapes.vcxproj.filters │ │ ├── R3Solid.cpp │ │ ├── R3Solid.h │ │ ├── R3Span.cpp │ │ ├── R3Span.h │ │ ├── R3Sphere.cpp │ │ ├── R3Sphere.h │ │ ├── R3Surface.cpp │ │ ├── R3Surface.h │ │ ├── R3Triad.cpp │ │ ├── R3Triad.h │ │ ├── R3Triangle.cpp │ │ ├── R3Triangle.h │ │ ├── R3TriangleArray.cpp │ │ ├── R3TriangleArray.h │ │ ├── R3Vector.cpp │ │ ├── R3Vector.h │ │ ├── R3Xform.cpp │ │ ├── R3Xform.h │ │ ├── R4Matrix.cpp │ │ ├── R4Matrix.h │ │ ├── ply.cpp │ │ └── ply.h │ ├── R3Surfels │ │ ├── Makefile │ │ ├── R3Surfel.cpp │ │ ├── R3Surfel.h │ │ ├── R3SurfelBlock.cpp │ │ ├── R3SurfelBlock.h │ │ ├── R3SurfelConstraint.cpp │ │ ├── R3SurfelConstraint.h │ │ ├── R3SurfelDatabase.cpp │ │ ├── R3SurfelDatabase.h │ │ ├── R3SurfelFeature.cpp │ │ ├── R3SurfelFeature.h │ │ ├── R3SurfelFeatureEvaluation.cpp │ │ ├── R3SurfelFeatureEvaluation.h │ │ ├── R3SurfelFeatureSet.cpp │ │ ├── R3SurfelFeatureSet.h │ │ ├── R3SurfelFeatureVector.cpp │ │ ├── R3SurfelFeatureVector.h │ │ ├── R3SurfelLabel.cpp │ │ ├── R3SurfelLabel.h │ │ ├── R3SurfelLabelAssignment.cpp │ │ ├── R3SurfelLabelAssignment.h │ │ ├── R3SurfelLabelProperty.cpp │ │ ├── R3SurfelLabelProperty.h │ │ ├── R3SurfelLabelRelationship.cpp │ │ ├── R3SurfelLabelRelationship.h │ │ ├── R3SurfelLabelSet.cpp │ │ ├── R3SurfelLabelSet.h │ │ ├── R3SurfelNode.cpp │ │ ├── R3SurfelNode.h │ │ ├── R3SurfelNodeSet.cpp │ │ ├── R3SurfelNodeSet.h │ │ ├── R3SurfelObject.cpp │ │ ├── R3SurfelObject.h │ │ ├── R3SurfelObjectProperty.cpp │ │ ├── R3SurfelObjectProperty.h │ │ ├── R3SurfelObjectRelationship.cpp │ │ ├── R3SurfelObjectRelationship.h │ │ ├── R3SurfelObjectSet.cpp │ │ ├── R3SurfelObjectSet.h │ │ ├── R3SurfelPoint.cpp │ │ ├── R3SurfelPoint.h │ │ ├── R3SurfelPointGraph.cpp │ │ ├── R3SurfelPointGraph.h │ │ ├── R3SurfelPointSet.cpp │ │ ├── R3SurfelPointSet.h │ │ ├── R3SurfelScan.cpp │ │ ├── R3SurfelScan.h │ │ ├── R3SurfelScene.cpp │ │ ├── R3SurfelScene.h │ │ ├── R3SurfelTree.cpp │ │ ├── R3SurfelTree.h │ │ ├── R3SurfelUtils.cpp │ │ ├── R3SurfelUtils.h │ │ ├── R3Surfels.cpp │ │ └── R3Surfels.h │ ├── RNBasics │ │ ├── Makefile │ │ ├── RNArray.I │ │ ├── RNArray.cpp │ │ ├── RNArray.h │ │ ├── RNBase.cpp │ │ ├── RNBase.h │ │ ├── RNBasics.cpp │ │ ├── RNBasics.h │ │ ├── RNBasics.vcxproj │ │ ├── RNBasics.vcxproj.filters │ │ ├── RNCompat.h │ │ ├── RNError.cpp │ │ ├── RNError.h │ │ ├── RNExtern.h │ │ ├── RNFile.cpp │ │ ├── RNFile.h │ │ ├── RNFlags.cpp │ │ ├── RNFlags.h │ │ ├── RNGrfx.I │ │ ├── RNGrfx.cpp │ │ ├── RNGrfx.h │ │ ├── RNHeap.cpp │ │ ├── RNHeap.h │ │ ├── RNIntval.cpp │ │ ├── RNIntval.h │ │ ├── RNMap.I │ │ ├── RNMap.cpp │ │ ├── RNMap.h │ │ ├── RNMem.cpp │ │ ├── RNMem.h │ │ ├── RNQueue.I │ │ ├── RNQueue.cpp │ │ ├── RNQueue.h │ │ ├── RNRgb.cpp │ │ ├── RNRgb.h │ │ ├── RNScalar.cpp │ │ ├── RNScalar.h │ │ ├── RNSvd.cpp │ │ ├── RNSvd.h │ │ ├── RNTime.cpp │ │ ├── RNTime.h │ │ ├── RNType.cpp │ │ └── RNType.h │ ├── RNMath │ │ ├── Makefile │ │ ├── RNAlgebraic.cpp │ │ ├── RNAlgebraic.h │ │ ├── RNDenseLUMatrix.cpp │ │ ├── RNDenseLUMatrix.h │ │ ├── RNDenseMatrix.cpp │ │ ├── RNDenseMatrix.h │ │ ├── RNEquation.cpp │ │ ├── RNEquation.h │ │ ├── RNLapack.h │ │ ├── RNMath.cpp │ │ ├── RNMath.h │ │ ├── RNMatrix.cpp │ │ ├── RNMatrix.h │ │ ├── RNPolynomial.cpp │ │ ├── RNPolynomial.h │ │ ├── RNSystemOfEquations.cpp │ │ ├── RNSystemOfEquations.h │ │ ├── RNVector.cpp │ │ └── RNVector.h │ ├── fglut │ │ ├── AUTHORS │ │ ├── Makefile │ │ ├── README │ │ ├── cygwin_config.h │ │ ├── fglut.c │ │ ├── fglut.h │ │ ├── fglut.sln │ │ ├── fglut.vcxproj │ │ ├── fglut.vcxproj.filters │ │ ├── freeglut.h │ │ ├── freeglut_callbacks.c │ │ ├── freeglut_cursor.c │ │ ├── freeglut_display.c │ │ ├── freeglut_ext.c │ │ ├── freeglut_ext.h │ │ ├── freeglut_font.c │ │ ├── freeglut_font_data.c │ │ ├── freeglut_gamemode.c │ │ ├── freeglut_geometry.c │ │ ├── freeglut_glutfont_definitions.c │ │ ├── freeglut_init.c │ │ ├── freeglut_input_devices.c │ │ ├── freeglut_internal.h │ │ ├── freeglut_joystick.c │ │ ├── freeglut_main.c │ │ ├── freeglut_menu.c │ │ ├── freeglut_misc.c │ │ ├── freeglut_overlay.c │ │ ├── freeglut_spaceball.c │ │ ├── freeglut_state.c │ │ ├── freeglut_std.h │ │ ├── freeglut_stroke_mono_roman.c │ │ ├── freeglut_stroke_roman.c │ │ ├── freeglut_structure.c │ │ ├── freeglut_teapot.c │ │ ├── freeglut_teapot_data.h │ │ ├── freeglut_videoresize.c │ │ ├── freeglut_window.c │ │ ├── glut.h │ │ ├── linux_config.h │ │ └── mac_config.h │ ├── gaps.h │ ├── jpeg │ │ ├── Makefile │ │ ├── README │ │ ├── jcapimin.c │ │ ├── jcapistd.c │ │ ├── jccoefct.c │ │ ├── jccolor.c │ │ ├── jcdctmgr.c │ │ ├── jchuff.c │ │ ├── jchuff.h │ │ ├── jcinit.c │ │ ├── jcmainct.c │ │ ├── jcmarker.c │ │ ├── jcmaster.c │ │ ├── jcomapi.c │ │ ├── jconfig.h │ │ ├── jcparam.c │ │ ├── jcphuff.c │ │ ├── jcprepct.c │ │ ├── jcsample.c │ │ ├── jctrans.c │ │ ├── jdapimin.c │ │ ├── jdapistd.c │ │ ├── jdatadst.c │ │ ├── jdatasrc.c │ │ ├── jdcoefct.c │ │ ├── jdcolor.c │ │ ├── jdct.h │ │ ├── jddctmgr.c │ │ ├── jdhuff.c │ │ ├── jdhuff.h │ │ ├── jdinput.c │ │ ├── jdmainct.c │ │ ├── jdmarker.c │ │ ├── jdmaster.c │ │ ├── jdmerge.c │ │ ├── jdphuff.c │ │ ├── jdpostct.c │ │ ├── jdsample.c │ │ ├── jdtrans.c │ │ ├── jerror.c │ │ ├── jerror.h │ │ ├── jfdctflt.c │ │ ├── jfdctfst.c │ │ ├── jfdctint.c │ │ ├── jidctflt.c │ │ ├── jidctfst.c │ │ ├── jidctint.c │ │ ├── jidctred.c │ │ ├── jinclude.h │ │ ├── jmemmgr.c │ │ ├── jmemnobs.c │ │ ├── jmemsys.h │ │ ├── jmorecfg.h │ │ ├── jpeg.vcxproj │ │ ├── jpeg.vcxproj.filters │ │ ├── jpegint.h │ │ ├── jpeglib.h │ │ ├── jquant1.c │ │ ├── jquant2.c │ │ ├── jutils.c │ │ ├── jversion.h │ │ └── libjpeg.doc │ └── png │ │ ├── Makefile │ │ ├── PNG-LICENSE.txt │ │ ├── PNG-README.txt │ │ ├── ZLIB_README.txt │ │ ├── adler32.c │ │ ├── compress.c │ │ ├── config.h │ │ ├── crc32.c │ │ ├── crc32.h │ │ ├── deflate.c │ │ ├── deflate.h │ │ ├── example.c │ │ ├── gzclose.c │ │ ├── gzguts.h │ │ ├── gzlib.c │ │ ├── gzread.c │ │ ├── gzwrite.c │ │ ├── infback.c │ │ ├── inffast.c │ │ ├── inffast.h │ │ ├── inffixed.h │ │ ├── inflate.c │ │ ├── inflate.h │ │ ├── inftrees.c │ │ ├── inftrees.h │ │ ├── minigzip.c │ │ ├── png.c │ │ ├── png.h │ │ ├── png.vcxproj │ │ ├── png.vcxproj.filters │ │ ├── pngconf.h │ │ ├── pngerror.c │ │ ├── pngget.c │ │ ├── pngmem.c │ │ ├── pngpread.c │ │ ├── pngpriv.h │ │ ├── pngread.c │ │ ├── pngrio.c │ │ ├── pngrtran.c │ │ ├── pngrutil.c │ │ ├── pngset.c │ │ ├── pngtest.c │ │ ├── pngtrans.c │ │ ├── pngwio.c │ │ ├── pngwrite.c │ │ ├── pngwtran.c │ │ ├── pngwutil.c │ │ ├── trees.c │ │ ├── trees.h │ │ ├── uncompr.c │ │ ├── zconf.h │ │ ├── zlib.h │ │ ├── zutil.c │ │ └── zutil.h └── vc │ ├── Makefile │ ├── README.txt │ ├── glut │ ├── GL │ │ └── glut.h │ ├── README-win32.txt │ ├── glut.def │ ├── glut32.dll │ └── glut32.lib │ ├── makefiles │ ├── Makefile.apps │ ├── Makefile.pkgs │ └── Makefile.std │ └── vc.sln └── metadata ├── ModelCategoryMapping.csv ├── models.csv ├── opengl_lights.txt └── suncgModelLights.json /.gitignore: -------------------------------------------------------------------------------- 1 | gaps/pkgs/*/*.o 2 | gaps/apps/*/*.o 3 | gaps/lib/*/*.a 4 | gaps/bin/*/* 5 | -------------------------------------------------------------------------------- /gaps/LICENSE.txt: -------------------------------------------------------------------------------- 1 | Copyright (c) 2007 Thomas Funkhouser 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. 20 | -------------------------------------------------------------------------------- /gaps/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Makefile for GAPS 3 | # 4 | 5 | 6 | 7 | # 8 | # Make targets 9 | # 10 | 11 | opt: 12 | $(MAKE) target "TARGET=$@" 13 | 14 | debug: 15 | $(MAKE) target "TARGET=$@" 16 | 17 | mesa: 18 | $(MAKE) target "TARGET=$@" 19 | 20 | clean: 21 | $(MAKE) target "TARGET=$@" 22 | 23 | release: pkgs apps docs makefiles vc 24 | mkdir -p release 25 | cp README.txt release 26 | cp LICENSE.txt release 27 | cp Makefile release 28 | cp -r makefiles release 29 | $(MAKE) target "TARGET=$@" 30 | 31 | target: 32 | cd pkgs; $(MAKE) $(TARGET) 33 | cd apps; $(MAKE) $(TARGET) 34 | cd vc; $(MAKE) $(TARGET) 35 | # cd docs; $(MAKE) $(TARGET) 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /gaps/README.txt: -------------------------------------------------------------------------------- 1 | GAPS Users - 2 | 3 | This directory contains all code for the GAPS software library. 4 | There are several subdirectories: 5 | 6 | pkgs - source and include files for all packages (software libraries). 7 | apps - source files for several application and example programs. 8 | makefiles - unix-style make file definitions 9 | vc - visual studio solution files 10 | lib - archive library (.lib) files (created during compilation). 11 | bin - executable files (created during compilation). 12 | 13 | If you are using linux or cygwin and have gcc and OpenGL development 14 | libraries installed, or if you are using MAC OS X with the xcode 15 | development environment, you should be able to compile all the code by 16 | typing "make clean; make" in this directory. If you are using Windows 17 | Visual Studio 10 or later, then you should be able to open the 18 | solution file vc.sln in the vc subdirectory and then "Rebuild 19 | Solution." For other development platforms, you should edit the shared 20 | compilation settings in the makefiles/Makefiles.std to meet your needs. 21 | 22 | To write a program that uses the GAPS pkgs, then you should include 23 | "-I XXX/gaps/pkgs" in your compile flags (CFLAGS) and "-L 24 | XXX/gaps/lib" in your link flags (LDFLAGS), where XXX is the directory 25 | where you installed the gaps software. 26 | 27 | The software is distributed under the MIT license (see LICENSE.txt) 28 | and thus can be used for any purpose without warranty, any liability, 29 | or any suport of any kind. 30 | 31 | - Tom Funkhouser 32 | 33 | 34 | 35 | -------------------------------------------------------------------------------- /gaps/apps/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Makefile for GAPS apps 3 | # 4 | 5 | opt: 6 | $(MAKE) target "TARGET=$@" 7 | 8 | debug: 9 | $(MAKE) target "TARGET=$@" 10 | 11 | mesa: 12 | $(MAKE) target "TARGET=$@" 13 | 14 | clean: 15 | $(MAKE) target "TARGET=$@" 16 | 17 | release: 18 | mkdir -p ../release/apps 19 | cp Makefile ../release/apps 20 | $(MAKE) target "TARGET=$@" 21 | 22 | target: 23 | cd img2img; $(MAKE) $(TARGET) 24 | cd msh2msh; $(MAKE) $(TARGET) 25 | cd msh2grd; $(MAKE) $(TARGET) 26 | cd msh2pts; $(MAKE) $(TARGET) 27 | cd msh2prp; $(MAKE) $(TARGET) 28 | cd mshalign; $(MAKE) $(TARGET) 29 | cd mshinfo; $(MAKE) $(TARGET) 30 | cd mshview; $(MAKE) $(TARGET) 31 | cd grdview; $(MAKE) $(TARGET) 32 | cd grd2grd; $(MAKE) $(TARGET) 33 | cd grd2msh; $(MAKE) $(TARGET) 34 | cd grd2pts; $(MAKE) $(TARGET) 35 | cd grd2txt; $(MAKE) $(TARGET) 36 | cd prp2prp; $(MAKE) $(TARGET) 37 | cd prpview; $(MAKE) $(TARGET) 38 | cd scninfo; $(MAKE) $(TARGET) 39 | cd scn2scn; $(MAKE) $(TARGET) 40 | cd scn2cam; $(MAKE) $(TARGET) 41 | cd scn2img; $(MAKE) $(TARGET) 42 | cd scnview; $(MAKE) $(TARGET) 43 | cd pfm2pfm; $(MAKE) $(TARGET) 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | -------------------------------------------------------------------------------- /gaps/apps/grd2grd/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name 3 | # 4 | 5 | NAME=grd2grd 6 | 7 | 8 | 9 | # 10 | # Source files 11 | # 12 | 13 | CCSRCS=$(NAME).cpp 14 | 15 | 16 | 17 | # 18 | # Libraries 19 | # 20 | 21 | PKG_LIBS=-lR3Shapes -lR2Shapes -lRNBasics -ljpeg -lpng 22 | 23 | 24 | 25 | # 26 | # Include standard makefile 27 | # 28 | 29 | include ../../makefiles/Makefile.apps 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /gaps/apps/grd2msh/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name 3 | # 4 | 5 | NAME=grd2msh 6 | 7 | 8 | 9 | # 10 | # Source files. 11 | # 12 | 13 | CCSRCS=$(NAME).cpp 14 | 15 | 16 | 17 | # 18 | # Libraries 19 | # 20 | 21 | PKG_LIBS=-lR3Shapes -lR2Shapes -lRNBasics -ljpeg -lpng 22 | 23 | 24 | 25 | # 26 | # Include standard makefile 27 | # 28 | 29 | include ../../makefiles/Makefile.apps 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /gaps/apps/grd2pts/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name 3 | # 4 | 5 | NAME=grd2pts 6 | 7 | 8 | 9 | # 10 | # Source files. 11 | # 12 | 13 | CCSRCS=$(NAME).cpp 14 | 15 | 16 | 17 | # 18 | # Libraries 19 | # 20 | 21 | PKG_LIBS=-lR3Shapes -lR2Shapes -lRNBasics -ljpeg -lpng 22 | 23 | 24 | 25 | # 26 | # Include standard makefile 27 | # 28 | 29 | include ../../makefiles/Makefile.apps 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /gaps/apps/grd2txt/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name 3 | # 4 | 5 | NAME=grd2txt 6 | 7 | 8 | 9 | # 10 | # Source files 11 | # 12 | 13 | CCSRCS=$(NAME).cpp 14 | 15 | 16 | 17 | # 18 | # Libraries 19 | # 20 | 21 | PKG_LIBS=-lR3Shapes -lR2Shapes -lRNBasics -ljpeg -lpng 22 | 23 | 24 | 25 | # 26 | # Include standard makefile 27 | # 28 | 29 | include ../../makefiles/Makefile.apps 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /gaps/apps/grdview/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name 3 | # 4 | 5 | NAME=grdview 6 | 7 | 8 | 9 | # 10 | # Source files. 11 | # 12 | 13 | CCSRCS=$(NAME).cpp 14 | 15 | 16 | 17 | # 18 | # Libraries 19 | # 20 | 21 | PKG_LIBS=-lR3Graphics -lR3Shapes -lR2Shapes -lRNBasics -lfglut -ljpeg -lpng 22 | 23 | 24 | 25 | # 26 | # Include standard makefile 27 | # 28 | 29 | include ../../makefiles/Makefile.apps 30 | 31 | -------------------------------------------------------------------------------- /gaps/apps/img2img/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Package name and list of source files. 3 | # 4 | 5 | NAME=img2img 6 | CCSRCS=$(NAME).cpp 7 | 8 | 9 | # 10 | # Dependency libraries 11 | # 12 | 13 | PKG_LIBS=-lR2Shapes -lRNBasics -ljpeg -lpng 14 | 15 | 16 | # 17 | # R3 application makefile 18 | # 19 | 20 | include ../../makefiles/Makefile.apps 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /gaps/apps/img2img/img2img.cpp: -------------------------------------------------------------------------------- 1 | // Source file for the GLUT programs 2 | 3 | 4 | // RING include files 5 | 6 | #include "R2Shapes/R2Shapes.h" 7 | 8 | 9 | 10 | int main(int argc, char **argv) 11 | { 12 | // Check arguments 13 | if (argc != 3) { 14 | fprintf(stderr, "Usage: img2img inputfile outputfile\n"); 15 | return 1; 16 | } 17 | 18 | // Read and write image file 19 | R2Image image; 20 | if (!image.Read(argv[1])) return -1; 21 | if (!image.Write(argv[2])) return -1; 22 | return 0; 23 | } 24 | 25 | 26 | 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /gaps/apps/msh2grd/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name 3 | # 4 | 5 | NAME=msh2grd 6 | 7 | 8 | 9 | # 10 | # Source files 11 | # 12 | 13 | CCSRCS=$(NAME).cpp 14 | 15 | 16 | 17 | # 18 | # Libraries 19 | # 20 | 21 | PKG_LIBS=-lR3Shapes -lR2Shapes -lRNBasics -ljpeg -lpng 22 | 23 | 24 | 25 | # 26 | # Include standard makefile 27 | # 28 | 29 | include ../../makefiles/Makefile.apps 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /gaps/apps/msh2msh/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name and list of source files. 3 | # 4 | 5 | NAME=msh2msh 6 | CCSRCS=$(NAME).cpp 7 | 8 | 9 | 10 | # 11 | # Dependency libraries 12 | # 13 | 14 | PKG_LIBS=-lR3Shapes -lR2Shapes -lRNBasics -ljpeg -lpng 15 | 16 | 17 | # 18 | # R3 application makefile 19 | # 20 | 21 | include ../../makefiles/Makefile.apps 22 | 23 | 24 | -------------------------------------------------------------------------------- /gaps/apps/msh2prp/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name and list of source files. 3 | # 4 | 5 | NAME=msh2prp 6 | CCSRCS=$(NAME).cpp 7 | 8 | 9 | # 10 | # Dependency libraries 11 | # 12 | 13 | PKG_LIBS=-lR3Shapes -lR2Shapes -lRNBasics -ljpeg -lpng 14 | 15 | 16 | # 17 | # R3 application makefile 18 | # 19 | 20 | include ../../makefiles/Makefile.apps 21 | 22 | 23 | -------------------------------------------------------------------------------- /gaps/apps/msh2pts/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name 3 | # 4 | 5 | NAME=msh2pts 6 | 7 | 8 | 9 | # 10 | # Source files 11 | # 12 | 13 | CCSRCS=$(NAME).cpp 14 | 15 | 16 | 17 | # 18 | # Libraries 19 | # 20 | 21 | PKG_LIBS=-lR3Shapes -lR2Shapes -lRNBasics -ljpeg -lpng 22 | 23 | 24 | 25 | # 26 | # Include standard makefile 27 | # 28 | 29 | include ../../makefiles/Makefile.apps 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /gaps/apps/mshalign/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name and list of source files. 3 | # 4 | 5 | NAME=mshalign 6 | CCSRCS=$(NAME).cpp 7 | 8 | 9 | 10 | # 11 | # Dependency libraries 12 | # 13 | 14 | PKG_LIBS=-lR3Shapes -lR2Shapes -lRNBasics -ljpeg -lpng 15 | 16 | 17 | # 18 | # R3 application makefile 19 | # 20 | 21 | include ../../makefiles/Makefile.apps 22 | 23 | 24 | -------------------------------------------------------------------------------- /gaps/apps/mshinfo/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name and list of source files. 3 | # 4 | 5 | NAME=mshinfo 6 | CCSRCS=$(NAME).cpp 7 | 8 | 9 | 10 | # 11 | # Dependency libraries 12 | # 13 | 14 | PKG_LIBS=-lR3Shapes -lR2Shapes -lRNBasics -ljpeg -lpng 15 | 16 | 17 | # 18 | # R3 application makefile 19 | # 20 | 21 | include ../../makefiles/Makefile.apps 22 | 23 | 24 | -------------------------------------------------------------------------------- /gaps/apps/mshview/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name and list of source files. 3 | # 4 | 5 | NAME=mshview 6 | CCSRCS=$(NAME).cpp 7 | 8 | 9 | 10 | # 11 | # Dependency libraries 12 | # 13 | 14 | PKG_LIBS=-lR3Graphics -lR3Shapes -lR2Shapes -lRNBasics -ljpeg -lpng 15 | 16 | 17 | # 18 | # R3 application makefile 19 | # 20 | 21 | include ../../makefiles/Makefile.apps 22 | 23 | 24 | -------------------------------------------------------------------------------- /gaps/apps/pdb2grd/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name 3 | # 4 | 5 | NAME=pdb2grd 6 | 7 | 8 | 9 | # 10 | # Source files. 11 | # 12 | 13 | CCSRCS=$(NAME).cpp 14 | 15 | 16 | 17 | # 18 | # Libraries 19 | # 20 | 21 | PKG_LIBS=-lPDB -lR3Shapes -lR2Shapes -lRNBasics -ljpeg -lpng 22 | 23 | 24 | 25 | # 26 | # Include standard makefile 27 | # 28 | 29 | include ../../makefiles/Makefile.apps 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /gaps/apps/pdb2msh/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name 3 | # 4 | 5 | NAME=pdb2msh 6 | 7 | 8 | 9 | # 10 | # Source files. 11 | # 12 | 13 | CCSRCS=$(NAME).cpp 14 | 15 | 16 | 17 | # 18 | # Libraries 19 | # 20 | 21 | PKG_LIBS=-lPDB -lR3Shapes -lR2Shapes -lRNBasics -ljpeg -lpng 22 | 23 | 24 | 25 | # 26 | # Include standard makefile 27 | # 28 | 29 | include ../../makefiles/Makefile.apps 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /gaps/apps/pdb2pdb/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name 3 | # 4 | 5 | NAME=pdb2pdb 6 | 7 | 8 | 9 | # 10 | # Source files. 11 | # 12 | 13 | CCSRCS=$(NAME).cpp 14 | 15 | 16 | 17 | # 18 | # Libraries 19 | # 20 | 21 | PKG_LIBS=-lPDB -lR3Shapes -lR2Shapes -lRNBasics -ljpeg -lpng 22 | 23 | 24 | 25 | # 26 | # Include standard makefile 27 | # 28 | 29 | include ../../makefiles/Makefile.apps 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /gaps/apps/pdbinfo/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name 3 | # 4 | 5 | NAME=pdbinfo 6 | 7 | 8 | 9 | # 10 | # Source files 11 | # 12 | 13 | CCSRCS=$(NAME).cpp 14 | 15 | 16 | 17 | # 18 | # Libraries 19 | # 20 | 21 | PKG_LIBS=-lPDB -lR3Shapes -lR2Shapes -lRNBasics -ljpeg -lpng 22 | 23 | 24 | 25 | # 26 | # Include standard makefile 27 | # 28 | 29 | include ../../makefiles/Makefile.apps 30 | 31 | 32 | -------------------------------------------------------------------------------- /gaps/apps/pdbview/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name 3 | # 4 | 5 | NAME=pdbview 6 | 7 | 8 | 9 | # 10 | # Source files. 11 | # 12 | 13 | CCSRCS=$(NAME).cpp 14 | 15 | 16 | 17 | # 18 | # Libraries 19 | # 20 | 21 | PKG_LIBS=-lPDB -lR3Graphics -lR3Shapes -lR2Shapes -lRNBasics -ljpeg -lpng 22 | 23 | 24 | 25 | # 26 | # Include standard makefile 27 | # 28 | 29 | include ../../makefiles/Makefile.apps 30 | 31 | -------------------------------------------------------------------------------- /gaps/apps/pfm2pfm/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name 3 | # 4 | 5 | NAME=pfm2pfm 6 | 7 | 8 | 9 | # 10 | # Source files 11 | # 12 | 13 | CCSRCS=$(NAME).cpp 14 | 15 | 16 | 17 | # 18 | # Libraries 19 | # 20 | 21 | PKG_LIBS=-lR2Shapes -lRNBasics -ljpeg -lpng 22 | 23 | 24 | 25 | # 26 | # Include standard makefile 27 | # 28 | 29 | include ../../makefiles/Makefile.apps 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /gaps/apps/pfminfo/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name 3 | # 4 | 5 | NAME=pfminfo 6 | 7 | 8 | 9 | # 10 | # Source files 11 | # 12 | 13 | CCSRCS=$(NAME).cpp 14 | 15 | 16 | 17 | # 18 | # Libraries 19 | # 20 | 21 | PKG_LIBS=-lR2Shapes -lRNBasics -ljpeg -lpng 22 | 23 | 24 | 25 | # 26 | # Include standard makefile 27 | # 28 | 29 | include ../../makefiles/Makefile.apps 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /gaps/apps/pfminfo/pfminfo.cpp: -------------------------------------------------------------------------------- 1 | // Source file for the image info program 2 | 3 | 4 | 5 | // Include files 6 | 7 | #include "R2Shapes/R2Shapes.h" 8 | 9 | 10 | 11 | // Program variables 12 | 13 | static char *input_name = NULL; 14 | static int print_verbose = 0; 15 | 16 | 17 | 18 | static int 19 | PrintBasicInfo(const R2Grid *grid) 20 | { 21 | printf("Basic info:\n"); 22 | printf(" Resolution = %d %d\n", grid->XResolution(), grid->YResolution()); 23 | printf(" Spacing = %g\n", grid->GridToWorldScaleFactor()); 24 | printf(" Cardinality = %d\n", grid->Cardinality()); 25 | RNInterval grid_range = grid->Range(); 26 | printf(" Minimum = %g\n", grid_range.Min()); 27 | printf(" Maximum = %g\n", grid_range.Max()); 28 | printf(" L1Norm = %g\n", grid->L1Norm()); 29 | printf(" L2Norm = %g\n", grid->L2Norm()); 30 | fflush(stdout); 31 | 32 | // Return success 33 | return 1; 34 | } 35 | 36 | 37 | 38 | static int 39 | ParseArgs(int argc, char **argv) 40 | { 41 | // Parse arguments 42 | argc--; argv++; 43 | while (argc > 0) { 44 | if ((*argv)[0] == '-') { 45 | if (!strcmp(*argv, "-v")) print_verbose = 1; 46 | else { fprintf(stderr, "Invalid program argument: %s", *argv); exit(1); } 47 | } 48 | else { 49 | if (!input_name) input_name = *argv; 50 | else { fprintf(stderr, "Invalid program argument: %s", *argv); exit(1); } 51 | } 52 | argv++; argc--; 53 | } 54 | 55 | // Check input filename 56 | if (!input_name) { 57 | fprintf(stderr, "Usage: pfminfo inputfile [options]\n"); 58 | return 0; 59 | } 60 | 61 | // Return OK status 62 | return 1; 63 | } 64 | 65 | 66 | 67 | int 68 | main(int argc, char **argv) 69 | { 70 | // Parse program arguments 71 | if (!ParseArgs(argc, argv)) exit(-1); 72 | 73 | // Read grid 74 | R2Grid *grid = new R2Grid(); 75 | if (!grid->Read(input_name)) exit(-1); 76 | 77 | // Print info 78 | if (!PrintBasicInfo(grid)) exit(-1); 79 | 80 | // Return success 81 | return 0; 82 | } 83 | -------------------------------------------------------------------------------- /gaps/apps/pfmview/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name and list of source files. 3 | # 4 | 5 | NAME=pfmview 6 | CCSRCS=$(NAME).cpp 7 | 8 | 9 | 10 | # 11 | # Dependency libraries 12 | # 13 | 14 | PKG_LIBS=-lR2Shapes -lRNBasics -ljpeg -lpng 15 | 16 | 17 | # 18 | # R3 application makefile 19 | # 20 | 21 | include ../../makefiles/Makefile.apps 22 | 23 | 24 | -------------------------------------------------------------------------------- /gaps/apps/prp2prp/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name and list of source files. 3 | # 4 | 5 | NAME=prp2prp 6 | CCSRCS=$(NAME).cpp 7 | 8 | 9 | # 10 | # Dependency libraries 11 | # 12 | 13 | PKG_LIBS=-lR3Shapes -lR2Shapes -lRNBasics -ljpeg -lpng 14 | 15 | 16 | # 17 | # R3 application makefile 18 | # 19 | 20 | include ../../makefiles/Makefile.apps 21 | 22 | 23 | -------------------------------------------------------------------------------- /gaps/apps/prpview/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name and list of source files. 3 | # 4 | 5 | NAME=prpview 6 | CCSRCS=$(NAME).cpp 7 | 8 | 9 | # 10 | # Dependency libraries 11 | # 12 | 13 | PKG_LIBS=-lR3Graphics -lR3Shapes -lR2Shapes -lRNBasics -ljpeg -lpng 14 | 15 | # 16 | # R3 application makefile 17 | # 18 | 19 | include ../../makefiles/Makefile.apps 20 | 21 | 22 | -------------------------------------------------------------------------------- /gaps/apps/ptsview/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name and list of source files. 3 | # 4 | 5 | NAME=ptsview 6 | CCSRCS=$(NAME).cpp 7 | 8 | 9 | 10 | # 11 | # Dependency libraries 12 | # 13 | 14 | PKG_LIBS=-lR3Graphics -lR3Shapes -lR2Shapes -lRNBasics -ljpeg -lpng 15 | 16 | # 17 | # R3 application makefile 18 | # 19 | 20 | include ../../makefiles/Makefile.apps 21 | 22 | 23 | -------------------------------------------------------------------------------- /gaps/apps/scn2cam/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name and list of source files. 3 | # 4 | 5 | NAME=scn2cam 6 | CCSRCS=$(NAME).cpp 7 | 8 | 9 | # 10 | # Dependency libraries 11 | # 12 | 13 | PKG_LIBS=-lR3Graphics -lR3Shapes -lR2Shapes -lRNBasics -ljpeg -lpng 14 | 15 | 16 | # 17 | # R3 application makefile 18 | # 19 | 20 | include ../../makefiles/Makefile.apps 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /gaps/apps/scn2grd/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name and list of source files. 3 | # 4 | 5 | NAME=scn2grd 6 | CCSRCS=$(NAME).cpp 7 | 8 | 9 | 10 | # 11 | # Dependency libraries 12 | # 13 | 14 | PKG_LIBS=-lR3Graphics -lR3Shapes -lR2Shapes -lRNBasics -ljpeg -lpng 15 | 16 | 17 | # 18 | # R3 application makefile 19 | # 20 | 21 | include ../../makefiles/Makefile.apps 22 | 23 | 24 | -------------------------------------------------------------------------------- /gaps/apps/scn2img/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name and list of source files. 3 | # 4 | 5 | NAME=scn2img 6 | CCSRCS=$(NAME).cpp 7 | 8 | 9 | # 10 | # Dependency libraries 11 | # 12 | 13 | PKG_LIBS=-lR3Graphics -lR3Shapes -lR2Shapes -lRNBasics -ljpeg -lpng 14 | 15 | 16 | # 17 | # R3 application makefile 18 | # 19 | 20 | include ../../makefiles/Makefile.apps 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /gaps/apps/scn2scn/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name and list of source files. 3 | # 4 | 5 | NAME=scn2scn 6 | CCSRCS=$(NAME).cpp 7 | 8 | 9 | 10 | # 11 | # Dependency libraries 12 | # 13 | 14 | PKG_LIBS=-lR3Graphics -lR3Shapes -lR2Shapes -lRNBasics -ljpeg -lpng 15 | 16 | 17 | # 18 | # R3 application makefile 19 | # 20 | 21 | include ../../makefiles/Makefile.apps 22 | 23 | 24 | -------------------------------------------------------------------------------- /gaps/apps/scninfo/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name and list of source files. 3 | # 4 | 5 | NAME=scninfo 6 | CCSRCS=$(NAME).cpp 7 | 8 | 9 | # 10 | # Dependency libraries 11 | # 12 | 13 | PKG_LIBS=-lR3Graphics -lR3Shapes -lR2Shapes -lRNBasics -ljpeg -lpng 14 | 15 | 16 | # 17 | # R3 application makefile 18 | # 19 | 20 | include ../../makefiles/Makefile.apps 21 | 22 | 23 | -------------------------------------------------------------------------------- /gaps/apps/scnview/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name and list of source files. 3 | # 4 | 5 | NAME=scnview 6 | CCSRCS=$(NAME).cpp 7 | 8 | 9 | # 10 | # Dependency libraries 11 | # 12 | 13 | PKG_LIBS=-lR3Graphics -lR3Shapes -lR2Shapes -lRNBasics -ljpeg -lpng 14 | 15 | 16 | # 17 | # R3 application makefile 18 | # 19 | 20 | include ../../makefiles/Makefile.apps 21 | 22 | 23 | -------------------------------------------------------------------------------- /gaps/apps/sfl2img/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name and list of source files. 3 | # 4 | 5 | NAME=sfl2img 6 | CCSRCS=$(NAME).cpp 7 | 8 | 9 | 10 | # 11 | # Dependency libraries 12 | # 13 | 14 | PKG_LIBS=-lR3Surfels -lR3Shapes -lR2Shapes -lRNBasics -ljpeg -lpng 15 | 16 | # 17 | # R3 application makefile 18 | # 19 | 20 | include ../../makefiles/Makefile.apps 21 | 22 | 23 | -------------------------------------------------------------------------------- /gaps/apps/sfl2sfl/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name and list of source files. 3 | # 4 | 5 | NAME=sfl2sfl 6 | CCSRCS=$(NAME).cpp 7 | 8 | 9 | 10 | # 11 | # Dependency libraries 12 | # 13 | 14 | PKG_LIBS=-lR3Surfels -lR3Shapes -lR2Shapes -lRNBasics -ljpeg -lpng 15 | 16 | # 17 | # R3 application makefile 18 | # 19 | 20 | include ../../makefiles/Makefile.apps 21 | 22 | 23 | -------------------------------------------------------------------------------- /gaps/apps/sflinfo/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name and list of source files. 3 | # 4 | 5 | NAME=sflinfo 6 | CCSRCS=$(NAME).cpp 7 | 8 | 9 | 10 | # 11 | # Dependency libraries 12 | # 13 | 14 | PKG_LIBS=-lR3Surfels -lR3Shapes -lR2Shapes -lRNBasics -ljpeg -lpng 15 | 16 | # 17 | # R3 application makefile 18 | # 19 | 20 | include ../../makefiles/Makefile.apps 21 | 22 | 23 | -------------------------------------------------------------------------------- /gaps/apps/sflinit/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name and list of source files. 3 | # 4 | 5 | NAME=sflinit 6 | CCSRCS=$(NAME).cpp 7 | 8 | 9 | 10 | # 11 | # Dependency libraries 12 | # 13 | 14 | PKG_LIBS=-lR3Surfels -lR3Shapes -lR2Shapes -lRNBasics -ljpeg -lpng 15 | 16 | # 17 | # R3 application makefile 18 | # 19 | 20 | include ../../makefiles/Makefile.apps 21 | 22 | 23 | -------------------------------------------------------------------------------- /gaps/apps/sflprocess/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name and list of source files. 3 | # 4 | 5 | NAME=sflprocess 6 | CCSRCS=$(NAME).cpp 7 | 8 | 9 | 10 | # 11 | # Dependency libraries 12 | # 13 | 14 | PKG_LIBS=-lR3Surfels -lR3Shapes -lR2Shapes -lRNBasics -ljpeg -lpng 15 | 16 | # 17 | # R3 application makefile 18 | # 19 | 20 | include ../../makefiles/Makefile.apps 21 | 22 | 23 | -------------------------------------------------------------------------------- /gaps/apps/sflview/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Application name and list of source files. 3 | # 4 | 5 | NAME=sflview 6 | CCSRCS=$(NAME).cpp R3SurfelViewer.cpp debug.cpp align.cpp map.cpp 7 | 8 | 9 | 10 | # 11 | # Dependency libraries 12 | # 13 | 14 | PKG_LIBS=-lR3Surfels -lR3Graphics -lR3Shapes -lR2Shapes -lRNBasics -ljpeg -lpng 15 | 16 | # 17 | # R3 application makefile 18 | # 19 | 20 | include ../../makefiles/Makefile.apps 21 | 22 | 23 | -------------------------------------------------------------------------------- /gaps/apps/sflview/align.h: -------------------------------------------------------------------------------- 1 | // Include file for debug functions 2 | 3 | int DrawAlign(R3SurfelViewer *viewer); 4 | int ExtractObjectWithMesh(R3SurfelViewer *viewer); 5 | -------------------------------------------------------------------------------- /gaps/apps/sflview/debug.h: -------------------------------------------------------------------------------- 1 | // Include file for debug functions 2 | 3 | int DebugRedraw(R3SurfelViewer *viewer); 4 | int DebugResize(R3SurfelViewer *viewer, int w, int h); 5 | int DebugMouseMotion(R3SurfelViewer *viewer, int x, int y); 6 | int DebugMouseButton(R3SurfelViewer *viewer, int x, int y, int button, int state, int shift, int ctrl, int alt); 7 | int DebugKeyboard(R3SurfelViewer *viewer, int x, int y, int key, int shift, int ctrl, int alt); 8 | 9 | -------------------------------------------------------------------------------- /gaps/apps/sflview/map.h: -------------------------------------------------------------------------------- 1 | // Include file for map functions 2 | 3 | void DrawMap(R3SurfelViewer *viewer); 4 | -------------------------------------------------------------------------------- /gaps/docs/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # Makefile for GAPS docs 3 | # 4 | 5 | opt: 6 | ./makeall 7 | 8 | debug: 9 | ./makeall 10 | 11 | release: 12 | mkdir -p ../release/docs 13 | cp Makefile ../release/docs 14 | cp makeall ../release/docs 15 | cp makepkg ../release/docs 16 | cp makepkg.awk ../release/docs 17 | cp -r headers ../release/docs 18 | cp ./*.html ../release/docs 19 | 20 | clean: 21 | - rm -f *~ *.html 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /gaps/docs/headers/R3Graphics.header: -------------------------------------------------------------------------------- 1 |
6 | 7 | 8 |
45 | 46 | 47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /gaps/docs/headers/RNBasics.header: -------------------------------------------------------------------------------- 1 |
17 | // Construct the array 18 | RNArray<char *> array; // Creates an empty array 19 | array.Insert("String1"); // Insert the 1st string 20 | array.Insert("String2"); // Insert the 2nd string 21 | array.Insert("String3"); // Insert the 3rd string 22 | 23 | // Access entries 24 | char *data; 25 | data = array.Head(); // data == "String1" 26 | data = array.Tail(); // data == "String3" 27 | data = array.Kth(0); // data == "String1" 28 | data = array.Kth(1); // data == "String2" 29 | data = array[1]; // data == "String2" 30 | 31 | // Access all entries 32 | for (int i = 0; i < array.NEntries(); i++) { 33 | char *data = array[i] 34 | printf("%s/n", data); 35 | } 36 | 37 | // Manipulate the array 38 | array.Reverse(); // Reverse the order of entries 39 | array.RemoveKth(1); // Remove the 2nd entry (first entry is at index 0) 40 | array.InsertKth("String2", 1); // Re-insert string in 2nd entry 41 |42 |
43 | 44 | Other support functions include: 45 | 46 |
GAPS is a software toolkit for geometric analysis of 3D scenes.
9 | 10 |It contains the following four packages ...
11 |.. and several example applications:
19 |Please view the README file for more information about compiling and linking.
33 | 34 |