diff options
author | Thomas Abthorpe <tabthorpe@FreeBSD.org> | 2008-02-09 01:59:37 +0000 |
---|---|---|
committer | Thomas Abthorpe <tabthorpe@FreeBSD.org> | 2008-02-09 01:59:37 +0000 |
commit | 6ceda39d6b4366c1568f0ff288a09381da9b9ae3 (patch) | |
tree | 8c9a49da731c7fb561f8512e1a0bc49886e08f17 /math | |
parent | 616049a8e54a7390d6a5db423f85c219ac0005b3 (diff) | |
download | ports-6ceda39d6b4366c1568f0ff288a09381da9b9ae3.tar.gz ports-6ceda39d6b4366c1568f0ff288a09381da9b9ae3.zip |
RAPID is a robust and accurate polygon interference detection library
for large environments composed of unstructured models.
WWW: http://www.cs.unc.edu/~geom/OBB/OBBT.html
PR: ports/118556
Submitted by: Jason W. Bacon <bacon at smithers.neuro.mcw.edu>
Notes
Notes:
svn path=/head/; revision=206921
Diffstat (limited to 'math')
-rw-r--r-- | math/Makefile | 1 | ||||
-rw-r--r-- | math/rapid/Makefile | 49 | ||||
-rw-r--r-- | math/rapid/distinfo | 3 | ||||
-rw-r--r-- | math/rapid/files/pkg-message.in | 6 | ||||
-rw-r--r-- | math/rapid/files/rapid.1 | 102 | ||||
-rw-r--r-- | math/rapid/pkg-descr | 4 | ||||
-rw-r--r-- | math/rapid/pkg-plist | 9 |
7 files changed, 174 insertions, 0 deletions
diff --git a/math/Makefile b/math/Makefile index 3baeadf0bba1..e049c032b713 100644 --- a/math/Makefile +++ b/math/Makefile @@ -325,6 +325,7 @@ SUBDIR += qtiplot-doc SUBDIR += qwtplot3d SUBDIR += qwtplot3d-qt4 + SUBDIR += rapid SUBDIR += rascal SUBDIR += reed-solomon SUBDIR += rkward diff --git a/math/rapid/Makefile b/math/rapid/Makefile new file mode 100644 index 000000000000..45fbb5d5e49a --- /dev/null +++ b/math/rapid/Makefile @@ -0,0 +1,49 @@ +############################################################################ +# New ports collection Makefile for: RAPID +# Date created: 18 July 2006 +# Whom: Jason W. Bacon <bacon@smithers.neuro.mcw.edu> +# +# $FreeBSD$ +# +# +############################################################################ + +PORTNAME= rapid +PORTVERSION= 2.01 +CATEGORIES= math science graphics +MASTER_SITES= http://www.cs.unc.edu/~geom/OBB/ +DISTNAME= RAPID201_MSVC + +MAINTAINER= bacon@smithers.neuro.mcw.edu +COMMENT= Robust and Accurate Polygon Interference Detection + +WRKSRC= ${WRKDIR}/RAPID201 + +RESTRICTED= Must register to download at http://www.cs.unc.edu/~geom/OBB/OBBT.html + +SUB_FILES= pkg-message +PKGMESSAGE= ${WRKDIR}/pkg-message + +ALL_TARGET= + +MAN1= rapid.1 + +.include <bsd.port.pre.mk> + +.if !exists(${DISTDIR}/${DISTNAME}${EXTRACT_SUFX}) +IGNORE= 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 +.endif + +post-extract: + ${REINPLACE_CMD} -E "s/friend RAPID_Collide/friend int RAPID_Collide/" ${WRKSRC}/RAPID_private.H + +do-install: + ${MKDIR} ${PREFIX}/include/RAPID + ${INSTALL_DATA} ${WRKSRC}/*.H ${PREFIX}/include/RAPID + ${INSTALL_DATA} ${WRKSRC}/libRAPID.a ${PREFIX}/lib + ${INSTALL_MAN} ${FILESDIR}/rapid.1 ${PREFIX}/man/man1 + +post-install: + @${CAT} ${PKGMESSAGE} + +.include <bsd.port.post.mk> diff --git a/math/rapid/distinfo b/math/rapid/distinfo new file mode 100644 index 000000000000..5f1b1305b79b --- /dev/null +++ b/math/rapid/distinfo @@ -0,0 +1,3 @@ +MD5 (RAPID201_MSVC.tar.gz) = 7508f5b51f859626114199cb120e363a +SHA256 (RAPID201_MSVC.tar.gz) = 98e9f426cd69b2a9493399c631d51ff006e5d789f3f028504b846cceb727b4dc +SIZE (RAPID201_MSVC.tar.gz) = 72005 diff --git a/math/rapid/files/pkg-message.in b/math/rapid/files/pkg-message.in new file mode 100644 index 000000000000..b1130e7a471e --- /dev/null +++ b/math/rapid/files/pkg-message.in @@ -0,0 +1,6 @@ + +*********************************************************************** +Redistribution of RAPID in any form is strictly prohibited without the +permission of UNC. +*********************************************************************** + diff --git a/math/rapid/files/rapid.1 b/math/rapid/files/rapid.1 new file mode 100644 index 000000000000..38eb2576ad58 --- /dev/null +++ b/math/rapid/files/rapid.1 @@ -0,0 +1,102 @@ +.TH RAPID 1 +.SH NAME \" Section header +.PP + +RAPID -- Robust and Accurate Polygon Interference Detection + +\" Convention: +\" Underline anything that is typed verbatim - commands, etc. +.SH SYNOPSIS +.PP +.nf +.na +#include <RAPID/RAPID.H> +c++ -I/usr/local/include program.c++ -L/usr/local/lib -lRAPID -lm +.ad +.fi + +.SH "DESCRIPTION" + +.B RAPID +is a robust and accurate polygon interference detection library for +large environments composed of unstructured models. + +It is applicable to polygon soups - models which contain no adjacency +information, and obey no topological constraints. The models may +contain cracks, holes, self-intersections, and nongeneric (e.g. +coplanar and collinear) configurations. + +It is numericaly robust - the algorithm is not subject to conditioning +problems, and requires no special handling of nongeneric cases (such as +parallel faces). + +The RAPID library is free for non-commercial use. Please use this +request form to download the latest version. It has a very simple user +interface: the user need noncommerial use. be familiar with only about +five function calls. A C++ sample client program illustrates its use. + +The current version of RAPID is version 2.01. The previous version was +1.04 - the change in version designation from 1.xx to 2.xx reflects a +moderate alteration in the library's interface (mostly just name +changes). The following changes from version 1.04 have been made: + +Use include file "RAPID.H": The RAPID API now requires only that you +include "RAPID.H" and link to "libRAPID.a" to be able to use the +library. + +Standalone library: RAPID no longer uses the SVM library. RAPID only +depends on the standard math library, "libm.a", which you probably link +to anyway. + +Use object "RAPID_model" instead of "box": The C++ object into which +you load polygons is now called "RAPID_model". Previous versions used +"box," which was a holdover from prerelease implementations, and was +not a suitable identifier for the API. + +Consistent use of "RAPID_" prefix: All the globals, such as those +which began with "OBBT_" now use the prefix "RAPID_". Note, also, that +the old constants "ALL_CONTACTS" and "FIRST_CONTACT" have been replaced +with the symbols "RAPID_ALL_CONSTACTS" and "RAPID_FIRST_CONTACT" in +RAPID 2.00. + +No explicit library initialization: Previous versions required the +client to call 'box::initialize()' before any other RAPID library call. +This was a common but unnecessary source of client bugs (people forgot +to call this routine). RAPID 2.00 no longer requires this, since all +API routines check to see if the library has been initialized. This +extra check has had a negligible performance impact. + +Revision of model construction interface: RAPID 2.00 requires calls to +BeginModel() and EndModel() to enclose the AddTri() calls for building +objects. This more resembles the OpenGL interface, with which many +clients will likely be familiar. Generally, preprocessing of the +objects will take place when EndModel() is called. Later versions of +RAPID will allow special procedures to be placed after the BeginModel() +call but before the first AddTri() call to give the client more control +over how the models are preprocessed. + +Faster preprocessing: The preprocessing for RAPID has been greatly +improved in terms of speed. RAPID 2.00 is generally 5 times faster than +previous versions in preprocessing models. The quality of the +hierarchies have theoretically been affected, in some ways for the +better and in some ways for the worse, but we have not conducted a +thorough study to gauge overall impact of our changes. In a later +release, we intend to provide an alternative preprocessing algorithm +which will be computationally expensive but which will build better +hierarchies. + +No support for plain C: Some clients may not consider this an +improvement, but support for plain C has been discontinued. Of course, +clients are still able to construct their own plain C wrappers for the +C++ functions in RAPID. This change has made the implementation of +RAPID more clean. + +.SH "SEE ALSO" +dtiquery(1) + +.SH AUTHOR +.nf +.na +UNC Research Group on Modeling +http://www.cs.unc.edu/~geom/OBB/OBBT.html + diff --git a/math/rapid/pkg-descr b/math/rapid/pkg-descr new file mode 100644 index 000000000000..9a634c20be79 --- /dev/null +++ b/math/rapid/pkg-descr @@ -0,0 +1,4 @@ +RAPID is a robust and accurate polygon interference detection library +for large environments composed of unstructured models. + +WWW: http://www.cs.unc.edu/~geom/OBB/OBBT.html diff --git a/math/rapid/pkg-plist b/math/rapid/pkg-plist new file mode 100644 index 000000000000..a0f872e2ea78 --- /dev/null +++ b/math/rapid/pkg-plist @@ -0,0 +1,9 @@ +include/RAPID/RAPID.H +include/RAPID/RAPID_private.H +include/RAPID/RAPID_version.H +include/RAPID/matvec.H +include/RAPID/moments.H +include/RAPID/obb.H +include/RAPID/overlap.H +lib/libRAPID.a +@dirrm include/RAPID |