“Fab forms: customizable objects for fabrication with validity and geometry caching”

  • ©Maria Shugrina, Ariel Shamir, and Wojciech Matusik



Session Title:

    Fabrication & Function


    Fab forms: customizable objects for fabrication with validity and geometry caching




    We address the problem of allowing casual users to customize parametric models while maintaining their valid state as 3D-printable functional objects. We define Fab Form as any design representation that lends itself to interactive customization by a novice user, while remaining valid and manufacturable. We propose a method to achieve these Fab Form requirements for general parametric designs tagged with a general set of automated validity tests and a small number of parameters exposed to the casual user. Our solution separates Fab Form evaluation into a precomputation stage and a runtime stage. Parts of the geometry and design validity (such as manufacturability) are evaluated and stored in the precomputation stage by adaptively sampling the design space. At runtime the remainder of the evaluation is performed. This allows interactive navigation in the valid regions of the design space using an automatically generated Web user interface (UI). We evaluate our approach by converting several parametric models into corresponding Fab Forms.


    1. Amazon. Amazon web services. http://aws.amazon.com/.Google Scholar
    2. Autodesk. Autocad. http://www.autodesk.com/products/autodesk-autocad.Google Scholar
    3. Bentley, J. L. 1975. Multidimensional binary search trees used for associative searching. Communications of the ACM 18, 9, 509–517. Google ScholarDigital Library
    4. Bettig, B., and Hoffmann, C. M. 2011. Geometric constraint solving in parametric computer-aided design. Journal of computing and information science in engineering 11, 2.Google ScholarCross Ref
    5. Bidarra, R., and Bronsvoort, W. F. 2000. Semantic feature modelling. Computer-Aided Design 32, 3, 201–225.Google ScholarCross Ref
    6. Bokeloh, M., Wand, M., Seidel, H.-P., and Koltun, V. 2012. An algebraic model for parameterized shape editing. ACM Trans. Graph. 31, 4, 78:1–78:10. Google ScholarDigital Library
    7. Carve CSG. http://carve-csg.com.Google Scholar
    8. Chaudhuri, S., Kalogerakis, E., Guibas, L., and Koltun, V. 2011. Probabilistic reasoning for assembly-based 3d modeling. ACM Trans. Graph. 30, 4, 35:1–35:10. Google ScholarDigital Library
    9. Clipper. http://www.angusj.com/delphi/clipper.php.Google Scholar
    10. Cutler, B., Dorsey, J., McMillan, L., Müller, M., and Jagnow, R. 2002. A procedural approach to authoring solid models. ACM Trans. Graph. 21, 3, 302–311. Google ScholarDigital Library
    11. Dassault Systèmes. Solidworks. http://www.solidworks.com/.Google Scholar
    12. Doubilet, P., Begg, C. B., Weinstein, M. C., Braun, P., and McNeil, B. J. 1984. Probabilistic sensitivity analysis using monte carlo simulation. A practical approach. Medical decision making 5, 2, 157–177.Google Scholar
    13. Dreamforge. Cookie caster. http://cookiecaster.com.Google Scholar
    14. Gal, R., Sorkine, O., Mitra, N. J., and Cohen-Or, D. 2009. iWIRES: an analyze-and-edit approach to shape manipulation. ACM Trans. Graph. 28, 3, 33:1–33:10. Google ScholarDigital Library
    15. Garey, M., and Johnson, D. 1979. Computers and Intractability: A Guide to the Theory of NP-Completeness. Series of books in the mathematical sciences. W. H. Freeman. Google ScholarDigital Library
    16. Google. Protocol buffers. http://code.google.com/apis/protocolbuffers/.Google Scholar
    17. Hidalgo, M., and Joan-Arinyo, R. 2012. Computing parameter ranges in constructive geometric constraint solving: Implementation and correctness proof. Computer-Aided Design 44, 7, 709–720. Google ScholarDigital Library
    18. Hoffmann, C. M., and Kim, K.-J. 2001. Towards valid parametric cad models. Computer-Aided Design 33, 1, 81–90.Google ScholarCross Ref
    19. Iyengar, S. S., and Lepper, M. R. 1999. Rethinking the value of choice: A cultural perspective on intrinsic motivation. Journal of Personality and Social Psychology 76, 3, 349–366.Google ScholarCross Ref
    20. Jacobson, A., Baran, I., Popovic, J., and Sorkine, O. 2011. Bounded biharmonic weights for real-time deformation. ACM Trans. Graph. 30, 4, 78:1–78:8. Google ScholarDigital Library
    21. jQuery Foundation, T. jQuery. http://jquery.com/.Google Scholar
    22. Kim, D., Koh, W., Narain, R., Fatahalian, K., Treuille, A., and O’Brien, J. F. 2013. Near-exhaustive precomputation of secondary cloth effects. ACM Trans. Graph. 32, 4, 87:1–87:8. Google ScholarDigital Library
    23. Koyama, Y., Sakamoto, D., and Igarashi, T. 2014. Crowd-powered parameter analysis for visual design exploration. In Proc. UIST ’13, ACM, 65–74. Google ScholarDigital Library
    24. Kraevoy, V., Sheffer, A., Shamir, A., and Cohen-Or, D. 2008. Non-homogeneous resizing of complex models. ACM Trans. Graph. 27, 5, 111:1–111:9. Google ScholarDigital Library
    25. Lozano-Perez, T. 1983. Spatial planning: A configuration space approach. IEEE Trans. on Computers 100, 2, 108–120. Google ScholarDigital Library
    26. MakerBot. Thingiverse customizer. http://www.thingiverse.com/apps/customizer.Google Scholar
    27. Makieworld Ltd. Makies: create your own doll! http://makie.me.Google Scholar
    28. Marks, J., Andalman, B., Beardsley, P. A., Freeman, W., Gibson, S., Hodgins, J., Kang, T., Mirtich, B., Pfister, H., Ruml, W., et al. 1997. Design galleries: A general approach to setting parameters for computer graphics and animation. In Proc. SIGGRAPH, ACM, 389–400. Google ScholarDigital Library
    29. Museth, K. 2013. VDB: High-resolution sparse volumes with dynamic topology. ACM Trans. Graph. 32, 3, 27:1–27:22. Google ScholarDigital Library
    30. Nervous System. Radiolaria: bio-inspired design app. http://n-e-r-v-o-u-s.com/radiolaria.Google Scholar
    31. OpenSCAD. http://www.openscad.org.Google Scholar
    32. Pan, J., Zhang, X., and Manocha, D. 2013. Efficient penetration depth approximation using active learning. ACM Trans. Graph. 32, 6, 191:1–191:12. Google ScholarDigital Library
    33. Pfaff, T., and Thuerey, N., 2013. MantaFlow. http://mantaflow.com.Google Scholar
    34. Prévost, R., Whiting, E., Lefebvre, S., and Sorkine-Hornung, O. 2013. Make it stand: balancing shapes for 3d fabrication. ACM Trans. Graph. 32, 4, 81:1–81:10. Google ScholarDigital Library
    35. Schmidt, R., and Singh, K. 2008. Sketch-based procedural surface modeling and compositing using surface trees. Comp. Graph. Forum 27, 2, 321–330.Google ScholarCross Ref
    36. Schmidt, R., Wyvill, B., and Galin, E. 2005. Interactive implicit modeling with hierarchical spatial caching. In International Conference on Shape Modeling and Applications, IEEE, 104–113. Google ScholarDigital Library
    37. Schulte, C., Tack, G., and Lagerkvist, M. Z., 2010. Modeling and programming with gecode. http://www.gecode.org/.Google Scholar
    38. Shapeways. Sake set creator. https://www.shapeways.com/creator/sake-set.Google Scholar
    39. Shapeways, 2014. ShapeJS. http://shapejs.shapeways.com/.Google Scholar
    40. Shapira, L., Shamir, A., and Cohen-Or, D. 2008. Consistent mesh partitioning and skeletonisation using the shape diameter function. The Visual Computer 24, 4, 249–259. Google ScholarDigital Library
    41. Shapira, L., Shamir, A., and Cohen-Or, D. 2009. Image appearance exploration by model-based navigation. Comp. Graph. Forum 28, 2, 629–638.Google ScholarCross Ref
    42. Shewchuk, J. R. 1996. Triangle: Engineering a 2d quality mesh generator and delaunay triangulator. In Applied computational geometry towards geometric engineering. Springer, 203–222. Google ScholarDigital Library
    43. Sorkine, O., Cohen-Or, D., Lipman, Y., Alexa, M., RöSsl, C., and Seidel, H.-P. 2004. Laplacian surface editing. In Proc. of Eurographics, ACM, 175–184. Google ScholarDigital Library
    44. Stava, O., Vanek, J., Benes, B., Carr, N., and Měch, R. 2012. Stress relief: improving structural strength of 3d printable objects. ACM Trans. Graph. 31, 4, 48:1–48:11. Google ScholarDigital Library
    45. Talton, J. O., Gibson, D., Yang, L., Hanrahan, P., and Koltun, V. 2009. Exploratory modeling with collaborative design spaces. ACM Trans. Graph. 28, 5, 167:1–167:10. Google ScholarDigital Library
    46. three.js. http://threejs.org/.Google Scholar
    47. Umetani, N., and Schmidt, R. 2013. Cross-sectional structural analysis for 3d printing optimization. In SIGGRAPH Asia Technical Briefs, ACM, 5:1–5:4. Google ScholarDigital Library
    48. Umetani, N., Kaufman, D. M., Igarashi, T., and Grinspun, E. 2011. Sensitive couture for interactive garment modeling and editing. ACM Trans. Graph. 30, 4, 90:1–90:12. Google ScholarDigital Library
    49. Umetani, N., Igarashi, T., and Mitra, N. J. 2012. Guided exploration of physically valid shapes for furniture design. ACM Trans. Graph. 31, 4, 86:1–86:11. Google ScholarDigital Library
    50. Umetani, N., Koyama, Y., Schmidt, R., and Igarashi, T. 2014. Pteromys: interactive design and optimization of free-formed free-flight model airplanes. ACM Trans. Graph. 33, 4, 65:1–65:10. Google ScholarDigital Library
    51. Van der Meiden, H. A., and Bronsvoort, W. F. 2006. A constructive approach to calculate parameter ranges for systems of geometric constraints. Computer-Aided Design 38, 4, 275–283. Google ScholarDigital Library
    52. van der Meiden, H. A., and Bronsvoort, W. F. 2007. Solving topological constraints for declarative families of objects. Computer-Aided Design 39, 8, 652–662. Google ScholarDigital Library
    53. Wise, K. D., and Bowyer, A. 2000. A survey of global configuration-space mapping techniques for a single robot in a static environment. The International Journal of Robotics Research 19, 8, 762–779.Google ScholarCross Ref
    54. Wu, Y. 1994. Computational methods for efficient structural reliability and reliability sensitivity analysis. AIAA Journal 32, 8, 1717–1723.Google ScholarCross Ref
    55. Wyvill, B., Guy, A., and Galin, E. 1999. Extending the csg tree. warping, blending and boolean operations in an implicit surface modeling system. Comp. Graph. Forum 18, 2, 149–158.Google ScholarCross Ref
    56. Yang, Y.-L., Yang, Y.-J., Pottmann, H., and Mitra, N. J. 2011. Shape space exploration of constrained meshes. ACM Trans. Graph. 30, 6, 124:1–124:12. Google ScholarDigital Library
    57. Zaphoyd Studios. Websocket++.Google Scholar
    58. Zhou, Q., Panetta, J., and Zorin, D. 2013. Worst-case structural analysis. ACM Trans. Graph. 32, 4, 137:1–137:12. Google ScholarDigital Library

ACM Digital Library Publication: