2008-11-29 7 views
13

Est-ce que quelqu'un connaît une bibliothèque ou un ensemble de classes pour les splines - spécifiquement b-splines et NURBS (facultatif).Bibliothèque spline, B-Spline et NURBS C++

Une bibliothèque b-spline rapide et efficace serait si utile pour moi en ce moment.

Répondre

8

1.) B splines - Vous devriez vérifier Recettes numériques en C (il est livre pour cela et il est également disponible en ligne pour référence)

2.) Vérifiez également: sourceforge.net/projects/einspline/ & this

-AD

+0

Les recettes numériques en code C utilisées pour tomber sous une licence assez draconienne. Je ne sais pas si c'est encore le cas, mais sachez qu'il peut être illégal de l'utiliser dans des projets open-source (je ne suis pas un expert sur ce sujet) –

+3

Recettes numériques n'a rien sur B-Splines. – Jeff

16

Je sais que je répondais mois après cette question a été sked, mais pour d'autres qui pourraient être à la recherche d'une réponse similaire, je vais signaler openNURBS. OpenNURBS est également la bibliothèque utilisée dans le package de modélisation Rhinoceros

C'est une bibliothèque très complète et il vaut la peine d'être considérée.

+1

Merci l'homme! Si je n'avais pas déjà répondu, OpenNurbs le mériterait probablement. – CVertex

+1

Compris. J'espérais juste rendre les réponses plus complètes. :) – Naaff

+7

Je pense que openNURBS s'occupe seulement d'enregistrer/ouvrir à partir du format .3dm; il n'effectue pas réellement d'opérations géométriques. Pour cela, comme mentionné dans le lien, Rhino SDK est nécessaire, ce qui est une technologie propriétaire. – insys

1

Eigen Spline est basé sur la célèbre (rapide) C++ bibliothèque de modèles pour l'algèbre linéaire.

1

Une excellente bibliothèque qui est également complétée par un livre en ligne est du MIT. Voici le (hyper) livre http://web.mit.edu/hyperbook/Patrikalakis-Maekawa-Cho/mathe.html

et dans le fond du lien, vous trouverez le logiciel connexe, ici: http://web.mit.edu/hyperbook/Patrikalakis-Maekawa-Cho/software.html

GSL a une belle mise en œuvre b-spline très basique, mais il ne fonctionne pas inclure des courbes NURBS ni des algorithmes pour insérer/supprimer des nœuds, ou plusieurs choses plus avancées. Vous pouvez également trouver de nombreux algorithmes utiles que vous pouvez compiler dans votre propre langue dans le livre, « Le livre NURBS », Piegl & Tiller, celui-ci: http://www.amazon.com/NURBS-Book-Monographs-Visual-Communication/dp/3540615458

Recettes numériques ne prend pas en charge b-splines.

0

SISL semble être une bonne bibliothèque NURBS (sous licence AGPL). Il fait partie de GoTools qui peut être cloné here.