VIEWS: 4 PAGES: 10 CATEGORY: Business POSTED ON: 9/20/2009
Property Link Model: Managing Relationships Between Parts of Architectural Plans Extending the Standard CAAD Data Structure Kovács András 1. EARLIER APPROACHES ................................................................................................................................................. 2 1.1. DEVELOPMENT OF COMPUTER AIDED ARCHITECTURAL DESIGN........................................................................................... 2 1.2. CONSTRAINT-BASED SYSTEMS ........................................................................................................................................... 2 1.3. EXTENDING THE STANDARD CAAD DATA STRUCTURE ...................................................................................................... 3 2. CONNECTIONS AND INTERACTION BETWEEN FIELDS OF GEOMETRIC DATABASES .............................. 3 2.1. THE STANDARD CAAD DATA STRUCTURES ....................................................................................................................... 3 2.2. CONSTRAINTS ................................................................................................................................................................... 3 2.3. CONNECTION BETWEEN STANDARD CAAD OBJECTS .......................................................................................................... 4 3. THE PROPERTY LINK MODEL ..................................................................................................................................... 4 3.1. PROPERTY LINKS .............................................................................................................................................................. 4 3.2. DERIVED PROPERTIES ........................................................................................................................................................ 5 3.2.1. Alternative data structures ....................................................................................................................................... 6 3.2.2. Dependencies............................................................................................................................................................ 6 3.2.3. Setting a new value................................................................................................................................................... 6 3.2.4. Read-only properties ................................................................................................................................................ 6 3.2.5. Object coordinate system (OCS) .............................................................................................................................. 7 3.3. APPLYING CHANGES .......................................................................................................................................................... 7 3.3.1. Not mutually dependent properties........................................................................................................................... 7 3.3.2. Returned link sequences ........................................................................................................................................... 8 3.3.3. Mapping the modification graph .............................................................................................................................. 8 3.3.4. Processes following the modification cycle .............................................................................................................. 9 3.3.5. Handling temporary states ....................................................................................................................................... 9 3.4. BI-DIRECTIONAL CONNECTION TO NUMERIC DATABASES .................................................................................................... 9 4. POTENTIAL APPLICATIONS ......................................................................................................................................... 9 5. REFERENCES ................................................................................................................................................................... 10 1 CAAD softwares used nowadays can be divided into This paper discusses the connections and two groups depending on how they store and interactions among CAAD objects focusing on the handle geometric relationships. The majority of development of computer aided architectural design CAAD softwares form the first group: they do not and, especially, constraint-based systems. It support this possibility except for some special presents the Property Link Model, a system that cases. Connecting geometric data is carried out provides an efficient solution to manage mostly by relational databases: line and fill types, relationships between parts of architectural plans materials, library parts, blocks, relative heights. extending the standard CAAD data structure. The Occasionally connections between data fields of model introduces high-level object descriptors, the equal ranks can be found as well: dimensioning, so-called derived properties, which can be joined associative hatches (AutoCAD), relative positioning with the aid of property links. of cells (MicroStation); or some data connected with the aid of refreshing algorithms e.g., zone contours Possibilities of PLM cannot be accessed directly by (ArchiCAD). The other group consists of programs the user, only by the built-in tools, imported plug- which aspire to give the general solution of the ins or geometric descriptive languages. Plug-ins or problem. Constraint-based and process-based1 object libraries based on PLM can be developed systems can be highlighted; their common feature is which support e.g., working with a special that the structure of the system is subordinated to construction system. that issue. 1. EARLIER APPROACHES 1.2. Constraint-based systems Constraint-based CAD systems can be found in 1.1. Development of computer aided academe and on the market as well. MicroStation architectural design with the Dimension Driven Design plug-in is a general constraint-based CAD; the most known Manual drawing techniques provided solutions to all special architectural application is Revit. Geometric the drafting problems occurring in architectural constraint-based CAD system are Cabri Géomètre practice when computer aided design appeared. and SketchPad. An example for experimental CAD softwares could not compete with this set of applications is the Interactive 2D Constraint-Based tools for a long time; they still possessed some Geometric Construction System.2 important advantages: high accuracy of representation, ease of modification, data exchange Constraint-based systems are already accepted in without loss of information. In addition to other special fields (e.g., engineering), but they did technological development, the development of not spread in architectural planning. Since a architectural drafting began in consequence of the constraint-based system is efficient if the planning new possibilities of CAD, as well. proceeds according to a well-defined rule set, each possible variation needs to suit its requirements. Elements of traditional drawings only include simple Architectural design is not like this, especially when geometric data, the interpretation of the plan is it comes to aesthetic and conceptional planning: necessary to gain further information which makes rules are inconceivable and far-reaching. Variations the drawing an architectural plan. The first CAD of the plan are often in the used set of rules itself: softwares did not make it possible to handle any from the point of view of a constraint-based system additional information: methods of architectural there is no common structure among these drafting remained unchanged. Introducing the 3rd variations. dimension meant the first considerable deviation from traditional drafting: 3D CAD programs To use the constraint-based model efficiently it is possesses data with which lines appearing in necessary to build up the relations among elements different views can be handled together, they are of the plan according to the real considerations of able to perform operations which require this information. Extending the CAD database with non- geometric data made it also possible to apply 1 Structure of process-based systems fundamentally differ methods which are not supported by the manual from manual techniques and softwares discussed above. drafting. They provide parametric solutions to minor problems, but they are unable to handle complex planning tasks The CAD software possesses more and more efficiently, so complete process-based applications cannot information about the plan in each step of the be found, rather they are integrated in standard CAAD systems and are used for solving partial tasks (GDL, development process. The CAD database can be AutoLisp). extended with a new type of data: the software is capable of handling and storing relationships 2 Medjdoub, 1999. between elements of the plan, so it will be able to automatically perform operations which require information about geometric or other relationships. 2 the planning process. The architect is not standard spreaded in the construction industry necessarily aware of these considerations; a called IFC4. significant part of the problem-solving ability of a skilled designer is heuristic and is based on experience.3 The number of considerations which can be consciously taken into account is related to 2. CONNECTIONS AND the capacity of the short-term memory (7±2 INTERACTION BETWEEN cognitive scheme). So the designer cannot formulate the reason for his complex decisions as FIELDS OF GEOMETRIC rules, or only with a significant additional mental effort. DATABASES Every step of architectural planning is executed on the basis of an inconceivable and far-reaching rule 2.1. The standard CAAD data set, using the constraint-based model does not structures seem to be desirable, return on the work invested is only expected in special fields such as standard Standard data structures used nowadays provide no designs. general solution to connect geometric data, joining objects and following changes is possible only in some special cases: e.g., associative dimensions Constraint-based systems have to solve design and hatches follow the movement of CAAD objects problems of modifying or enlarging the plan by which determine their geometry. Similarly joined relying on known relations. Because of the are, for instance, the ArchiCAD zone contours to undefined problem space and the need for control neighbouring walls or drawings inserted in criteria the system cannot perform this task; in the PlotMaker to a story of an ArchiCAD plan file. In field of the general architectural planning constraint- these cases a refreshing algorithm started by the based systems are not efficient. user is also necessary. They are still viable in fields where planning runs according to a well-defined rule set and suitable 2.2. Constraints control criteria are available. According to the general terminology, a constraint in a constraint-based CAD system means a 1.3. Extending the standard CAAD data geometric relationship which has to be created or structure preserved, the task of the software is to obtain and maintain the state required by these relationships. The system presented in the following works as an The constraint solver methods compute the state extension of the standard CAAD data structure, it determined by the constraints as an equation with combines the versatility and reliability of the many unknowns and generally use iterative standard CAAD softwares with the “intelligence” of algorithms. constraint-based systems. In case of well constrained models5, as many Joining to the standard data structure has several constraints are needed such that the geometric advantages. Full compatibility with standard CAAD problem has one or more (but in any case finite) systems can be reached. Since systems managing solution; this approach is suitable to solve geometric relationships between parts of plans such as equations and construction problems. If the model constraint-based systems are efficient only in special is under constrained, constraints are responsible for fields, the user has to use the possibility offered by required executing of modifications while retaining the model if they are necessary, but there is no a certain degree of freedom. When processing an need to solve all the problems within the new architectural plan, a constraint-based system works system. Thus partial compatibility and data with under constrained models. exchange with other CAD systems can be reached more easily, and developers do not need to make up for a backlog of many decades to make the software marketable. The extension of the standard CAAD data structure 4 Property links presented in the following can be is developed to be 100% compatible with the described with the IfcRelationShip class. References to derived properties can be stored in Property Sets extending the above class. 3 5 Rasmussen, 1983. Medjdoub 1999. 3 In constraint-based systems constraint solvers The problems of the direct use of constraint-based ensure that the state defined by the constraints is systems in the general architectural planning were reached, the data structure must be aligned to discussed in the first section. The difficulty of them. Constraint solvers are not efficient with large formulating the user interface of PLM is the same: number of CAAD elements and complex manual creating and managing of property links relationships, they are computationally expensive, would mean entering additional information in the handling of temporary states and errors is not model with more invested work. PLM is worked out supported. as a low-level geometric database managing tool: possibilities of PLM cannot be accessed directly by the user, only by the built-in tools or imported plug- 2.3. Connection between standard ins; geometric descriptive languages (e.g., CAAD objects Graphisoft GDL) can be also completed with functions which support creating and managing The model presented in this paper gives the general links between CAAD objects. solution of the mechanism already available in special cases in current CAAD softwares. The model is based on the standard CAAD data structure. To 3.1. Property Links maintain the determined relationships between parts of the plan, property links are introduced, The properties of the objects can be connected by which connect certain properties of objects. means of property links. Links are directed: all of Property links can perform simple value copy or them have at least one base and one target complex geometric transformations, too. property. The link object can also contain extra data fields needed for modification. Property links play a role similar to constraints in constraint-based systems, but their structure and Object Object operation differ from the constraints. They are base standalone parts of the data structure, their task is Property Property to manage relationships between CAAD objects. Property links work like references and formulas in Property Property spreadsheets: they determine properties of CAAD plan elements as a function of data coming from Property Property other elements. In this system constraint solver functions are not necessary: applying property links are initiated by modified CAAD objects, further Object Object modifications are made by the links themselves, with mapping a tree-structure. Property Property Property Property 3. THE PROPERTY LINK target MODEL Property Property The Property Link Model provides connecting A link can be direct or indirect depending on properties of CAAD objects and can be implemented whether it modifies the value of the target property in any CAAD system based on the standard data from the value or the change of the base property. structure6. In case of using direct links, the new value of the 6 A sample application can be downloaded from the site: www.arch.bme.hu/publikaciok. The program is made only in order to demonstrate the possibilities of PLM, the user interface serve for presenting the operation of the system. 4 target property depends only on the value of the 3.2. Derived properties base, indirect links consider the old values of properties to set new values7. The standard CAAD data structure can be described as follows: the plan consists of CAAD objects with geometric and other data fields according to their types. The Property Link Model introduces derived 7 properties which describe the CAAD object at a Property links implemented in the sample application: Value Copy connects all properties of the same type, one higher level. A derived property represents a quality base and one target property can be joined. When applied, determined by one or more data fields of the object. it copies the value of the base property to the target. Line There is a derived property corresponding to each Connect connects the endpoints of two straight lines while data field and complex properties determined by keeping their slopes. Polygon Clip places the endpoints of more data fields can be used, as well8. a straight line on the border of the given polygon. Base properties of Summarize have got numerical values, the From the point of view of the software structure, link adds them, and the value of the target will be equal to their sum. property links are OOP objects with no data members of their own. They have only member functions, with which the value of a property can be computed or set up. Increasing the number of derived properties does not expand the memory used to store the data of a plan and causes no decrease of performance or speed. Derived properties provide an interface to CAAD objects: property links can be joined to them, modifications started by the user must be applied through derived properties as well. Introducing some derived properties and property links makes the system flexible, and many kinds of connections between CAAD objects can be created. The set of derived properties defined for a CAAD The only indirect link implemented in the sample object does not depend on the method of storing application performs a simple change of base the actual drawing data; functions that get and set transformation. Computations in case of given types (t – the value of a derived property must be adjusted to target; b – base; X’ – new value of X): the data structure used by the CAAD software. This solution ensures the software-independence of the b' model. On the other hand, standardised property t' sets can make simple data transfers between B' B different CAD systems possible. b t B B' B' T b B b' t T' t' 8 Derived properties of the line segment object in the sample application: - Integer, real: t' = t - b + b' - Point with 3 coordinates: t' = t - b + b' - OCS, Origo, Direction (global geometric properties) - Direction (3x3 matrix): T' = B-1 B' T - ID, Color, Layer (not geometric properties) - Coordinate system (a direction and a point): - PointA, PointB (Structure #1) T' = B-1 B' T - Slope, LineEndA, LineEndB (Structure #2) t' = B-1 B' (t - b) + b' - Length (read-only) 5 3.2.1. Alternative data structures Property “A” must be defined as a property depending on “B”, if the change of links connected to property “A” is expected when property “B” is modified.9 Dependence of two properties is not necessarily mutual. Properties concerning the whole CAAD object like OCS10 do not depend on any other property, but all properties of the same character depend on them. If a property is linked, properties depending on it cannot be linked any more, except for the not mutually linked ones. If property “A” Structure #1 Structure #2 depends on “B”, but “B” is independent of “A” , both links can be applied, thus “B” can be linked in this case, too. Point A Straight Point B unity vector with direction AB distance OE 3.2.3. Setting a new value End of line by point A distance EA Values of derived properties can be set in the End of line by point B following way. First the system calculates the value distance EB of the given property from one or more data field of the CAAD object. The data necessary for the inverse A line segment can be described, for example, with operation (computing the new values of data fields two data fields: the two endpoints. To link the according to the modified property) will be stored as endpoints to two other existing points, two separate well. After determining the new value of the links can be applied, the problem can be solved with property, the system modifies the data fields with linking the data fields. However, in an other case the aid of the stored additional data.11 the following relations may also be required: let the line be parallel to another one; let the endpoints of 3.2.4. Read-only properties the line segment be defined by intersection of the line with two other line segments. To satisfy the Read-only properties can be used if the modification parallel condition, the slope of the line segment of a property definitely cannot be applied to the must be modified, to perform this operation, both CAAD object. endpoints, both data fields must be accessed. To perform the modifications unambiguously, one data can be linked by only one link, so there is no possibility to apply further links to the endpoints, to place the endpoints to the intersections is no longer possible. The problem could be solved if the 9 geometry of the line segment were stored as a Dependencies of derived properties of the line segment straight and two distances on the line; in this case object in the sample application: both links could be applied, but linking the two endpoints independently would not be possible. - OCS: Origo, Direction - Origo, Direction: OCS Introducing derived properties can be used to solve - ID, Color, Layer: nothing problems like this: the actual storing of the data and - PointA: OCS, Origo, Direction, Slope, LineEndA linking certain properties of an object must be - PointB: OCS, Origo, Direction, Slope, LineEndB handled separately. - Slope: OCS, Origo, Direction, PointA, PointB - LineEndA, LineEndB: OCS, Origo, Direction, PointA, PointB, Slope 3.2.2. Dependencies - Length: OCS, Origo, Direction, PointA, PointB, Slope, LineEndA, LineEndB To determine the value of a derived property more than one data field of the CAAD object may be 10 See also the section Object Coordinate System required. If more properties refer to a data field, these properties cannot be controlled 11 To shift a line segment perpendicularly to itself, the independently. When formulating the property set Slope property must be modified. Before the modification of a CAAD object, the dependencies of derived the position of the endpoint on the straight line must be properties must be exactly specified. Dependencies stored. According to the new value of the Slope property play a significant role in applying property links. and the stored endpoint positions the modified line segment can be built up. 6 Reports (e.g., Area list, Element list) can use read- be developed according to technical considerations. only properties (e.g., area or length); these OCS can be defined e.g. on the basis of the points properties can be used as geometric or numerical of an object, in this case the necessary number of data. Some geometric property such as the centre points are more than the number of dimensions12. of gravity can be defined as read-only as well. If the position of the OCS is defined for the user or the OCS property has an own data field, parts of the 3.2.5. Object coordinate system (OCS) OCS (e.g. only the direction of coordinate axes) can In case of modifying or linking the position of an be accessed: the direction property can be linked. object, the Object Coordinate System property must be used. Changing the OCS property applies an congruency transformation to the CAAD object. 3.3. Applying changes Shifting all points of an object or only the OCS If the system receives a message initiating the property are not equivalent: each geometric modification of a property, and this property is the property depend on the OCS but the OCS does not base of a link, applying of the property link begins: depend on any of them, so if the OCS is the base of the targets of the link must follow the changes of a link, the link will not be applied when the points the base properties: are shifted one by one. 1. If the link is indirect, it stores data derived Since the values of derived properties will be from original values of base properties. calculated before all changes, the result of a congruency transformation applied to a CAAD object 2. After that it gives back the control to the does not depend on the interpretation (way of derived property, which will be changed. computing from the data fields) of the OCS. 3. Finally the property link determines the If a polygon does not have a distinguished point, new values of target properties and starts the origin of the OCS can be attached to corner No. the modification of target properties. In 1. This information will not be accessed by the user, case of using direct links, the new value of only by the software. In case of rotating the object, the target property depends only on the the model performs the following steps: 1 - the value of the base; indirect links consider value of the OCS property is computed according to the old values of properties to set new the previous correspondence, 2 – the OCS-relative values. coordinates of each corner are calculated, 3 - applies the transformation to the OCS property, 4 – based on the data computed in the step 2 the During the modification process all properties rotated polygon will be built in the new OCS. depending on the originally changed property are qualified as modified, too, and property links attached to them are applied. 1. 3.3.1. Not mutually dependent properties 2. The properties of a polygon object are A (a corner) and OCS (the Object Coordinate System), property A depends on property OCS, but OCS does not 3. depend on A. Either property can be the target of a link. When applying the link joined to A, only A will be modified, OCS remains unchanged. When applying the link joined to OCS, however, the link 4. 12 In the sample applications the OCS properties of some objects are under-defined: the line segment and the objects derived from it define the OCS on the basis of the two endpoints, these objects do not respond properly to If the OCS were fixed to the second corner, the some transformations e.g., the mirroring to the plane perpendicular to the XY plane. The problem can be solved result would be the same: there is no need to only with adding a new data field, however to do this, it is reserve an own data field for the OCS property, the necessary to modify the data structure of the frame CAAD method which calculates the value of the OCS can system. 7 joined to OCS modifies both A and OCS properties, 1. according to the algorithm outlined above. The link M Link connected to A remains ineffective, although the Property Property model is expected to change property A according Link to the link joined to it. 2. 1. 2. M Link M A A Property Property Link 3. M Link M Property Property Link 3.3.3. Mapping the modification graph To ensure the appropriate behaviour of not mutually dependent properties, the above link application In case of property links with more base properties algorithm must be augmented with the following: it can happen that two base properties change in a modification cycle. The algorithm which handles 1. If there are links joined to the above A returning link sequences marks the target property property, the original values of the base when a first applying request is performed, it cannot properties must be stored. be modified by the second request any more. 2. After changing the value of the OCS, a new To get rid of these error possibilities, the current value must also be assigned to A according modification graph is mapped before all modification to the link joined to it. Links which are cycles. Mapping means that the properties send connected to the properties modified application requests to the links, while the links during the above operation can be applied send modification request to properties as during only after this. the real modification cycle, but the values of the target properties will not be set, each property link stores the number of incoming modification 3.3.2. Returned link sequences requests instead. If the sequence of links forms a returning loop, the After mapping the modification graph the real recursive link application algorithm arrives at infinite modification cycle begins. Knowing the number of cycle. This case can occur both due to link errors application requests, property links can wait for the and when representing existent geometric last one, and modify the target properties after that. relationships; the efficiency of the system would be reduced if the creation of returning link sequences Indirect links store the values of the base properties were prohibited. when the first application request came in. One of the simplest cases is when two properties are linked to each other. The system is expected to Property Property modify either property according to the change of 1. 2. the other. Link The system provides the following solution: in a 1. 2. M modification cycle the link application algorithm Property marks the properties already changed, so if such mapping property is found later as the target of another property link, the property will not be changed. Property Property 1. 2. Link 2. modification Property 8 3.3.4. Processes following the modification separately: stores them on a custom layer, draws cycle them with a different line type, etc. The invalid status exists as long as the geometric structure During the performing of the modification cycle the remains faulty (the invalidating message is not relationships of objects, properties and links must cancelled by the sender). be equal to the structure previously mapped, hence changes which modify this structure are not allowed. After a modification cycle, it is possible to 3.4. Bi-directional connection to create or delete links or to start a new modification numeric databases cycle, during the performing of the cycle the system only notes the necessary modifications13. With the aid of PLM direct connection can be created and managed between the geometric model 3.3.5. Handling temporary states and external numeric databases, data can be both exported e.g., for reports and imported e.g., from In the modification cycle, error checking is expert systems. The interface is a special CAAD performed before a derived property will be object which represents the external database, changed. If the new value of the property is not derived properties of this object represent its compatible with a valid geometric (or other) records. With property links attached to it, any situation, the property will not be changed, links CAAD object can be influenced. which have this property as a base will not be applied, but the connection between properties and link remains. After a new transformation the property may get an acceptable value, in such a case the property will be modified and the links attached to it will be applied again. If an error occurs in modifying a property, there is an opportunity to invalidate the object. A property link or another object, depending on where the error happened, can send an invalidating message14. The system handles invalid objects 13 If the Multiply object of the sample application is 4. POTENTIAL APPLICATIONS expanded and a new handle comes into existence, the Multiply object creates a new object by copying the The more information a virtual model contains, the existent object attached to the first or last handle and more work is needed to create it. The model connects the new object to the new handle with the aid of created with a lot of work and professional expertise a new Simple link. During the operation new objects and property links come into being, these modifications cannot must be used by enough people in the potential be carried out in the course of the modification cycle, the target fields to recover the investment. The world of Multiply object only indicates that a task remains to be construction systems can be such a special field: the performed. After the modification cycle the object gets the construction of structures is processed according to control back; it creates the objects and the links and starts a new modification cycle, if necessary. handles. Invalidating message can be sent by the Polgon Clip link, as well, if the line segment attached to it does not intersect the base polygon. 14 E.g., invalidating message can be sent by the Multiply object to the object attached to its handle if it can not place the object because of the decrease in the number of 9 a well defined and mathematically describable rule ISBN 1-880250-06-3] Cincinatti, Ohio set. (USA) 3-5 October 1997, pp. 251-264 To adopt a complete construction system, product 4. Medjdoub, Benachir: Interactive 2D catalogues stored in electronic format have no more Constraint-Based Geometric advantage than a database of independent structure Construction System – 1999 – parts. To help the user of a CAAD system with Proceedings of the Eighth International adopting a special construction system, the data of Conference on ComputerAided individual elements and construction methods, Architectural Design Futures [ISBN 0-7923- which are also important parts of the system, must 8536-5] Atlanta, 7-8 June 1999, pp. 197- be integrated. In order to utilise the possibilities of 212 PLM, efficient plug-ins and object libraries can be created for special construction systems. 5. Tobin, Kenneth L. : Constraint-Based Three-Dimensional Modeling as a The suggested structure of a CAAD plug-in Design Tool – 1991 – Reality and Virtual supporting the construction systems is hierarchical. Reality [ACADIA Conference Proceedings / From the large units towards the smallest more ISBN 1-880250-00-4] Los Angeles detailed levels can be distinguished15, this (California - USA) October 1991, pp. 193- corresponds to processing architectural plans. An 209 element of a construction system includes geometric, technological, structural data and the 6. Rassmussen, J. 1983, Skills, Rules, constructing methods as well, with which the and Knowledge; Signals, Signs, and objects of the next level can be created and placed. Symbols, and Other Distinctions in Human Elements are attached to the objects on the Performance Models. IEEE Transactions on previous level with property links, so the user can Systems, Man, and Cybernetics, Vol. Smc- intervene in any level to reach the final state. The 13, No. 3, May/June. system can produce plans detailed at any level. The above mechanism can be completed with a 3D database which stores the space reservations of objects, so the construction methods integrated in the elements of the construction systems can take holes, intersections, and available space into consideration. 5. REFERENCES 1. Oksala , T.: Logical Models for Rule- based CAAD – 1988 – CAAD futures ‘87 [Conference Proceedings / ISBN 0-444- 42916-6] Eindhoven (The Netherlands), 20-22 May 1987, pp. 107-116 2. Gougoudilis, Vasileios: Hyperwalls or an Application of a Non-deterministic Rule-based System in Interactive Architectural Modelling – 1995 – Sixth International Conference on Computer- Aided Architectural Design Futures [ISBN 9971-62-423-0] Singapore, 24-26 September 1995, pp. 173-179 3. Seebohm, Thomas and Wallace, William: Rule - Based Representation Of Design In Architectural Practice – 1997 – Design and Representation [ACADIA ‘97 Conference Proceedings / 15 e.g. slab beams 10