Abstract
This chapter describes different possibilities for programming BIM applications with particular emphasis on processing data in the vendor-neutral Industry Foundation Classes (IFC) exchange format. It describes how to access data in STEP clear text encoding and discusses the differences between early and late binding. Given the increasingly important role of ifcXML in the exchange of IFC data, the chapter also examines different access variants such as SAX (Simple API for XML) and DOM (Document Object Model), and discusses the different geometry representations of IFC and their interpretation. Furthermore, the chapter gives a brief overview of the development of add-ins as a means of allowing existing software to be adapted to user-specific needs. The chapter ends with a brief overview of cloud-based platforms and a short introduction to visual programming.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Cataraci, T., & Santucci, G. (1995). Are visual query languages easier to use than traditional ones? An experimental proof. In M. A. R. Kirby, A. Dix, & J. E. Finlay (Eds.), People and Computers X: Proceedings of HCI’95, Hudders-Field (Cambridge programme on human-computer interaction). Cambridge: Cambridge University Press.
Chao, P.-Y. (2016). Exploring students’ computational practice, design and performance of problem-solving through a visual programming environment. Computers & Education, 95, 202–215.
Cooper, S., Dann, W., & Pausch, R. (2000). Alice. A 3-D tool for introductory programming concepts. Journal of Computing Sciences in Colleges, 15(5), 107–116.
Hils, D. D. (1993). A visual programming language for visualization of scientific data. Urbana: University of Illinois at Urbana-Champaign.
Hubbard, M. (1990). Constructive solid geometry for triangulated polyhedra. Department of Computer Science, Brown University, Providence, Rhode Island 02912, CS-90-07.
ISO 10303-22:1998. (1998). Industrial automation systems and integration – Product data representation and exchange – Part 22: Implementation methods: Standard data access interface. Geneva: Standard, International Organization for Standardization.
ISO 10303-23:2000. (2000). Industrial automation systems and integration – Product data representation and exchange – Part 23: Implementation methods: C++ language binding to the standard data access interface. Geneva: Standard, International Organization for Standardization.
ISO 10303-42:2014. (2014). Industrial automation systems and integration – Product data representation and exchange – Part 42: Integrated generic resource: Geometric and topological representation. Geneva: Standard, International Organization for Standardization.
ISO 10303-21:2016-03. (2016). Industrial automation systems and integration – Product data representation and exchange – Part 21: Implementation methods: Clear text encoding of the exchange structure. Geneva: Standard, International Organization for Standardization.
Kurihara, A., Sasaki, A., Wakita, K., & Hosobe, H. (2015). A programming environment for visual block-based domain-specific languages. Procedia Computer Science, 62, 287–296.
Laidlaw, D., Trumbore, B., & Hughes, J. (1986). Constructive solid geometry for polyhedral objects. In Proceedings of SIGGRAPH’86, Computer Graphics, 2. New York: ACM.
Shu, N. C. (1988). Visual programming. New York: Van Nostrand Reinhold.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer International Publishing AG, part of Springer Nature
About this chapter
Cite this chapter
Amann, J., Preidel, C., Tauscher, E., Borrmann, A. (2018). BIM Programming. In: Borrmann, A., König, M., Koch, C., Beetz, J. (eds) Building Information Modeling. Springer, Cham. https://doi.org/10.1007/978-3-319-92862-3_12
Download citation
DOI: https://doi.org/10.1007/978-3-319-92862-3_12
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-92861-6
Online ISBN: 978-3-319-92862-3
eBook Packages: Computer ScienceComputer Science (R0)