# This is a shell archive. Save it in a file, remove anything before # this line, and then unpack it by entering "sh file". Note, it may # create directories; files and directories will be owned by you and # have default permissions. # # This archive contains: # # math/rapid # math/rapid/files # math/rapid/files/pkg-message.in # math/rapid/files/rapid.1 # math/rapid/Makefile # math/rapid/distinfo # math/rapid/pkg-descr # math/rapid/pkg-plist # echo c - math/rapid mkdir -p math/rapid > /dev/null 2>&1 echo c - math/rapid/files mkdir -p math/rapid/files > /dev/null 2>&1 echo x - math/rapid/files/pkg-message.in sed 's/^X//' >math/rapid/files/pkg-message.in << 'END-of-math/rapid/files/pkg-message.in' X X*********************************************************************** XRedistribution of RAPID in any form is strictly prohibited without the Xpermission of UNC. X*********************************************************************** X END-of-math/rapid/files/pkg-message.in echo x - math/rapid/files/rapid.1 sed 's/^X//' >math/rapid/files/rapid.1 << 'END-of-math/rapid/files/rapid.1' X.TH RAPID 1 X.SH NAME \" Section header X.PP X XRAPID -- Robust and Accurate Polygon Interference Detection X X\" Convention: X\" Underline anything that is typed verbatim - commands, etc. X.SH SYNOPSIS X.PP X.nf X.na X#include Xc++ -I/usr/local/include program.c++ -L/usr/local/lib -lRAPID -lm X.ad X.fi X X.SH "DESCRIPTION" X X.B RAPID Xis a robust and accurate polygon interference detection library for Xlarge environments composed of unstructured models. X XIt is applicable to polygon soups - models which contain no adjacency Xinformation, and obey no topological constraints. The models may Xcontain cracks, holes, self-intersections, and nongeneric (e.g. Xcoplanar and collinear) configurations. X XIt is numericaly robust - the algorithm is not subject to conditioning Xproblems, and requires no special handling of nongeneric cases (such as Xparallel faces). X XThe RAPID library is free for non-commercial use. Please use this Xrequest form to download the latest version. It has a very simple user Xinterface: the user need noncommerial use. be familiar with only about Xfive function calls. A C++ sample client program illustrates its use. X XThe current version of RAPID is version 2.01. The previous version was X1.04 - the change in version designation from 1.xx to 2.xx reflects a Xmoderate alteration in the library's interface (mostly just name Xchanges). The following changes from version 1.04 have been made: X XUse include file "RAPID.H": The RAPID API now requires only that you Xinclude "RAPID.H" and link to "libRAPID.a" to be able to use the Xlibrary. X XStandalone library: RAPID no longer uses the SVM library. RAPID only Xdepends on the standard math library, "libm.a", which you probably link Xto anyway. X XUse object "RAPID_model" instead of "box": The C++ object into which Xyou load polygons is now called "RAPID_model". Previous versions used X"box," which was a holdover from prerelease implementations, and was Xnot a suitable identifier for the API. X XConsistent use of "RAPID_" prefix: All the globals, such as those Xwhich began with "OBBT_" now use the prefix "RAPID_". Note, also, that Xthe old constants "ALL_CONTACTS" and "FIRST_CONTACT" have been replaced Xwith the symbols "RAPID_ALL_CONSTACTS" and "RAPID_FIRST_CONTACT" in XRAPID 2.00. X XNo explicit library initialization: Previous versions required the Xclient to call 'box::initialize()' before any other RAPID library call. XThis was a common but unnecessary source of client bugs (people forgot Xto call this routine). RAPID 2.00 no longer requires this, since all XAPI routines check to see if the library has been initialized. This Xextra check has had a negligible performance impact. X XRevision of model construction interface: RAPID 2.00 requires calls to XBeginModel() and EndModel() to enclose the AddTri() calls for building Xobjects. This more resembles the OpenGL interface, with which many Xclients will likely be familiar. Generally, preprocessing of the Xobjects will take place when EndModel() is called. Later versions of XRAPID will allow special procedures to be placed after the BeginModel() Xcall but before the first AddTri() call to give the client more control Xover how the models are preprocessed. X XFaster preprocessing: The preprocessing for RAPID has been greatly Ximproved in terms of speed. RAPID 2.00 is generally 5 times faster than Xprevious versions in preprocessing models. The quality of the Xhierarchies have theoretically been affected, in some ways for the Xbetter and in some ways for the worse, but we have not conducted a Xthorough study to gauge overall impact of our changes. In a later Xrelease, we intend to provide an alternative preprocessing algorithm Xwhich will be computationally expensive but which will build better Xhierarchies. X XNo support for plain C: Some clients may not consider this an Ximprovement, but support for plain C has been discontinued. Of course, Xclients are still able to construct their own plain C wrappers for the XC++ functions in RAPID. This change has made the implementation of XRAPID more clean. X X.SH "SEE ALSO" Xdtiquery(1) X X.SH AUTHOR X.nf X.na XUNC Research Group on Modeling Xhttp://www.cs.unc.edu/~geom/OBB/OBBT.html X END-of-math/rapid/files/rapid.1 echo x - math/rapid/Makefile sed 's/^X//' >math/rapid/Makefile << 'END-of-math/rapid/Makefile' X############################################################################ X# New ports collection Makefile for: RAPID X# Date created: 18 July 2006 X# Whom: Jason W. Bacon X# X# $FreeBSD$ X# X# X############################################################################ X XPORTNAME= rapid XPORTVERSION= 2.01 XCATEGORIES= math science graphics XMASTER_SITES= http://www.cs.unc.edu/~geom/OBB/ XDISTNAME= RAPID201_MSVC X XMAINTAINER= bacon@smithers.neuro.mcw.edu XCOMMENT= Robust and Accurate Polygon Interference Detection X XWRKSRC= ${WRKDIR}/RAPID201 X XRESTRICTED= Must register to download at http://www.cs.unc.edu/~geom/OBB/OBBT.html X XSUB_FILES= pkg-message XPKGMESSAGE= ${WRKDIR}/pkg-message X XALL_TARGET= X XMAN1= rapid.1 X X.include X X.if !exists(${DISTDIR}/${DISTNAME}${EXTRACT_SUFX}) XIGNORE= you must request a copy of ${DISTNAME}${EXTRACT_SUFX} from http://www.cs.unc.edu/~geom/OBB/OBBT.html, place it in ${DISTDIR}, and then run make again X.endif X Xpost-extract: X ${REINPLACE_CMD} -E "s/friend RAPID_Collide/friend int RAPID_Collide/" ${WRKSRC}/RAPID_private.H X Xdo-install: X ${MKDIR} ${PREFIX}/include/RAPID X ${INSTALL_DATA} ${WRKSRC}/*.H ${PREFIX}/include/RAPID X ${INSTALL_DATA} ${WRKSRC}/libRAPID.a ${PREFIX}/lib X ${INSTALL_MAN} ${FILESDIR}/rapid.1 ${PREFIX}/man/man1 X Xpost-install: X @${CAT} ${PKGMESSAGE} X X.include END-of-math/rapid/Makefile echo x - math/rapid/distinfo sed 's/^X//' >math/rapid/distinfo << 'END-of-math/rapid/distinfo' XMD5 (RAPID201_MSVC.tar.gz) = 7508f5b51f859626114199cb120e363a XSHA256 (RAPID201_MSVC.tar.gz) = 98e9f426cd69b2a9493399c631d51ff006e5d789f3f028504b846cceb727b4dc XSIZE (RAPID201_MSVC.tar.gz) = 72005 END-of-math/rapid/distinfo echo x - math/rapid/pkg-descr sed 's/^X//' >math/rapid/pkg-descr << 'END-of-math/rapid/pkg-descr' XRAPID is a robust and accurate polygon interference detection library Xfor large environments composed of unstructured models. X XWWW: http://www.cs.unc.edu/~geom/OBB/OBBT.html END-of-math/rapid/pkg-descr echo x - math/rapid/pkg-plist sed 's/^X//' >math/rapid/pkg-plist << 'END-of-math/rapid/pkg-plist' Xinclude/RAPID/RAPID.H Xinclude/RAPID/RAPID_private.H Xinclude/RAPID/RAPID_version.H Xinclude/RAPID/matvec.H Xinclude/RAPID/moments.H Xinclude/RAPID/obb.H Xinclude/RAPID/overlap.H Xlib/libRAPID.a X@dirrm include/RAPID END-of-math/rapid/pkg-plist exit