Solid Modeling Solutions es una empresa que tiene una implementación de una representación matemática de NURBS ( B-spline racional no uniforme ), geometría 3D y tecnología de modelado de sólidos que surgió en las décadas de 1980 y 1990 en una implementación comercial conocida como SMLib (para sólidos biblioteca de modelos). [1] Este artículo proporcionará los antecedentes y la historia de esta implementación en una línea de productos comerciales de Solid Modeling Solutions (SMS). SMS es un proveedor independiente de código fuente para un potente conjunto de núcleos de geometría 3D. [2]SMS proporciona bibliotecas de geometría avanzadas basadas en NURBS, SMLib, TSNLib, GSNLib, NLib, SDLib, VSLib y PolyMLib, que abarcan una amplia definición y manipulación de curvas y superficies NURBS con la última topología no múltiple completamente funcional. [3] [4]
VSLib proporciona modelado deformable como parte de una biblioteca que utiliza las técnicas de optimización restringida del cálculo de variaciones. La biblioteca admite varias operaciones geométricas muy diferentes.
PolyMLib es un conjunto de herramientas de software orientado a objetos que proporciona un conjunto de objetos y los métodos correspondientes para reparar, optimizar, revisar y editar modelos de malla triangular. Se puede utilizar para analizar las propiedades de la superficie, como la suavidad y la distribución de la curvatura, así como para reparar y optimizar las mallas de la superficie. [5]
Historia
NURBS comenzó con un trabajo fundamental en Boeing y SDRC (Structural Dynamics Research Corporation), una empresa líder en ingeniería mecánica asistida por computadora en las décadas de 1980 y 1990. [6] La historia de NURBS en Boeing se remonta a 1979 cuando Boeing comenzó a contratar personal con el fin de desarrollar su propio sistema CAD / CAM integral, TIGER, para respaldar la amplia variedad de aplicaciones que necesitaban sus diversos grupos de ingeniería aeronáutica y aeroespacial. . Tres decisiones básicas fueron fundamentales para establecer un entorno propicio para el desarrollo de NURBS. El primero fue la necesidad de Boeing de desarrollar su propia capacidad geométrica interna. Boeing tenía necesidades especiales de geometría de superficie, bastante sofisticadas, especialmente para el diseño de alas, que no se podían encontrar en ningún sistema CAD / CAM disponible comercialmente. Como resultado, el Grupo de Desarrollo de Geometría TIGER se estableció en 1979 y recibió un fuerte apoyo durante muchos años. La segunda decisión crítica para el desarrollo de NURBS fue la eliminación de la restricción de compatibilidad geométrica ascendente con los dos sistemas en uso en Boeing en ese momento. Uno de estos sistemas había evolucionado como resultado del proceso iterativo inherente al diseño de alas. El otro era el más adecuado para agregar las limitaciones impuestas por la fabricación, como las regiones cilíndricas y planas. La tercera decisión fue simple pero crucial y agregó la 'R' a 'NURBS'. Los círculos debían representarse exactamente: no se permitirían aproximaciones cúbicas.
A finales de 1979 había 5 o 6 matemáticos bien formados (PhD de Stanford, Harvard, Washington y Minnesota) y algunos tenían muchos años de experiencia en software, pero ninguno de ellos tenía experiencia en geometría industrial, mucho menos CAD. Eran los días de la sobreoferta de doctorados en matemáticas. La tarea consistía en elegir las representaciones para las 11 formas de curvas requeridas, que incluían todo, desde líneas y círculos hasta curvas Bézier y B-spline.
A principios de 1980, el personal estaba ocupado eligiendo representaciones de curvas y desarrollando los algoritmos geométricos para TIGER. Una de las principales tareas fue la intersección curva / curva. Se advirtió muy rápidamente que se podía resolver el problema general de intersección si se podía resolver en el caso Bézier / Bézier, ya que todo podía representarse en forma Bézier en el nivel más bajo. Pronto se advirtió que la tarea de desarrollo de la geometría se simplificaría sustancialmente si se pudiera encontrar una manera de representar todas las curvas usando una sola forma.
Con esta motivación, el personal inició el camino hacia lo que se convirtió en NURBS. Considere: el diseño de un ala exige estrías cúbicas continuas C2 de forma libre para satisfacer las necesidades del análisis aerodinámico, pero el círculo y los cilindros de fabricación requieren al menos curvas de Bézier racionales. Las propiedades de las curvas Bézier y las B-splines uniformes eran bien conocidas, pero el personal tenía que adquirir conocimientos sobre las B-splines no uniformes y las curvas Bézier racionales e intentar integrar las dos. Fue necesario convertir círculos y otras cónicas en curvas de Bézier racionales para la intersección curva / curva. En ese momento, ninguno de los miembros del personal se dio cuenta de la importancia del trabajo y se consideró "demasiado trivial" y "nada nuevo". La transición de B-splines uniformes a no uniformes fue bastante sencilla, ya que la base matemática había estado disponible en la literatura durante muchos años. Simplemente, aún no se había convertido en parte de las matemáticas aplicadas estándar de CAD / CAM. Una vez que hubo una comprensión razonablemente buena de Bézier racional y splines no uniformes, todavía teníamos que unirlos. Hasta este momento, el personal no había escrito ni visto el formulario
para algo más que un segmento Bézier cónico. Buscando una sola forma, el grupo trabajó en conjunto, aprendiendo sobre nudos, nudos múltiples y cuán bien los segmentos de Bézier, especialmente las cónicas, se podían incrustar en una curva B-spline con múltiples nudos. Mirando hacia atrás, parecía tan simple: es fácil verificar que la ecuación para P (t) es válida para las funciones de base B-spline así como para las funciones de base de Bernstein. A finales de 1980, el personal sabía que teníamos una manera de presentar todas las formas de curvas requeridas utilizando una única representación, ahora conocida como forma NURBS. Pero esta nueva representación podría haber muerto fácilmente en este punto. El personal ya llevaba entre 12 y 18 meses en camino de desarrollo. Habían completado una gran cantidad de algoritmos utilizando las antiguas formas de curvas. Ahora tenían que convencer a los gerentes y otros grupos técnicos, como los grupos de base de datos y gráficos, de que se les debería permitir comenzar de nuevo utilizando una única representación para todas las curvas. La forma de la superficie NURBS no presentó ningún problema ya que aún no habían desarrollado ningún algoritmo de superficie. La revisión de esta nueva forma de curva TIGER se llevó a cabo el 13 de febrero de 1981. La revisión fue exitosa y se permitió al personal comenzar de nuevo utilizando la nueva forma de curva. Fue en este momento cuando el acrónimo NURBS fue utilizado por primera vez por la otra parte del proyecto TIGER, es decir, los grupos de desarrollo de software TIGER de Boeing Computer Services. La gerencia estaba muy ansiosa por promover el uso de estas nuevas formas de curvas y superficies. Tenían una comprensión limitada de las matemáticas, pero eran muy conscientes de la necesidad de comunicar datos geométricos entre sistemas. Por lo tanto, Boeing se preparó muy rápidamente para proponer NURBS a las reuniones de IGES de agosto de 1981 .
Hay dos razones por las que IGES aceptó tan rápidamente las NURBS. La primera fue que IGES necesitaba una forma de representar objetos. Hasta ese momento, por ejemplo, solo había dos definiciones de superficie en IGES y la forma B-spline estaba restringida a splines cúbicos. La otra razón, sorprendentemente importante, de la rápida aceptación fue que Boeing, al no ser un proveedor de sistemas CAD, no representaba una amenaza para ninguno de los principales proveedores de sistemas llave en mano. Evidentemente, IGES se empantana fácilmente cuando diferentes proveedores admiten sus propias representaciones ligeramente diferentes para los mismos objetos. En esta primera reunión de IGES, se descubrió que las personas que mejor entendían la presentación eran los representantes de la SDRC. Evidentemente, el SDRC también participó activamente en la definición de una única representación para las curvas CAD estándar y estaba trabajando en una definición similar.
Así es como empezó NURBS en Boeing. El papel de refinamiento B-spline de Boehm de CAD '80 fue de primordial importancia. Permitió al personal comprender las splines no uniformes y apreciar la naturaleza geométrica de la definición para utilizar las B-splines en la resolución de problemas de ingeniería. El primer uso de la naturaleza geométrica de B-splines fue en la intersección curva / curva. Se utilizó el proceso de subdivisión de Bezier, y un segundo uso fue nuestro algoritmo de compensación de curva, que se basó en un proceso de compensación de polígono que finalmente fue comunicado y utilizado por SDRC y explicado por Tiller y Hanson en su documento de compensación de 1984. El personal también desarrolló una clase interna de NURBS que se impartió a unos 75 ingenieros de Boeing. La clase cubrió curvas Bezier, Bezier a B-spline y superficies. La primera presentación pública de nuestro trabajo NURBS fue en un seminario CASA / SME en Seattle en marzo de 1982. El personal había progresado bastante para entonces. Podrían tomar una definición de superficie NURBS bastante simple de un avión y cortarla con una superficie plana para generar un contorno interesante de algunas de las alas, la carrocería y los motores. Al personal se le permitió una gran libertad para perseguir nuestras ideas y Boeing promovió correctamente NURBS, pero la tarea de desarrollar esa tecnología en una forma utilizable fue demasiado para Boeing, que abandonó la tarea TIGER a fines del '84.
Para que conste, a finales de 1980, el Grupo de Desarrollo de Geometría TIGER estaba formado por Robert Blomgren, Richard Fuhr, George Graf, Peter Kochevar, Eugene Lee, Miriam Lucian y Richard Rice. Robert Blomgren fue el "ingeniero jefe".
Robert M. Blomgren posteriormente formó Applied Geometry en 1984 para comercializar la tecnología, y Applied Geometry fue posteriormente comprada por Alias Systems Corporation / Silicon Graphics . Solid Modeling Solutions (SMS) se formó a principios de 1998 por Robert Blomgren y Jim Presti. A finales de 2001, se compró Nlib de GeomWare y la alianza con IntegrityWare se terminó en 2004. Se añaden mejoras y nuevas funciones importantes dos veces al año.
El software de SMS se basa en años de investigación y aplicación de la tecnología NURBS. Les Piegl y Wayne Tiller (socio de Solid Modeling Solutions) escribieron el "Libro NURBS" definitivo sobre B-splines racionales no uniformes (NURBS) con ayudas para diseñar geometría para aplicaciones de entornos asistidos por computadora. [7] Las matemáticas fundamentales están bien definidas en este libro, y la manifestación más fiel en software se implementa en la línea de productos SMS.
Filosofía
SMS proporciona código fuente a los clientes para mejorar y permitir su comprensión de la tecnología subyacente, brindar oportunidades de colaboración, mejorar el tiempo de reparación y proteger su inversión. La entrega, el mantenimiento y la comunicación del producto se proporcionan mediante mecanismos basados en la web. SMS ha establecido un modelo único de organización técnica y un enfoque de código abierto adaptativo. La filosofía de precios basada en suscripción proporciona una base estable de experiencia técnica y es rentable para sus clientes cuando se ve desde la perspectiva del costo total de propiedad de software complejo. [8]
Arquitectura SMS
SMLib: estructura topológica no múltiple completamente funcional y funcionalidad de modelado de sólidos.
TSNLib: analiza las representaciones de superficies recortadas basadas en NURBS.
GSNLib: basado en NLib con capacidades de intersección de curva / curva y superficie / superficie.
NLib: un núcleo de modelado geométrico avanzado basado en curvas y superficies NURBS.
VSLib: modelado deformable utilizando las técnicas de optimización restringida del cálculo de variaciones.
PolyMLib: una biblioteca de juegos de herramientas de software orientada a objetos que proporciona un conjunto de objetos y los métodos correspondientes para reparar, optimizar, revisar y editar modelos de malla triangular.
traductores de datos: bibliotecas de traducción de geometría basadas en NURBS, con interfaces para la familia de productos SMLib, TSNLib, GSNLib, NLib y SDLib, incluidas las capacidades IGES, STEP, VDAFS, SAT y OpenNURBS.
Funcionalidad
Las descripciones completas de la línea de productos SMS se pueden encontrar en la página de productos SMS.
Ver también
Referencias
- ^ Potts Steves, Michelle y Frechette, Simon. "Tecnologías de visualización para modelos CAD" , NIST, febrero de 2003.
- ^ Rowe, Jeffrey. "SIGGRAPH evoluciona junto con la tecnología" , Cadalyst, 21 de agosto de 2008.
- ^ "Qué planes de soluciones de modelado sólido para 2012" , WorldCAD Access, 20 de diciembre de 2011
- ^ Choi, J., Cho, M., Choi, J., Roh, H. "LA INTEGRACIÓN DEL ANÁLISIS DE ELEMENTOS FINITOS DE SHELL CON MODELADO GEOMÉTRICO" Archivado el 16 de enero de 2013 en archive.today
- ^ "Biblioteca de malla poligonal para el posprocesamiento de datos de escaneo 3D" , Ingeniería de escritorio, noviembre de 2008
- ^ "NURBS y CAD: 30 años juntos" , Ushakov, Dmitry, isicad, 30 de diciembre de 2011.
- ^ Piegl, Les y Tiller, Wayne. El libro NURBS , Springer 1997
- ^ Greco, Joe. "Kernel Wars - Episodio 1" , revista CADENCE, noviembre de 1999