Abstract
It is increasingly common to model, simulate, and process complex materials based on loopy structures, such as in yarn-level cloth garments, which possess topological constraints between inter-looping curves. While the input model may satisfy specific topological linkages between pairs of closed loops, subsequent processing may violate those topological conditions. In this paper, we explore a family of methods for efficiently computing and verifying linking numbers between closed curves, and apply these to applications in geometry processing, animation, and simulation, so as to verify that topological invariants are preserved during and after processing of the input models. Our method has three stages: (1) we identify potentially interacting loop-loop pairs, then (2) carefully discretize each loop's spline curves into line segments so as to enable (3) efficient linking number evaluation using accelerated kernels based on either counting projected segment-segment crossings, or by evaluating the Gauss linking integral using direct or fast summation methods (Barnes-Hut or fast multipole methods). We evaluate CPU and GPU implementations of these methods on a suite of test problems, including yarn-level cloth and chainmail, that involve significant processing: physics-based relaxation and animation, user-modeled deformations, curve compression and reparameterization. We show that topology errors can be efficiently identified to enable more robust processing of loopy structures.
Supplemental Material
- Zin Arai. 2013. A rigorous numerical algorithm for computing the linking number of links. Nonlinear Theory and Its Applications, IEICE 4, 1 (2013), 104--110.Google Scholar
- David Baraff and Andrew Witkin. 1998. Large Steps in Cloth Simulation. In Proceedings of the 25th Annual Conference on Computer Graphics and Interactive Techniques (SIGGRAPH '98). Association for Computing Machinery, New York, NY, USA, 43--54. Google Scholar
Digital Library
- David Baraff, Andrew Witkin, and Michael Kass. 2003. Untangling Cloth. ACM Trans. Graph. 22, 3 (July 2003), 862--870. Google Scholar
Digital Library
- Jernej Barbič and Doug L. James. 2010. Subspace Self-Collision Culling. ACM Trans. on Graphics (SIGGRAPH 2010) 29, 4 (2010), 81:1--81:9.Google Scholar
- Gavin Barill, Neil G. Dickson, Ryan Schmidt, David I. W. Levin, and Alec Jacobson. 2018. Fast winding numbers for soups and clouds. ACM Transactions on Graphics (TOG) 37, 4 (2018), 1--12.Google Scholar
Digital Library
- Josh Barnes and Piet Hut. 1986. A hierarchical O(N log N) force-calculation algorithm. Nature 324, 6096 (1986), 446--449.Google Scholar
Cross Ref
- Julien Basch. 1999. Kinetic Data Structures. Ph.D. Dissertation. Stanford University, Stanford, CA, USA. Advisor(s) Guibas, Leonidas J. AAI9943622.Google Scholar
- Mitchell Berger. 2009. Topological Quantities: Calculating Winding, Writhing, Linking, and Higher Order Invariants. Lecture Notes in Mathematics 1973 (03 2009). Google Scholar
Cross Ref
- Miklós Bergou, Basile Audoly, Etienne Vouga, Max Wardetzky, and Eitan Grinspun. 2010. Discrete Viscous Threads. ACM Trans. Graph. 29, 4, Article 116 (July 2010), 10 pages. Google Scholar
Digital Library
- Miklós Bergou, Max Wardetzky, Stephen Robinson, Basile Audoly, and Eitan Grinspun. 2008. Discrete Elastic Rods. ACM Transactions on Graphics (SIGGRAPH) 27, 3 (aug 2008), 63:1--63:12.Google Scholar
Digital Library
- Gilbert Louis Bernstein and Chris Wojtan. 2013. Putting Holes in Holey Geometry: Topology Change for Arbitrary Surfaces. ACM Trans. Graph. 32, 4, Article 34 (July 2013), 12 pages. Google Scholar
Digital Library
- Enrico Bertolazzi, Riccardo Ghiloni, and Ruben Specogna. 2019. Efficient computation of linking number with certification. arXiv preprint arXiv:1912.13121 (2019).Google Scholar
- Robert Bridson, Ronald Fedkiw, and John Anderson. 2002. Robust Treatment of Collisions, Contact and Friction for Cloth Animation. In Proceedings of the 29th Annual Conference on Computer Graphics and Interactive Techniques (San Antonio, Texas) (SIGGRAPH '02). Association for Computing Machinery, New York, NY, USA, 594--603. Google Scholar
Digital Library
- Tyson Brochu, Essex Edwards, and Robert Bridson. 2012. Efficient Geometrically Exact Continuous Collision Detection. ACM Trans. Graph. 31, 4, Article 96 (July 2012), 7 pages. Google Scholar
Digital Library
- Hervé Brönnimann, Andreas Fabri, Geert-Jan Giezeman, Susan Hert, Michael Hoffmann, Lutz Kettner, Sylvain Pion, and Stefan Schirra. 2021. 2D and 3D Linear Geometry Kernel. In CGAL User and Reference Manual (5.2.1 ed.). CGAL Editorial Board. https://doc.cgal.org/5.2.1/Manual/packages.html#PkgKernel23Google Scholar
- Martin Burtscher and Keshav Pingali. 2011. An efficient CUDA implementation of the tree-based Barnes Hut N-body algorithm. In GPU Computing Gems Emerald Edition, Wen mei W. Hwu (Ed.). Morgan Kaufmann, Boston, 75 -- 92. Google Scholar
Cross Ref
- Cris Cecka and Simon Layton. 2015. FMMTL: FMM Template Library A Generalized Framework for Kernel Matrices. In Numerical Mathematics and Advanced Applications - ENUMATH 2013, Assyr Abdulle, Simone Deparis, Daniel Kressner, Fabio Nobile, and Marco Picasso (Eds.). Springer International Publishing, Cham, 611--620.Google Scholar
- Johnny T. Chang, Jingyi Jin, and Yizhou Yu. 2002. A practical model for hair mutual interactions. In Proceedings of the 2002 ACM SIGGRAPH/Eurographics symposium on Computer animation. 73--80.Google Scholar
Digital Library
- Hongwei Cheng, Leslie Greengard, and Vladimir Rokhlin. 1999. A Fast Adaptive Multipole Algorithm in Three Dimensions. J. Comput. Phys. 155, 2 (1999), 468 -- 498. Google Scholar
Digital Library
- Nicolas Clauvelin, Wilma K. Olson, and Irwin Tobias. 2012. Characterization of the Geometry and Topology of DNA Pictured As a Discrete Collection of Atoms. Journal of Chemical Theory and Computation 8, 3 (2012), 1092--1107. Google Scholar
Cross Ref
- Paul De Casteljau. 1959. Outillages méthodes calcul. Andr e Citro en Automobiles SA, Paris (1959).Google Scholar
- Tamal K. Dey, Fengtao Fan, and Yusu Wang. 2013. An efficient computation of handle and tunnel loops via Reeb graphs. ACM Transactions on Graphics (TOG) 32, 4 (2013), 1--10. Source code here: https://web.cse.ohio-state.edu/~dey.8/handle/ReebHanTun-download/reebhantun.html.Google Scholar
Digital Library
- Tamal K. Dey, Kuiyu Li, and Jian Sun. 2009. Computing handle and tunnel loops with knot linking. Computer-Aided Design 41, 10 (2009), 730 -- 738. Google Scholar
Digital Library
- Herbert Edelsbrunner and Afra Zomorodian. 2001. Computing linking numbers of a filtration. In Algorithms in Bioinformatics, Olivier Gascuel and Bernard M. E. Moret (Eds.). Springer, Springer, Berlin, Heidelberg, 112--127.Google Scholar
- Francisco R. Feito and Juan Carlos Torres. 1997. Inclusion test for general polyhedra. Computers & Graphics 21, 1 (1997), 23 -- 30. Google Scholar
Cross Ref
- F. Brock Fuller. 1978. Decomposition of the linking number of a closed ribbon: a problem from molecular biology. Proceedings of the National Academy of Sciences 75, 8 (1978), 3557--3561.Google Scholar
Cross Ref
- Leslie Greengard and Vladimir Rokhlin. 1987. A fast algorithm for particle simulations. J. Comput. Phys. 73, 2 (1987), 325 -- 348. Google Scholar
Digital Library
- Chen Greif, Shiwen He, and Paul Liu. 2015. SYM-ILDL: Incomplete LDLT Factorization of Symmetric Indefinite and Skew-Symmetric Matrices. CoRR abs/1505.07589 (2015). arXiv:1505.07589 http://arxiv.org/abs/1505.07589Google Scholar
- Gaël Guennebaud, Benoît Jacob, et al. 2010. Eigen v3. http://eigen.tuxfamily.org.Google Scholar
- Leonidas Guibas, An Nguyen, Daniel Russel, and Li Zhang. 2002. Collision Detection for Deforming Necklaces. In Proceedings of the Eighteenth Annual Symposium on Computational Geometry (Barcelona, Spain) (SCG '02). Association for Computing Machinery, New York, NY, USA, 33--42. Google Scholar
Digital Library
- Runbo Guo, Jenny Lin, Vidya Narayanan, and James McCann. 2020. Representing Crochet with Stitch Meshes. In Symposium on Computational Fabrication (Virtual Event, USA) (SCF '20). Association for Computing Machinery, New York, NY, USA, Article 4, 8 pages. Google Scholar
Digital Library
- David Harmon, Daniele Panozzo, Olga Sorkine, and Denis Zorin. 2011. Interference-Aware Geometric Modeling. ACM Trans. Graph. 30, 6 (Dec. 2011), 1--10. Google Scholar
Digital Library
- Edmond S.L. Ho and Taku Komura. 2009. Character Motion Synthesis by Topology Coordinates. Computer Graphics Forum 28, 2 (2009), 299--308. Google Scholar
Cross Ref
- Edmond S.L. Ho, Taku Komura, Subramanian Ramamoorthy, and Sethu Vijayakumar. 2010. Controlling humanoid robots in topology coordinates. In 2010 IEEE/RSJ International Conference on Intelligent Robots and Systems. 178--182. Google Scholar
Cross Ref
- Libo Huang, Torsten Hädrich, and Dominik L. Michels. 2019. On the Accurate Large-Scale Simulation of Ferrofluids. ACM Trans. Graph. 38, 4, Article 93 (July 2019), 15 pages. Google Scholar
Digital Library
- Geoffrey Irving, Joseph M. Teran, and Ronald Fedkiw. 2004. Invertible Finite Elements for Robust Simulation of Large Deformation. In Proceedings of the 2004 ACM SIGGRAPH/Eurographics Symposium on Computer Animation (Grenoble, France) (SCA '04). Eurographics Association, Goslar, DEU, 131--140. Google Scholar
Digital Library
- Alec Jacobson, Ladislav Kavan, and Olga Sorkine-Hornung. 2013. Robust Inside-Outside Segmentation Using Generalized Winding Numbers. ACM Trans. Graph. 32, 4, Article 33 (July 2013), 12 pages. Google Scholar
Digital Library
- Jonathan M. Kaldor, Doug L. James, and Steve Marschner. 2008. Simulating Knitted Cloth at the Yarn Level. In ACM SIGGRAPH 2008 Papers (Los Angeles, California) (SIGGRAPH '08). Association for Computing Machinery, New York, NY, USA, Article 65, 9 pages. Google Scholar
Digital Library
- Jonathan M. Kaldor, Doug L. James, and Steve Marschner. 2010. Efficient Yarn-Based Cloth with Adaptive Contact Linearization. In ACM SIGGRAPH 2010 Papers (Los Angeles, California) (SIGGRAPH '10). Association for Computing Machinery, New York, NY, USA, Article 105, 10 pages. Google Scholar
Digital Library
- Danny M. Kaufman, Rasmus Tamstorf, Breannan Smith, Jean-Marie Aubry, and Eitan Grinspun. 2014. Adaptive Nonlinearity for Collisions in Complex Rod Assemblies. ACM Trans. Graph. 33, 4, Article 123 (July 2014), 12 pages. Google Scholar
Digital Library
- Theodore Kim. 2020. A Finite Element Formulation of Baraff-Witkin Cloth. Computer Graphics Forum 39, 8 (2020), 171--179. Google Scholar
Digital Library
- Theodore Kim, Fernando De Goes, and Hayley Iben. 2019. Anisotropic Elasticity for Inversion-Safety and Element Rehabilitation. ACM Trans. Graph. 38, 4, Article 69 (July 2019), 15 pages. Google Scholar
Digital Library
- Konstantin Klenin and Jörg Langowski. 2000. Computation of writhe in modeling of supercoiled DNA. Biopolymers: Original Research on Biomolecules 54, 5 (2000), 307--317. <307::AID-BIP20>3.0.CO;2-Y Google Scholar
Cross Ref
- Brad A. Krajina, Audrey Zhu, Sarah C. Heilshorn, and Andrew J. Spakowitz. 2018. Active DNA Olympic Hydrogels Driven by Topoisomerase Activity. Phys. Rev. Lett. 121 (Oct 2018), 148001. Issue 14. Google Scholar
Cross Ref
- Jonathan Leaf, Rundong Wu, Eston Schweickart, Doug L. James, and Steve Marschner. 2018. Interactive Design of Periodic Yarn-Level Cloth Patterns. ACM Trans. Graph. 37, 6, Article 202 (Dec. 2018), 15 pages. Google Scholar
Digital Library
- Hammad Mazhar, Tim Osswald, and Dan Negrut. 2016. On the use of computational multi-body dynamics analysis in SLS-based 3D printing. Additive Manufacturing 12 (2016), 291--295. Special Issue on Modeling & Simulation for Additive Manufacturing. Google Scholar
Cross Ref
- Charles A. Micchelli and Hartmut Prautzsch. 1989. Uniform refinement of curves. Linear Algebra Appl. 114--115 (1989), 841--870. Google Scholar
Cross Ref
- John Milnor. 1954. Link groups. Annals of Mathematics (1954), 177--195.Google Scholar
- Edward L. F. Moore. 2006. Computational topology of spline curves for geometric and molecular approximations. Ph.D. Dissertation. University of Connecticut. Advisor(s) Peters, Thomas J.Google Scholar
- Vidya Narayanan, Lea Albaugh, Jessica Hodgins, Stelian Coros, and James Mccann. 2018. Automatic Machine Knitting of 3D Meshes. ACM Trans. Graph. 37, 3, Article 35 (Aug. 2018), 15 pages. Google Scholar
Digital Library
- Vidya Narayanan, Kui Wu, Cem Yuksel, and James McCann. 2019. Visual Knitting Machine Programming. ACM Trans. Graph. 38, 4, Article 63 (July 2019), 13 pages. Google Scholar
Digital Library
- Florian T. Pokorny, Johannes A. Stork, and Danica Kragic. 2013. Grasping objects with holes: A topological approach. In 2013 IEEE International Conference on Robotics and Automation. 1100--1107. Google Scholar
Cross Ref
- Dale Rolfsen. 1976. Knots and links. Publish or Perish, Berkeley, CA.Google Scholar
- David Salesin, Jorge Stolfi, and Leonidas Guibas. 1989. Epsilon Geometry: Building Robust Algorithms from Imprecise Computations. In Proceedings of the Fifth Annual Symposium on Computational Geometry (Saarbruchen, West Germany) (SCG '89). Association for Computing Machinery, New York, NY, USA, 208--217. Google Scholar
Digital Library
- Andrew Selle, Michael Lentine, and Ronald Fedkiw. 2008. A Mass Spring Model for Hair Simulation. ACM Trans. Graph. 27, 3 (Aug. 2008), 1--11. Google Scholar
Digital Library
- Jonathan Richard Shewchuk. 1997. Adaptive Precision Floating-Point Arithmetic and Fast Robust Geometric Predicates. Discrete & Computational Geometry 18, 3 (Oct. 1997), 305--363.Google Scholar
- Zachary Sierzega, Jeff Wereszczynski, and Chris Prior. 2020. WASP: A software package for correctly characterizing the topological development of ribbon structures. bioRxiv (2020). Google Scholar
Cross Ref
- Jonas Spillmann and Matthias Teschner. 2008. An Adaptive Contact Model for the Robust Simulation of Knots. Computer Graphics Forum 27, 2 (2008), 497--506. Google Scholar
- Alessandro Tasora, Radu Serban, Hammad Mazhar, Arman Pazouki, Daniel Melanz, Jonathan Fleischmann, Michael Taylor, Hiroyuki Sugiyama, and Dan Negrut. 2016. Chrono: An Open Source Multi-physics Dynamics Engine. In High Performance Computing in Science and Engineering, Tomáš Kozubek, Radim Blaheta, Jakub Šístek, Miroslav Rozložník, and Martin Čermák (Eds.). Springer International Publishing, Cham, 19--49.Google Scholar
- Adriaan Van Oosterom and Jan Strackee. 1983. The Solid Angle of a Plane Triangle. IEEE Transactions on Biomedical Engineering BME-30, 2 (1983), 125--126. Google Scholar
Cross Ref
- Pascal Volino and Nadia Magnenat-Thalmann. 2006. Resolving Surface Collisions through Intersection Contour Minimization. In ACM SIGGRAPH 2006 Papers (Boston, Massachusetts) (SIGGRAPH '06). Association for Computing Machinery, New York, NY, USA, 1154--1159. Google Scholar
Digital Library
- Monan Wang and Jiaqi Cao. 2021. A review of collision detection for deformable objects. Computer Animation and Virtual Worlds (2021).Google Scholar
- Kui Wu, Xifeng Gao, Zachary Ferguson, Daniele Panozzo, and Cem Yuksel. 2018. Stitch Meshing. ACM Trans. Graph. 37, 4, Article 130 (July 2018), 14 pages. Google Scholar
Digital Library
- Kui Wu, Hannah Swan, and Cem Yuksel. 2019. Knittable Stitch Meshes. ACM Trans. Graph. 38, 1, Article 10 (Jan. 2019), 13 pages. Google Scholar
Digital Library
- Kui Wu and Cem Yuksel. 2017. Real-time Fiber-level Cloth Rendering. In ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games (I3D 2017) (San Francisco, CA). ACM, New York, NY, USA, 8. Google Scholar
Digital Library
- Rundong Wu, Joy Xiaoji Zhang, Jonathan Leaf, Xinru Hua, Ante Qu, Claire Harvey, Emily Holtzman, Joy Ko, Brooks Hagan, Doug James, François Guimbretière, and Steve Marschner. 2020. Weavecraft: An Interactive Design and Simulation Tool for 3D Weaving. ACM Trans. Graph. 39, 6, Article 210 (Nov. 2020), 16 pages. Google Scholar
Digital Library
- Christopher Yu, Henrik Schumacher, and Keenan Crane. 2020. Repulsive Curves. ACM Trans. Graph. (2020). Conditionally accepted preprint.Google Scholar
- Cem Yuksel, Jonathan M. Kaldor, Doug L. James, and Steve Marschner. 2012. Stitch Meshes for Modeling Knitted Clothing with Yarn-Level Detail. ACM Trans. Graph. 31, 4, Article 37 (July 2012), 12 pages. Google Scholar
Digital Library
- Dmitry Zarubin, Vladimir Ivan, Marc Toussaint, Taku Komura, and Sethu Vijayakumar. 2012. Hierarchical Motion Planning in Topological Representations. In Proceedings of Robotics: Science and Systems. Sydney, Australia. Google Scholar
Cross Ref
- Liangjun Zhang, Young J. Kim, Gokul Varadhan, and Dinesh Manocha. 2007. Generalized penetration depth computation. Computer-Aided Design 39, 8 (2007), 625 -- 638. Solid and Physical Modeling 2006. Google Scholar
Digital Library
- Changxi Zheng and Doug L. James. 2012. Energy-Based Self-Collision Culling for Arbitrary Mesh Deformations. ACM Trans. Graph. 31, 4, Article 98 (July 2012), 12 pages. Google Scholar
Digital Library
Index Terms
Fast linking numbers for topology verification of loopy structures
Recommendations
Mechanics-aware deformation of yarn pattern geometry
Triangle mesh-based simulations are able to produce satisfying animations of knitted and woven cloth; however, they lack the rich geometric detail of yarn-level simulations. Naive texturing approaches do not consider yarn-level physics, while full yarn-...
Performing Interpolation and Anterpolation Entirely by Fast Fourier Transform in the 3-D Multilevel Fast Multipole Algorithm
The fast multipole methods are used for solving a scalar acoustic or vector electromagnetic wave equation by integral equation methods with a large number of unknowns. In this paper a new method is presented for performing interpolation and ...
Homogenized yarn-level cloth
We present a method for animating yarn-level cloth effects using a thin-shell solver. We accomplish this through numerical homogenization: we first use a large number of yarn-level simulations to build a model of the potential energy density of the ...





Comments