Procedural Modeling in Archaeology: Approximating Ionic Style Columns for Games Richard Konečný Stella Syllaiou Fotis Liarokapis Utrecht University Utrecht, Netherlands [email protected] Hellenic Open University Patra, Greece [email protected] Masaryk University Brno, Czech Republic [email protected] Abstract— This paper demonstrates how procedural modeling and computer graphics techniques can be combined for creating fast, accurate and realistic modeling of archaeological parts of buildings which can be used for games and virtual environments. As a case study the Ionic order of Greek and Roman temples is examined. In particular, the temple of Portunus in Rome, Italy was used as a case study. A set of geometric algorithms for computing shape points based on curved surfaces are presented, which allows creating the majority of Ionic temples. Evaluation of the results is performed based on the Hausdorff and Fréchet distances and results indicate that the proposed method provides a very good approximation for generating accurate Ionic order temples. However, ornaments that usually decorate the column capital have not been taken into account in this paper. Keywords – procedural modeling, geometric algorithms, computer games, cultural heritage. I. INTRODUCTION Computer visualisation of archaeological sites and remains provide valuable information about the past and have a wide application to several areas, such as archaeology, architecture, restoration, conservation, cultural tourism, creative industries, etc. A major target in virtual archeology is to recreate large and complex ancient areas. This is not an easy task mainly due to large resources and execution time required [1]. Real-time visualisation of cultural heritage has become an interesting and useful tool for demonstration, as well as for research and educational purposes [2] and in particular for the computer games industry. However, various issues mainly related to accuracy and precision come along with the attempt to create a visualisation of a particular architectural order. On the one hand, not every structure has been preserved in a satisfying condition. Many parts of the archaeological remains have been either destroyed or significantly damaged and no evidence about their original state has been preserved. Therefore, one cannot be certain about how these used to look like in the past. This uncertainty poses a problem for people trying to reconstruct and visualize ancient buildings to their original condition [3], since -in most of the cases- the archaeologists can be certain only for the existing parts of the buildings. On the other hand, visualizing specific details of the high-quality archaeological models of the Roman and Greek architecture contains a lot of very detailed artistic elements and decorations. Thus, to create a realistic virtual city, a lot of details need to be taken into account. A third issue concerns the evolvement of the buildings over time. Most of the historic buildings change over time, whereas a digital model captures only one point of their history. The different building and reconstruction phases are under continuous reading, endless renegotiation and open interpretation. Therefore, the reconstruction technologies must permit and be adaptable to modification and interrogation of multiple iterations of a digital model [4]. Manual modeling a certain part of a Roman or Greek temple with high level of detail requires large amount of artwork and takes certain time to do. This is crucial for the gaming industry since a significant amount of money is spent on content creation. Manual modeling may be also misleading for the following purposes. Public may take very convincing reconstructions of parts, which are based only on one’s estimate or even only on one’s guess, as authentic reconstructions. Time required for defining rule sets is constant and therefore, it is also faster and more efficient method for larger scenes with larger number of models, which are needed to be created [5]. An attempt to solve both these problems on specific buildings by using procedural generation methods and techniques for games and virtual environments is presented in this paper. In particular, the paper is focused on the accurate approximation of Greek and Roman Ionic order columns based on a set of geometric algorithms for computing shape points. The rest elements of the temple, such as ornaments, that usually decorate the column capital, were not taken into consideration. In the next sections, the set of geometric parameters implemented will be introduced and described in detail. The parametric shape grammar has been developed with the purpose to demonstrate flexibility and simplicity of column procedural modeling and to prove the benefit of procedural generation for creation of Roman and Greek temples. It consists of the following components: the base generator, the shaft generator and the capital generator. Each of these parts works with several various parameters to provide enough flexibility to applications requiring high architectural accuracy. Evaluation of the resulted columns is performed based on the Hausdorff and Fréchet distances and results indicate that the proposed method is very accurate (more than 98% accuracy). 978-1-5090-2722-4/16/$31.00 ©2016 IEEE The rest of the paper is structured as follows. Section II presents background work and section III the main architectural principles of temples. Sections IV, V and VI present the generation of the column. Section VII illustrates how the rest of the temple was generated and measures the generated error of the columns. Finally, section VIII presents conclusions and future work. II. BACKGROUND Procedural modeling techniques for urban environments are usually based on three issues including the well-known L-systems [6], [7], shape grammars [8], [9], [10], as well as stack-based languages [11], [12]. A recent survey paper for procedural modeling techniques for virtual worlds has been recently published [13]. Previously, a number of algorithms and techniques have been used to procedurally generate cities. Researchers used the ‘CityEngine’ [7] to procedurally generate both residential buildings and temples on the basis of architectural principles. In terms of building reconstruction, Wonka et al. presented a new method for the automatic modeling of architecture using split grammars [9]. An attribute matching system and a separate control grammar, which offers the flexibility required to model buildings using a large variety of different orders and design ideas was also introduced. A few years later, a novel shape grammar for the procedural modeling of computer graphics architecture was proposed [10]. First, the grammar generates procedural variations of the building mass model using volumetric shapes and then proceeds to create facade detail consistent with the mass model. Context sensitive rules ensured that entities like windows or doors do not intersect with other walls. Van Gool et al. [14] presented an approach of creating a realistic 3D representation of Antonine nymphaeum (temple) at the Sagalassos based on various techniques such as: photogrammetry; advanced lighting and post-processing scans to improve the final model. A procedural approach for fast Chinese ancient architecture modeling based on a set of rules has also been researched [15]. The primary features of buildings were parameterized to control the modeling process and more than one hundred different buildings have been generated by a rule set comprising of about 120 rules. Another study presented procedural interactive modeling tools for creating medieval castles [16]. Special emphasis was laid on creating generic modeling tools that increase the usability with a unified 3D user interface, by combining the Generative Modeling Language (GML) and the OpenSG scene graph engine. Architectural shape grammars were also used to procedurally generate 3D reconstructions of Puuc-style buildings found in Xkipché, Mexico [17]. To reconstruct the whole site various input data was used including: building footprints, architectural information, and elevation models. Moreover, the first version of “Rome Reborn” [18] presented an initiative of virtual reconstruction of ancient Rome city allowing the large physical model to be scanned first and then the rest of the objects to be manually created. An improved version called “Rome Reborn 2.0” [19] was based on both manual and procedural modeling methods. Manual modeling was used for objects, which parameters and characteristics are well-known by archaeologists, while procedural modeling covered elements, which are known with lower accuracy, to keep high level of detail for these elements. In another study, an efficient way to visualize cultural heritage despite uncertainty about credibility of objects that do not longer exist was proposed [4]. This uncertainty comes from the fact, that some of the historical buildings have not been preserved in the original condition because they have been either destroyed or damaged so much, that one cannot be sure about how these looked like before. Omission of uncertain parts was described as even worse practice than estimation. A similar approach was followed [1] to recreate virtual cities based on automatic procedures that make use of randomness for variety and credibility. Another approach was based on the case study of Doric temple [20]. Finally, another study [21] described several rules needed for creation of a shape grammar for classical Roman buildings. These rules were inspired by Vitruvius’ architectural rules described in his books and they included rules for columns, temple steps, temple bases and cellae. However, most of the approaches presented in this section did not focus on fine detail. Also, to our knowledge none of them tried to measure the error (or how accurate) the final outcome was compared to the real representation. In the following section, the main principles of Ionic temples, as well as the architecture of the proposed technique, are illustrated. III. BASIC PRINCIPLES Architecture played a major role in ancient Rome. Roman architecture has developed many aspects of the ancient Greek architecture. Roads, bridges and aqueducts provided communication network and supply routes across the empire, city walls protected inhabitants of cities, which served as administrative centres and also symbolized the Roman power. In the past, Roman temples served political and religious purposes, which were closely connected to the Roman world. Cults celebrated outside played very important role for the community and public life. Temples were especially significant to emperors because they represented a testament of their commitment to the conventional customs and indicated the empire membership. Roman temples have several distinctive components like raised podium, staircase in the front and columns arranged along the sides. The architecture of ancient Greece has determined the future form of most subsequent European art [22] and influenced building styles until today. It is best known from its temples, structures specifically designed for serving and the worship of the deities [23]. The history and development of Greek sanctuaries and temples reflects the development of Greek society [24]. The temples were used by the city-states to worship and honour the Gods, to display the power and glorify the city-states, to embellish their sanctuaries [25]. Greek architects made use of the principles of proportion, or otherwise called ‘dynamic symmetry’ [26]. Several attempts to explain the harmony of proportions has been made [27]. Vitruvius has analysed issues concerning the symmetry, the classification, and the proportions of temples [27], [28]. The ancient Greek temples have been adapted to the natural relief, conceived as a sculptural entity within the landscape, most often raised on high ground so that the elegance of its proportions and the effects of light on its surfaces might be viewed from all angles [29]. The entrance to the temple was usually from the east side of the building. The rectangular temple is the most common form of ancient Greek public architecture. The temple was conformed to an architectural order, a set of principles and rules that define in different ways the symmetry and harmony. Ancient Greek architecture is divided in three distinct architectural systems or ‘orders’: the Doric order, the Ionic order and the Corinthian order that ‘was produced out of the other two orders’. The architectural orders describe the style of a building. The most obvious difference was their columns’ capitals. Initially, the temples were smaller in size and their columns are made mostly of wood and mud-bricks. From the 6th century B.C. most of the temples became more ‘monumental’, were increased in size and made of durable materials, usually of local stone, like soft limestone (poros), or marble. The changes in Greek temples were not connected to changes in cult practices, ‘but rather a decision to monumentalise’ [24]. For the upper parts of the temple the ancient Greeks used mudbrick and timber. It is worth mentioning, that some of the wooden forms of the first temples have influenced the Greek stone temples. At the end of the 7th century there is a typical ground plan [25]. The Doric order is probably originated between 1200 and 1000 BC [30]. The Doric column evolved from the earlier wooden pillars into column in stone. They had a capital made of a circle and topped by a square. The column shaft was slightly tapered, vertically fluted, and usually thinner at its top. There was no column base and they usually rest directly on the stylobate. On the capital there is the entablature made of three parts: the architrave, the frieze, and the cornice. Above the column there was the frieze. The entablature frieze carried alternating series of metopes and triglyphs. The Ionic order has its origins in the area of Asia Minor in the 6th century BC. It is defined by its column type [30]. In Ionic architectural order the shafts were taller and slimmer than the Doric ones. The bases support the columns have vertical flutes. The abacus is narrow. The Ionic entablature usually consists of three simple horizontal bands often carries a frieze with richly carved sculpture arranged in a continuous pattern around the building. Ionic temples were more delicate than the Doric ones and not as elaborated as the Corinthian ones. The third order of the Greek architecture was the Corinthian and has some similarities to the Ionic order. It was developed in Athens in the 5th century BC and it was quite common in the Hellenistic and the Roman period. COLUMN SHAFT GENERATION IV. The shaft generator creates a column shaft based on the following 9 parameters as illustrated in Table 1. ID $a Name Shaft height $b Channel height $c Shaft top radius Shaft bottom radius Channels count Channel angle $d $e $f arc $g Channel deep $h Channel slices count $i Channel slices per one fillet slice Description Height of the column shaft without the height of channel arcs (Figure 1 - A) Height of channel arcs at the top and bottom of the columns shaft expressed as a ratio of the height to the radius of a channel (Figure 1 - A) Radius of the circle at the top of the column shaft (Figure 1 - B) Radius of the circle at the bottom of the column shaft (Figure 1 - B) Number of channels in the column shaft (Figure 1 - C) Central angle that delimits the diameter of a channel ellipse parallel to a tangent line of the circular cross-section (Figure 1 - C) Diameter of a channel ellipse perpendicular to a tangent line of the circular cross-section defined by the ratio of the diameter d1 to the diameter d2 (Figure 1 - C) Number of vertical slices which constitute one channel. This value also defines the number of horizontal rows used in every channel arc and controls the number of polygons (Figure 1 - D) Number of channel slices needed for one fillet slice (Figure 1 - D). Table 1 Parameters for the column shaft All the components of the column shaft are also presented in Figure 1. The algorithm provides a simple way to create a custom triangulation of a surface area between two sets of vertices. It has been used to generate the correct triangulation between sets of vertices representing certain levels in the column shaft and uses the following parameters. Two arrays of vertices, the direction parameter, the “isClosed” parameter and the sequence parameter. Each array represents a set of vertices lying on the edges of a surface area to be triangulated. These arrays contain at least one vertex and don't contain the same vertices. Figure 1 Column shaft generation The “isClosed” parameter can also be applied to arrays of vertices, where the last vertex is connected to the first one and defines whether the surface area is either “closed” or “unclosed”. Triangulation of such geometric figures can be visualized using “closed rings”. The sequence parameter represents a way of triangle distribution between two arrays of vertices. Each number in the sequence parameter represents a number of connections of a particular node with nodes from the other array. The order of numbers in the sequence is determined by visiting nodes along their most-right connections until they reach the first node or a node with only one connection. Moreover, the variables $h and $i that allow for dynamic level of detail make the solution more interesting for the real-time applications. V. COLUMN BASE GENERATION Bases of columns in the Ionic (and Doric) order usually consist of set of several cylinders and torus. For the purpose of this paper, these parts will be called floors. Each floor is defined by 4 parameters: the bottom radius, the top radius, the height and the curvature. The curvature may be equal either 1 for a convex edge curve, or -1 for a concave edge curve (Figure 2 - A). The grammar constructs floors one on the top of the previous one according to series of modules specified by user. Parameters Module Example Representation r ∈ ℝ, h ∈ ℝ, c ∈ {1,-1} M(r1, h1, c1, r2, h2, c2, … , rn, hn, cn, rn+1) G = M(0, 0.1, -1, 0.1), M(0.1, 0.1, 1, 0.2, 0.1, 1, 0.1) Table 2 Parametric shape grammar structure for column base The “r” parameter represents an addition to the bottom radius of the shaft ($d), the “h” parameter represents the height of a floor and the “c” parameter represents a floor curvature. In comparison to L-systems, this approach does not work recursively but the series of modules is pre-defined. One module may contain any number of floors (but at least one), in which case vertices of their adjacent bases are welded together (Figure 2 B). For better clarity, the actual structure used in the code is slightly different: instead of modules, only module parameter lists separated by a comma are used; parameters are separated by a space and one of three indicators (R, H, C) is inserted before each parameter to indicate its meaning. For instance, the above mentioned example (Figure 2 - Ca) would be written as: G1 = “R0 H0.1 C-1 R0.1, R0.1 H0.1 C1 R0.2 H0.1 C1 R0.1”. An alternative way which provides much more detail (Figure 2 - Cb) is: G2 = “R0.12 H0.12 C1 R0.12, R0.12 H0 C1 R0.074,R0.074 H0.046 C1 R0.12 H0.046 C1 R0.074, R0.074 H0.015 C1 R0.074, R0.074 H0.027 C-1 R0.026 H0.018 C-1 R0.044, R0.044 H0.015 C1 R0.044, R0.044 H0.038 C1 R0.082 H0.038 C1 R0.044, R0.044 H0.030 C1 R0.044, R0.044 H0.053 C-1 R0”. Figure 2 Column base generation (A) column base subdivided into floors, a is convex and b is concave curvatures (B) column base subdivided into modules (Ca) output using G1 (Cb) output using G2 Although the above method produces curved shapes; these are limited only to circle or ellipse segments. To avoid this, curved surfaces were used since they provide additional flexibility but also produce more accurate results. Bézier curve is a parametric curve described by polynomials based on control points and was first introduced by Pierre Bézier and Paul de Casteljau [31], [32]. Bézier curves provide only pseudo-local control, which means that any change of the control point position moves every single vertex in the curve in the same direction [33]. The basic concept of creation of the column base by constructing one floor above each other remains unchanged, although there is not any difference between a floor and a module because each module symbolises exactly one floor. The parametric equation with Bernstein basis polynomial has been used to calculate the positions of vertices lying on the curve: Bin (t ) = n! t i (1 − t ) n−i where ϵ [0, 1] i!( n − i )! (1) Parametric equation: n n i =0 i =0 x(t ) = xi Bin (t ) and y (t ) = yi Bin (t ) (2) The parametric shape grammar structure is illustrated in Table 3. The “r” and “h” parameters have similar meanings like in the first version, but they refer to the control points of a Bézier curve instead of the edges of tori: In the sectional view of the column, with the origin located at the point, where the distance from the column central axis is equal to the shaft bottom radius and the height of the current floor is equal to 0, the “r” parameter represents a coordinate on the horizontal axis pointing out of the column centre and the “h” parameter represents a coordinate on the vertical axis pointing upwards. Representation r ∈ ℝ, h ∈ ℝ, c ∈ {1}∨ c ∈ ∅ M(r1, h1, r2, h2, … , rn, hn, c) G = M(1,0,2,0,2,1,1,1), M(1,0,1,1,1) same column base. The half-transparent generated column bases are placed over the template. Table 3 Parametric shape grammar structure based on Bezier curves for column base The main part of the capital creation is the generation of a spiral. There are several spiral sorts that have been considered for this purpose. The Archimedes' spiral is a special case of an Archimedean spiral and is defined by equation r = a + bθ(1/n), where r and θ represent polar coordinates and a, b ∈ R are parameters controlling its orientation and the distance between turnings respectively; and n is a constant which determines how tightly the spiral is wrapped. The Archimedes’ spiral is an Archimedean spiral, where n=1, and thus r = a + bθ. The distance between its successive turnings is considered constant. Euler spiral is a curve whose curvature changes linearly with its curve length. Fermat's spiral is another type of an Archimedean spiral with n = 2, described as: r = a + bθ(1/2) in polar coordinates. The hyperbolic spiral (also called the inverse spiral) belongs to the group of Archimedean spirals too, in this case n = -1, and therefore the hyperbolic spiral is defined by the following equation: r = a + b/θ. The lituus is an Archimedean spiral with n = -2, and thus its polar equation is given by r = a + bθ(-1/2). The logarithmic spiral is described by the following polar equation r = a + becθ, where r and θ represent polar coordinates and a, b, c ∈ R are parameters. For the capital generation, the logarithmic spiral was defined as: r = a/( becθ) - d, where a, c, d ∈ R, b ∈ R - {0} are parameters controllable by the user, because it is most similar to the capital volute from the above mentioned spiral types. The following parametric equation was used to calculate positions of the vertices in the outer spiral. The inner spiral was created using the same equation with the radius reduced by the spiral thickness. Parameters Module Example The “c” parameter may be either omitted, or be present at the end of a module. The first row of vertices in a module will be skipped and the next row will be connected to the last row of the previous module (it does not take any effect when it is set in the first module). This provides a choice to set the vertex normals in a different way to avoid an effect of the sharp angle between two modules (Figure 3). Figure 3 a) the “c” parameter omitted b) the “c” parameter present The actual structure, which the parametric shape grammar works with, is slightly adapted in the second version too, but it follows the same rules and principles as in the first version. The number of control points per module is not limited unless there are at least two of them. Unlimited number of control points allows the user to define very specific and highly accurate curve shapes. If a module is defined by only two control points, the generated curve is a straight line and thus, in order to minimize the number of polygons, only two rows of vertices are created regardless of the required number of slices. In summary, both versions construct the base using several levels (or floors) of adapted tori. However, the difference is in the way how the edge of a torus, visible from a side view, is calculated. The first version of parametric shape grammar for the base generation is able to create tori, which edges are circular or ellipse segments. Although, it is not possible to generate these exactly using the second version, but these can be sufficiently approximated. Furthermore, the second version provides incomparably better control over the curve shape of a torus edge. VI. x(ϑ ) = R( a a − d ) cos(θ ) , y (ϑ ) = R( cθ − d ) sin(θ ) (3) be becθ Moreover, the capital volute is also defined by the other nine adjustable parameters, as shown in Table 4. Parameters Start angle Thickness Min Thickness Increasing max Spiral circuits Figure 4 A column base constructed using: a) the first b) the second version, c) shows the positions of the control points of a Bézier curve Figure 4 illustrates a comparison between both versions. Each version has been used to generate the COLUMN CAPITAL GENERATION Capital circle radius Capital spiral radius Offset X Offset Y Description the lower limit of the angle θ in degrees the thickness of a spiral, or reduction of the radius used for calculation of the inner spiral the thickness of a spiral may also be linearly increasing, in such a case, this value determines its lower limit the angle in degrees at which the incensement reaches the upper limit of the thickness (which is equal to the Thickness parameter) the upper limit of the angle θ, the first circuit has a value of 2.5π and every next one increases the limit by 2π (for example: 1 circuit=2.5π, 2 circuits=4.5π, 3 circuits=6.5π etc.) the radius of the circle in the middle of spiral the radius used in parametric equations (the R value) the horizontal distance between the circle and the spiral origins the vertical distance between the circle and the spiral origins Table 4 Capital column parameters The other five parameters (Figure 5) control general properties of the capital including: the length of the capital, the width of the capital, the length of the spiral margin, the vertical position of the spiral scrolls relative to the rest of capital and the vertical position of the capital relative to the rest of the column. the second with the maximum x, y and z co-ordinates. This allows the user to define all required cuboids and generate a temple in a short period of time. One exception has been included for the roof creation, where it is possible to define one extra parameter: the height difference. The third parameter is optional, but if defined, the four vertices with maximum z coordinate are shifted by the specified difference towards the direction of y axis, so inclined cuboids can be created. For example, two inclined cuboids have been used in the roof of the temple of Portunus (Figure 6). Figure 6 Temple of Portunus by Piranesi [34] Figure 5 Column capital generation a) Capital general parameters b) Capital height parameters Next, a wholly new parametric shape grammar has been developed for generation of the surface of the spiral scrolls (Figure 5 - B). The grammar (Table 5) allows the user to specify any number of rings, which should be connected and so constitute the scroll body. Alphabet Parameters Module Example1 Example2 Representation R (radius), P (position) r ∈ [0, 2], p ∈ [0, 1] (representing 0% - 200% and 0% - 100%) Rr1 Pp2 R0.7 P0.05, R0.7 P0.4, R0.8 P0.5, R0.7 P0.6, R0.7 P0.95 R0.7 P0.05, R0.6 P0.1, R0.6 P0.3, R0.7 P0.35, R0.6 P0.4, R0.6 P0.45, R0.7 P0.5, R0.6 P0.55, R0.6 P0.6, R0.7 P0.65, R0.6 P0.7, R0.6 P0.9, R0.7 P0.95 Table 5 Parametric shape grammar for the capital of the column Each module of the grammar represents a ring at a specified position with a specified radius. The radius parameter represents the percentage of the spiral total radius and the position is determined by the percentage of the length between the front and rear spirals, where 0% means the front and 100% means the rear part of a spiral scroll. In the series of modules, each position percentage should be greater than or equal to the position percentage of the previous module. VII. TEMPLE GENERATION AND EVALUATION The methodology can also be set to the mode for generation of temple. In this paper, a model of temple is generated instead of model of column. This has been created with the intention of providing a tool for generation of very simple temples, which could be used for better demonstration of generated columns. The temple generation is only able to construct a building using cuboids, which edges parallel to the scene axes. For each cuboid, the user only needs to define two vertices: the first with the minimum x, y and z values and To test the procedural output, the temple of Portunus has been chosen to be generated. The temple is in relatively good state of preservation (Figure 7) and it has been quite well documented in drawings from an Italian artist Giovanni Battista Piranesi [34]. His drawings contain detailed drafts along with proportions of particular column elements, such as capital volute, column base, shaft cross-section, temple plot, temple side views etc.; hence they provide sufficient foundation for generation. Procedural generation of the temple of Portunus and its Ionic columns was based on the following four drawings available in high resolution (cca 4500 × 6400 px) (Figure 6). Figure 7 Real temple of Portunus (left) and the procedural (right) The model of the column and the model of the temple have been generated and exported separately. Both models have been then put together in a standard modeling tool (3ds Max). The columns have been positioned appropriately and textures have been applied to all the models as shown in Figure 7. To evaluate the similarity between the generated 3D model and the original column, three most relevant parts of the column were compared to their corresponding drafts documented by Piranesi [34]. These include the column base, the capital volute and the plot of shaft (Figure 8). Two methods were used: the Hausdorff distance and the Fréchet distance. The Hausdorff distance is a measure of mismatch between two subsets of a metric space. The Fréchet distance is a measure that provides more accurate comparison of similarity of two curves than the Hausdorff distance because it also takes into account the continuity of shapes and ordering of the points [35], [36]. Figure 8 Column parts to be evaluated Since the definitions of continuous curves describing the real objects are not known and they are only to be seen on the picture, polygonal curves with a constant distance between two adjacent nodes have been created for all three drafts. The distance between two adjacent nodes was the same in all of them. The curves describing the generated 3D model have been created in the same way from screenshots. The curves created according to drafts have been then compared with the curves created according to screenshots in order to compute appropriate measurements describing a similarity between these curves. Taking into account the unique nature of these curves: high visual similarity and the special striking analogy between each two of them, the following procedures have been used to calculate particular measurements. To determine the weak Fréchet distance between two curves, a circle has been drawn around every node with such a radius that a circle touches the closest point of another curve, including points on edges between nodes. The radius of such a circle equals the shortest distance between a node and another curve, or the shortest leash a man would need to remain connected with his dog if his position was at this node. The longest radius of all these circles represents the weak Fréchet distance. This process is only applicable with very similar curves, which are approximately parallel. Although the Fréchet distance is the most suited measurement for this comparison and provides the most relevant results, to provide more details about the curve shapes, some additional measurements have also been computed. These include the Hausdorff distance, the average error and the percentages relative to the length of the curve (or the average length of the curves, in case the curve lengths are not equal). The Hausdorff distance has been determined in a similar way to Fréchet distance, but the point lying on the edges between nodes have not been taken into account during the measurement of the distance from a node to another curve. The average error has been calculated as the average of all the node-curve distances, and the percentage of a measurement equals the measured value divided by the average of two curve lengths. Figure 9 Left Image: Comparison between generated (red) and original (yellow) curves: a) column base, b) column shaft, c) capital spiral, Right Image: Circles with radii equal to node-curve distance between generated (red) and original (yellow) curves: a) column base, b) column shaft, c) capital spiral The distance between each two adjacent nodes equals approximately 7mm. Figure 9 (left image) shows a comparison between a curve describing the original object and the curve describing the generated model drawn in the same measuring scale. Figure 9 (right image) shows circles drawn to determine the weak Fréchet distance. An overview of the measured values for all three parts of the column is shown in Table 6. Number of nodes Curve length Fréchet distance Hausdorff distance Average error Fréchet dist. (%) Hausdorff dist. (%) Average error (%) Base 97 (original) + 97 (generated) 96 (original) + 96 (generated) 1.7664 (25.23 mm) 1.8257 (26.08 mm) 0.2797 (4.00 mm) 1.84% Shaft 564 (original) + 564 (generated) 563 (original) + 563 (generated) 2.3741 (33.92mm) 2.3741 (33.92mm) 0.5649 (8.07mm) 0.42% Spiral 352 (original) + 355 (generated) 351 (original) + 354 (generated) 1.2913 (18.45mm) 1.2913 (18.45mm) 0.3355 (4.79mm) 0.37% 1.90% 0.42% 0.37% 0.29% 0.10% 0.09% Table 6 Results based on the Hausdorff and Fréchet distances Results indicate the level of detail and similarity achievable using this software solution. However, these results correspond to the current settings and parameters. Therefore, they do not necessarily represent the limits of the developed software solution. Although these settings have been determined after several exhaustive adjustments with intent to get as realistic output as possible, the possibility of existence of better settings and parameters, which would result in more accurate output using this solution, cannot be excluded. VIII. CONCLUSIONS AND FUTURE WORK The aim of this research was to investigate how realistically the Roman and Greek Ionic temples can be created using procedural generation and if this method is also advantageous for generation of more detailed parts so that it can be used in games and virtual environments. The paper addressed two main problems: uncertainty coming from condition of preserved historic sites and time-consuming visualisation of details. A hybrid solution for generation of an Ionic column and a temple was developed. To determine the accuracy of the geometric algorithms implemented, a 3D model of the temple of Portunus, which contains several Ionic columns, has been generated and its similarity to the drawings of the original temple, documented by Piranesi [34], was measured. The results indicate that very high similarity between the generated 3D models and the real objects has been achieved, although the results of the evaluated parameters do not represent exactly the same level of detail. In particular, it is possible to generate Ionic columns procedurally with more than 98% accuracy; however, ornaments that usually decorate the column capital have not been taken into account in this study. In the future, emphasis will be given on other parts of the temple for example ornaments that were not modeled in this work. Also, real columns will be laser scanned and the produced procedural columns will be compared with the digitised models. REFERENCES [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] S. Pescarin, E. Pietroni, and D. Ferdani, “A Procedural Approach to the Modeling of Urban Historical Contexts”, Proc. of the 38th Annual Conference on Computer applications and quantitative methods in archaeology (CAA 2010), Granada, Spain, 2010. O. Homola, and J. Zeman, “Visualisation in Cultural Heritage”, Proc. of XXIII CIPA Symposium, Prague, Czech Republic, 2011. S. Sylaiou, and P. Patias, “Virtual reconstructions in Archaeology and some issues for consideration”, ΙΜΕros, Journal for Culture and Technology, (4), Athens, Greece, pp. 180-191, 2004. M. Saldaña, and C. Johanson, “Procedural Modeling for RapidPrototyping of Multiple Building Phases and Hypothetical Reconstructions of Early Rome”, International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences, vol. XL-5/W1, 2013. S. Haegler, P, Muller, and L. Van Gool, “Procedural Modeling for Digital Cultural Heritage”, EURASIP Journal on Image and Video Processing, Hindawi Publishing Corporation, Article ID 852392, 2009. P. Prusinkewicz, and A. Lindenmayer, “The Algorithmic Beauty of Plants”, Springer Verlag, 1991. Y.I.H. Parish, and P. Müller, “Procedural modeling of cities”, Proc. of ACM SIGGRAPH 2001/ACM Transactions on Graphics, ACM Press, pp. 301-308, 2001. G. Stiny, “Introduction to shape and shape grammars”, Environment and Planning B. 7(3): 343-361, 1980. P. Wonka, M. Wimmer, F. Sillion, and W. Ribarsky, “Instant architecture”, ACM Transactions on Graphics, vol 22, number 3, pp. 669-677, 2003. P. Müller, P, Wonka, S. Haegler, A. Ulmer, and L. Van Gool, “Procedural modeling of buildings”, ACM Transactions on Graphics, vol 25, number 3, pp. 614-623, 2006. S. Havemann, “Generative Mesh Modeling”, PhD Thesis, TU Braunschweig, 2005. E. Mendez, G. Schall, S. Havemann, S., Junghanns, D. Fellner, and D. Schmalstieg, “Generating Semantic 3D Models of Underground Infrastructure”, IEEE Computer Graphics and Applications, vol 28, number 3, pp. 48-57, 2008. Smelik, R.M., Tutenel, T., Bidara, R., Benes, B. “A Survey on Procedural Modeling for Virtual Worlds”, Computer Graphics Forum, Wiley, 33(6), pp. 31-50, 2014. L. Van Gool, M. Waelkens, P. Müller, T. Vereenooghe, and M. Vergauwen, “Total recall: a plea for realism in models of the past”, Proc. of the Int'l Society for Photogrammetry and Remote Sensing (ISPRS), XXth ISPRS Congress, Istanbul, Turkey, pp. 332-343, 2004. H. Liu, Q. Wang, W. Hua, D. Zhou, and H. Bao, “Building Chinese Ancient Architectures in Seconds”, Proc. of the Int'l Conference on Computational Science, Lecture Notes in Computer Science Volume 3515, Springer, pp. 248-255, 2005. [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] B. Gerth, R. Berndt, S. Havemann, and D.W. Fellner, “3D Modeling for Non-Expert Users with the Castle Construction Kit v0.5”, Proc. of the 6th Int'l Symposium on Virtual Reality, Archaeology and Cultural Heritage (VAST), Eurographics, pp. 1-9, 2005. P. Müller, T. Vereenooghe, P. Wonka, I. Paap, and L. Van Gool, “Procedural 3D Reconstruction of Puuc Buildings in Xkipché”, Proc. of the 7th Int'l Symposium on Virtual Reality, Archaeology and Cultural Heritage (VAST), Eurographics, pp. 139-146, 2006. G. Guidi, B. Frischer, and I. Lucenti, “Rome RebornVirtualizing the ancient imperial Rome”, Proc. of the Workshop on 3D Virtual Reconstruction and Visualization of Complex Architectures, 2007. K. Dylla, B. Frischer, P. Müller, A. Ulmer, and S. Haegler, “Rome Reborn 2.0: A case study of virtual city reconstruction using procedural modeling techniques”, Computer Graphics World, December, pp. 16-25, 2008. M. Mathias, A. Martinovic, J. Weissenberg, and L. Van Gool, “Procedural 3d building reconstruction using shape grammars and detectors”, Proc. of the Int'l Conference on 3D Imaging, Modeling, Processing, Visualization and Transmission (3DIMPVT), IEEE Computer Society, Hangzhou, pp. 304-311, 2011. J. Noghani, E. Anderson, and F. Liarokapis, “Towards a Vitruvian Shape Grammar for Procedurally Generating Classical Roman Architecture”, Proc. of the 13th Int'l Symposium on Virtual Reality, Archaeology and Cultural Heritage (VAST), Short and Project Papers, Eurographics, pp. 41-44, 2012. W.B. Dinsmoor, “The Architecture of Ancient Greece: An Account of Its Historic Development”, New York: Norton, 1975. A.W. Lawrence, and R.A. Tomlinson, “Greek Architecture”, 5th Edition (Pelican History of Art), New Haven and London: Yale University Press, 1996. N. Marinatos, “What were the Greek sanctuaries? A synthesis”, N. Marinatos and E. Hägg (Eds.), Greek sanctuaries: New Approaches, London and New York: Routledge, pp. 228-233, 2000. J. Pedley, “Sanctuaries and the Sacred in the Ancient Greek World”, Cambridge University Press, 2005. J. Hambidge, “The Parthenon and Other Greek Temples: Their Dynamic Symmetry”, New Haven, 1924. A. Marquand, “Greek Architecture”, New York: The MacMillan Company, 1909. M. Morgan, “Vitruvius: The Ten Books on Architecture”, New York: Dover Publications, 1960. H. Gardner, F.S. Kleiner, and C.J. Mamiya, “Gardner's Art through the Ages”, Thomson Wadsworth, 2004. B.A. Barletta, “The Origins of the Greek Architectural Orders”, Cambridge University Press, 2001. P.E. Bezier, “The First Years of CAD/CAM and the UNISURF CAD System”, Fundamental Developments of Computer-Aided Geometric Modeling, Les Piegl (eds), Academic Press, pp. 1326, 1993. P. De Casteljau, “Polar Forms for Curve and Surface Modeling as Used at Citroen”, Fundamental Developments of ComputerAided Geometric Modeling, Les Piegl (eds), Academic Press, pp. 1-12, 1993. G. Farin, J. Hoschek, and M.S. Kim, “Handbook of Computer Aided Geometric Design”, Elsevier, 2002. G.B. Piranesi, “Le antichità romane”, Stamperia Salomoni alla Piazza di S. Ignazio, Roma, 1784. P.K. Agarwal, S. Har-Peled, N.H. Mustafa, and Y. Wang, “Near-linear time approximation algorithms for curve simplification in two and three dimentions”, Algorithmica, 42(34), pp. 203-219, 2005. P.K. Agarwal, R.B. Avraham, H. Kaplan, and M. Sharir, “Computing the discrete Frechet distance in subquadratic time”. Proc. of the 24th Annual ACM-SIAM Symposium on Discrete Algorithms, SODA '13, pp. 156-168, 2013.
© Copyright 2026 Paperzz