当前位置: 首页 > >

Reference Plane Assisted Sketching Interface for 3D Freeform Shape Design

发布时间:

2010 International Conference on Cyberworlds

Reference Plane Assisted Sketching Interface for 3D Freeform Shape Design
Kai Wang, Jianmin Zheng, Hock-Soon Seah School of Computer Engineering, Nanyang Technological University, Singapore Email: {wang0452, asjmzheng, ashsseah}@ntu.edu.sg

Abstract—This paper presents a sketch-based modeling system with auxiliary planes as references for 3D freeform shape design. The user ?rst creates a rough 3D model of arbitrary topology by sketching some contours of the model. Then the user can use sketching to perform deformation, extrusion, etc, to edit the model. To regularize and interpret the user’s inputs properly, we introduce some rules for the strokes into the system, which are based on both the semantic meaning of the sketched strokes and human psychology. Unlike other sketching systems, all the creation and editing operations in the presented system are performed with reference to some auxiliary planes that are automatically constructed based on the users sketches or default settings. The use of reference planes provides a heuristic solution to the problem of ambiguity of 2D interface for modeling in 3D space. Examples demonstrate that the presented system can allow the user to intuitively and intelligently create and edit 3D models even with complex topology, which is usually dif?cult in other similar sketch-based modeling systems. Keywords-sketch based interface and modeling; interaction techniques; freeform shape design; deformations; reference planes

I. I NTRODUCTION Advances in information technology have enabled many systems to extend human’s abilities in design and creative work. Modern cognition study indicates that human has two cognitive modes: experimental cognition and re?ective cognition [1]. The former corresponds to skilled behavior and the latter accounts for intellectual work. Tano et al [2] show that while most of current computer graphics (CG) and virtual reality (VR) tools are good for experimental cognition and poor for re?ective cognition, sketch based tools can promote re?ective cognitive activities. On the other hand, with the rapid development of pen-based computer hardware, digital sketching interface emerges as a powerful way for users to interact with the computer. However, fully realizing the potential of the sketch-based systems requires many things, one of which is underlying algorithms and technologies that enable effective sketch-based interfaces. This paper investigates new methods for sketch-based modeling and editing of 3D shapes. Creating and editing 3D models is a fundamental task in geometric modeling and computer graphics. Meanwhile it is also a tedious process with current 3D modeling packages such as Maya, 3DS Max and SolidWorks, which use the WIMP-style (Windows, Icon, Menu, Pointer) interfaces to construct and manipulate 3D models in a highly careful
978-0-7695-4215-7/10 $26.00 ? 2010 IEEE DOI 10.1109/CW.2010.23 105

and skillful manner. The process and interactions in these packages are far from designers’ habits and environments. Designers often use sketches to design objects and present their ideas. Sketch-based modeling allows users to do modeling by sketching 2D strokes, which thus provides a new way for 3D modeling. It is suitable for early conceptual design and idea communication. Unlike conventional modeling methods, sketch-based methods typically use freeform curves (or strokes) as the basic modeling metaphor. One problem with the sketchbased modeling is how to interpret and map the strokes the user sketches, which is usually dif?cult. However, proper interpretation of sketching is very important because it is related to whether the system correctly understands the user’s intention and whether the creation and editing is successfully performed. Another challenging problem for 3D modeling is that when we are doing 3D modeling, we have to ?nd indirect ways to interact with 3D space using the input devices operating on the 2D computer screen. A classical solution to this problem is to use the Arcball when we view a 3D object in a virtual environment rendered by some graphics library (such as OpenGL or DirectX). This problem becomes tougher for sketch-based 3D modeling and editing. It is very dif?cult, if not impossible, to specify the 3D position and orientation when a user draw strokes into free space. In this paper, we propose methods to solve these problems. First, to partially eliminate the ambiguity of understanding the user input sketches, we introduce some rules for regularizing and interpreting them. These rules consider both the semantic meaning of the sketched strokes and human psychology. Second, to make the location and orientation of strokes in 3D space meaningful and intuitive, our guiding idea is to provide some reference geometry, with reference to which the strokes were sketched. In particular, we use the shape in its current design stage and also some auxiliary planes as reference geometry. The auxiliary planes are automatically constructed based on user’s sketches or default settings. Figure 1 is an example where we want to deform the model by modifying the marked curve lying on it. It is not easy to give a precise description of the new position of the deformed 3D curve by sketching without any reference. With a reference plane constructed from the initial marked curve, the speci?cation of the new curve becomes easier. Third, to improve the quality of the reconstructed

mesh, we also introduce a local mesh re?nement algorithm. It is mentioned in the survey [3] that the model quality is one of ?ve major open problems in sketch-based interface and modeling. Finally, by integrating all these techniques, we present a novel sketching interface for creating and editing 3D models. It is demonstrated that with help of reference planes, the sketch-based 3D modeling becomes more ?exible and easier, thus leading to a more enjoyable touch of 3D space for users.

(a)

(b)

(c)

(d)

Figure 1. (a) An initial model and a handle stroke (blue curve) on it. (b) It is dif?cult to describe the position of the new handle stroke (in green color) in 3D space, which was sketched on the 2D screen. (c) Our system solved the problem by generating a reference plane (in blue color) for the user to sketch on. (d) Deformation result.

The rest of the paper is organized as follows: Section II reviews some related work in sketch-based modeling and mesh deformation. Section III then describes our sketching interface. The underlying algorithms that support and implement our sketching interface are explained in Section IV. The experimental results are provided in Section V and Section VI concludes the paper. II. R ELATED W ORKS Many sketch-based freeform modeling systems have been developed. One example is Teddy [4], which allows the user to draw a closed 2D contour and creates an initial model interpolating the contour. The generated model is a simple oval-like object and a set of editing functions such as deformation, extrusion and cutting are provided to modify the rough shape to a satisfactory result. The ?nal smooth surface is obtained through surface optimization. Similar works can be found in [5], [6]. Touch-based techniques are also developed to sketch and modify contours of crosssectional slices for modeling “blobby” 3D objects [7]. The information of intersection of strokes sometimes helps to reconstruct 3D models. In order to model an object with some prescribed details from the 2D user sketches, CrossSketch [8] ?rst detects two intersected 2D strokes and then uses the Cubic Corners to reconstruct the depth of the vertices. It can generate a relatively complex 3D surface with more details while only able to construct an open surface rather than a closed 3D mesh. Masry and Lipson [9] present a system that is able to construct rigid 3D object consisting of both straight and cursive lines. The system ?rst selects an intersection point of three edges as a central vertex and then reconstructs 3D straight lines using an optimization

procedure, followed by the reconstruction of curves. This work provides an ef?cient way to model a rigid 3D object and is suitable for engineering design. Some recent works propose to reconstruct 3D surfaces from closed curves lying on non-parallel planes [10], [11]. They are mainly applicable to regular prede?ned data such as the medical volume data of an organ of human body. However for the sketch-based free-form modeling application, the input strokes may not be regular and analyzing and processing of them may become quite complicated. Besides the reconstruction of 3D models from initial input strokes, subsequent editings are usually desired to further modify the constructed models. We refer readers to an excellent survey paper [3] for a broader overview. In the following we brie?y look at some works on deformation. To deform a constructed mesh, some sketch-based methods [6], [12], [13] let the user drag a vertex of the mesh along the direction parallel to the screen and then compute its position according to the position of the camera. The new positions of other vertices are computed using mesh deformation algorithms. This approach can give real-time feedback to the user and is suitable for interactive editing, but it is not intuitive enough for con?rming the direction of deformation in 3D space. Meanwhile, it does not ?t in the case where multiple handle vertices are desired. Nealen et al [14] propose to deform a mesh by changing the shape of a handle curve. First a curve is drawn on the mesh to serve as the handle curve. Then the model is rotated manually to a proper angle and the deformed curve is drawn on the screen. The 3D position of the new curve could be calculated according to the current viewpoint. SilSketch [15] extends this idea by automatically detecting the handle curve which is a part of the silhouette of the model and corresponds to a user input stroke for the deformed handle curve. Similar method can also be found in [16]. III. U SER I NTERFACE Our sketching interface provides ?ve tools (modes) for creating and editing a 3D model: model creation tool, deformation tool, extrusion tool, cutting tool and smoothing tool. In each mode the operations are done by sketching while the switching among the modes is via menu selection. A. Creation Tool While most of previous free-form sketch-based modeling tools let the user draw a 2D silhouette of a 3D object on the screen and then construct the 3D model by in?ation and optimization [4]–[6], in the model creation stage we provide three sets of orthogonal planes as the reference planes. These reference planes are sketch planes, on which the user can sketch the initial contours. The word contour here means the intersection curve of the model with a plane. The interface of three orthogonal planes is more common in 3D engineering

106

(a)

(b)

(c)

(d)

(e)

(f)

(g)

(h)

Figure 2. An example of using the creation tool. (a) Initially, three basic planes are provided. (b) Two closed curves are sketched on the blue plane. (c) Another two closed curves are drawn on the translated blue plane. (d)-(e) The same operations are performed on the red and green planes. (f) The ?nal sketched contours. (g)-(h) Two views of the generated model.

design and also more ?exible to design complicated shapes than only one plane. Initially, the x = 0, y = 0 and z = 0 planes serve as the three basic orthogonal planes. The user can de?ne the contour(s) of a 3D model by sketching strokes on any of these basic planes. These three basic planes can also be translated along x, y and z axes respectively to allow the sketch of more contour curves. This can result in several sets of parallel cross section contours. Note that though it is possible to rotate the basic planes to provide more general reference planes and this could give the user more ?exibilities to sketch the contours, the price for this ?exibility is the algorithmic complexity of constructing 3D models from non-parallel curve networks, the complexity of design and use of interface, and the increase of occurrence of various ambiguities from sketching. Therefore after a careful tradeoff, we just allow the basic planes to be translated and we ?nd that this is generally suf?cient in practice for sketch-based free-form design. After all the contour curves are sketched, the 3D object which interpolates the contours is reconstructed. Figure 2 shows an overview of this process. With the help of the three sets of reference planes, more descriptions on the shape of a model can be sketched. This speeds up the production process of a 3D model. It should be pointed out that though the reference planes are useful for de?ning the shape of a model, sometimes ambiguity still occurs. The ambiguity arises from two aspects: the user input strokes may not necessarily follow the same style – different users may have different manners for de?ning the shape of a model; even with the same contours, the understandings of the shape may vary among

different users. So some rules must be provided for sketching the contours. The details of the rules will be discussed in Section IV-A. B. Deformation Tool To deform a mesh, the user needs to sketch a stroke which will be projected onto the mesh, generating a handle curve. Two reference planes will be generated automatically. The user then needs to sketch on the reference planes to specify the new shape and position of the handle curve, after which the deformation is completed. To implement this deformation process, the following information should be speci?ed: a set of vertices (called handle vertices) and their new positions; and the vertices within a region of interest (ROI), which will move with the handles. The rest vertices will remain unchanged during the deformation process. To generate the handle curve, we use a method similar to that in [14]. The handle curve is composed of handle vertices. The vertices of the edges or faces on which the projection of the input stroke lie are regarded as the handle vertices. See Figure 3(b) for an example. The speci?cation of new positions of the handle vertices seems not trivial. Unlike previous existing methods, we provide the user with two reference planes for sketching the new curve: a base plane which passes the handle vertices as many as possible for sketching the basic shape of the new curve and a projection plane, which is orthogonal to the base plane, for drawing the projection of the new curve (see Figure 3(c)). In general, the base plane is suf?cient for sketching the new shape of the handle curve. However, if the new handle curve is desired to be non-planar, the projection plane is used to sketch its projection (Figure 3(d)

107

(a)

(b)

(c)

(d)

(e)

(f)

(g)

Figure 3. An example of using the deformation tool. (a) The initial model. (b) The blue curve on the mesh is the handle curve projected from a 2D sketch. The yellow, red and green dots denote the handle, ROI and anchor vertices respectively. (c) The generated base plane (blue) and the projection plane(green). (d) The new curve (green) drawn on the base plane. (e) A curve(red) is drawn in the projection plane to create a non-planar new curve. (f) The updated new curve (green). (g) The deformed model.

- Figure 3(f)) and then the new handle curve is determined. In addition, in our system the two planes can also be rotated to provide more ?exibility. In this way, the user can draw arbitrary curves in 3D space while being fully aware of the locations. For selection of the ROI vertices, three methods are available. A simple approach is to specify a threshold and vertices whose Euclidean distances to the handles below this threshold are regarded as the ROI vertices. Another approach is to let the user draw a circle on the 2D screen. The ROI vertices are the ones whose projections onto the screen are inside the circle. However these two methods seem not quite precise when the selection of certain vertices is required for relatively complex models. So we provide a new tool – a brush, to make the selection process somewhat like brushing on a model. The vertices brushed will then be chosen as the ROI vertices. The brush can be viewed as a complementary tool for the former two methods. The user could take a rough selection using the ?rst two tools and then make further modi?cations by brushing on the model. C. Other Tools

Our system also provides other tools such as Extrusion (Figure 4), Cutting and Smoothing (Figure 5) similar to those in [4], [6]. In particular, for the extrusion tool, after a closed stroke is drawn on the mesh, a reference plane is generated on which the user draws the silhouette curve of the extruded part. This plane could be rotated about two axes: the line passing through the center of the closed stroke and orthogonal to the stroke as much as possible or the line connecting the ?rst drawn point of the closed stroke and the farthest point to it on the stroke. The reference plane helps to con?rm the position of the silhouette curve and gives ?exibility to adjust its direction. These tools are all sketch-based and quite convenient to use. Together with the creation and deformation functions, a complete modeling system is built up. With this system, the user could easily create and edit a 3D object in a short period by sketching strokes. An example for the whole process of producing a 3D model is given in Figure 6. IV. A LGORITHMS We now look at the underlying algorithms for the sketching interface introduced in the preceding section. A. Creation As mentioned earlier, some rules are needed to regularize and interpret the user sketched strokes before we construct the surface. Considering both the widely recognized meaning of the contour strokes and human psychology, the following rules are proposed: 1) For curves on a plane, if they do not intersect with or contain in each other, the interior of each curve belongs to the interior of the model. 2) For two curves S1 and S2 on a plane, if S1 is totally contained in S2 , then it means that the intersection between the plane and the model is a ring. If the containing relationship exists among more than two curves, that is, we have n curves S1 , S2 , ..., Sn and Si is within Si+1 , then we start the perception from the outermost pair of curves Sn and Sn?1 . 3) If any two curves lying on a plane have intersections, then they are treated as invalid curves and thus discarded.

(a)

(b)

(c)

Figure 4. Extrusion operation. (a) A blue curve is drawn on the mesh indicating the part to be extruded and a reference plane is automatically generated. (b) Rotate the reference plane and draw the silhouette curve (in green color). (c) Extrusion result.

(a) Figure 5.

(b)

(a) Cutting operation. (b) Smoothing operation.

108

(a)

(b)

(c)

(d)

(e)

(f) Figure 6.

(g)

(h)

(i)

(j)

An example of modeling using our system. (a)-(c) Creation. (d)-(g) Deformation. (h)-(i) Extrusion. (j) Final result.

4) For two curves S1 and S2 lying on two orthogonal planes P1 and P2 respectively, the intersection point set {VS1 P2 } of curve S1 and plane P2 must be exactly the same as the intersection point set {VS2 P1 } of S2 and plane P1 . Next we give some explanations of these rules. The ?rst rule is easy to understand. When a user draws one or more strokes, the strokes are usually regarded as the outer contours of an object. When a user tries to make a hole on the mesh surface to create a relatively complex model, a pair of curves are often used, of which one is contained in the other. The ring between the two curves is the interior part of the model. If more holes are desired, more pairs of curves should be used. To avoid the ambiguity of perception, the order of analysis is inward starting from the outermost pair. For example, suppose we have n curves S1 , S2 , ..., Sn and Si?1 is totally contained in Si . Then Sn and Sn?1 form a ring, Sn?2 and Sn?3 form another ring which is contained in the previous one, and so on. If n is an even number, then the ring formed by S2 and S1 is innermost; Otherwise we just apply rule 1 to S1 – the interior of S1 is the interior of the model. An example of rule 2 is shown in Figure 7. Rule 2 makes it possible to model a mesh with arbitrary topology directly by sketching the contours at the creation phase. Rule 3 just does not allow intersection between two curves on the same plane since it unlikely happens for the cross section contour of an object to have intersection. Rule 4 can also be stated in another way that the intersection points between the two curves and the intersection line of the two planes must be in the same positions. This rule actually conforms to our common understanding of appearance of a 3D object. It is dif?cult to imagine what the shape of a model will be if the two sets {VS1 P2 } and
(a) (b)

Figure 7. An example for rule 2 (a) The user drawn contours. (b) The generated model.

{VS2 P1 } are not the same. However in practice, it is almost impossible for the users to draw two exactly intersected curves manually. So after the curve S1 is drawn, we highlight the points set {VS1 P2 } to help the users carefully draw the curve S2 to make it pass through {VS1 P2 }. Then we perform a curve deformation procedure, which is explained below, to automatically sew the two curves up before constructing the surface. For simplicity, let us assume there are two elements in set {VS1 P2 }, which implies two curves S1 and S2 should intersect at two points. So the goal here is to deform the two curves, making them intersect at two points and meanwhile preserve their original shape as much as possible. First we calculate the intersection points set {VS1 P2 } between S1 and P2 , and {VS2 P1 } between S2 and P1 . Then we ?nd two pairs of different closest points. In each pair the two points are from {VS1 P2 } and {VS2 P1 } respectively. The midpoints Vm1 and Vm2 of these two pairs are treated as the new positions of the handle points. Two handle points on each curve can then be chosen as the points closest to Vm1 and Vm2 respectively. Next a range of points near the handles are to be moved with them and we need to compute their new positions. So we could perform the Laplacian deformation

109

algorithm to the two curves to deform them. Since the two curves are both planar, it can be further simpli?ed into a 2D deformation problem which can be precisely solved [17].

(a)

(b)

(c)

Figure 8. Curve sewing. (a) Two curves lie on two orthogonal planes. The colored points denote the intersection points between a curve and a plane that another curve lies on. (b) Deform the two curves so that they intersect at the two points. (c) Generate a mesh that takes the two curves as contours.

It can be seen from Figure 8 that during the deformation process, no extra discontinuity will be caused at the intersection part of each curve and the deformed curves keep their original shapes very well, thus preserving the original characteristics of the user input strokes. The above steps are for the simple two-contour case. For multiple contours, we just need to deal with them one by one to make them comply with the rules we de?ned. After all these processes, we are ?nally ready to construct the mesh model, which is completed by employing a procedure proposed in [10]. B. Deformation Since for sketch-based modeling direct manipulation of the mesh surface is expected, we choose to use the surfacebased algorithm for the deformation in our system. As mentioned in Section III-B, we provide the users reference planes for drawing the deformed shape of the handle curve. A key problem here is how to generate the base plane which has a suitable position and orientation, as the projection plane could be easily calculated after the base plane is con?rmed. Our basic assumption is to let the base plane pass through as many points of the handle curve as possible. For this purpose, we compute the least squares plane that ?t the points. Assume the plane equation is Ax + By + Cz + D = 0, where A, B, C and D are the unknown parameters to be determined. Then our task is to ?nd the the plane that minimizes the following objective function f (A, B, C, D) =
i∈HC

The above method just gives a suggestive orientation of the base plane. If the user is not satis?ed, he/she can rotate the plane by a proper angle. The axis of the rotation is the line connecting the projection of the ?rst handle point onto the initial computed plane to that of the last handle point. The calculation of the reference plane for extrusion process is almost the same as this. After the reference planes are constructed, the user can sketch the new shape and position of the handle curve. If the user intends to draw a non-planar curve by sketching the shadow of the base plane curve on the projection plane, we use the algorithm proposed in [18] to combine the two planar curves to generate a spatial one. Once the ROI vertices, the handle curve and its new shape are con?rmed, a ?exible mesh deformation algorithm [19] which can produce various effects between the Laplacian [12] and Rigid [13] deformation results is used to complete the deformation. C. Local Re?nement Note that if large deformation is performed, the deformed triangles of the mesh, especially those near the handle vertices, will in general be stretched severely. This will lower the quality of the mesh. To preserve the mesh quality, we introduce a local re?nement algorithm that is described below. This algorithm is carried out after each prominent deformation. After a mesh has been deformed, the triangles whose centroids move a distance larger than a prede?ned threshold are ?rst selected. These triangles are supposed to have been over-stretched and they are needed to be re?ned. So we subdivide each of them by connecting the midpoints of the three edges (see Figure 9(a)).

(a)

(b)

(c)

(d)

Figure 9. Strategy for local re?nement. (a) Subdivide the triangle whose centroids moves a distance larger than a threshold by connecting the midpoints of the three edges. (b) Iteratively subdivide the triangles that have more than one T-junctions. (c) For the top triangle having only one T-junction, connect the T-junction to the opposite vertex. (d) The re?ned mesh.

(Axi + Byi + Czi ? D)2 ,

(1)

subject to the constraint A2 + B 2 + C 2 = 1, where i ∈ HC means pi = (xi , yi , zi ) is a point on the handle curve. This optimization problem can be converted into a linear system, which can be solved by a linear solver.

Then, for the other neighboring triangles that are not involved in the above re?nement, T-junctions will occur at the shared edges. These facets can be further divided into two categories: the triangles with only one and those with two or three T-junction edges. We ?rst choose to deal with the second type by subdividing the triangle in the same way as just mentioned. This process continues recursively until the left triangles all belong to the ?rst type (Figure 9(b)). Finally each of these triangles is remeshed by connecting

110

the T-junction point and the vertex opposite to the edge the T-junction point lies on (Figure 9(c)).

VI. C ONCLUSIONS We have described a novel sketching interface for creating and editing 3D models. The main contributions are: ? We propose the strategy of using auxiliary planes as references for creation, deformation and other editing operations in sketching interface. Reference planes help make the sketch-based modeling process intuitive and easy to use. ? We propose some rules for regularizing and interpreting the user input sketches. These rules consider both the semantic meaning of the sketched strokes and human psychology. ? We introduce a local mesh re?nement procedure to improve the quality of the deformed mesh. In future, we will explore the use of more types of geometry as references to assist sketch-based interface and modeling. In addition, more advanced local remeshing algorithms are needed to improve the quality of meshes after large deformations. ACKNOWLEDGMENT This work is supported by the National Research Foundation grant, which is administered by the Media Development Authority Interactive Digital Media Programme Of?ce, MDA (IDMPO), and by the ARC 9/09 Grant (MOE2008T2-1-075) of Singapore. R EFERENCES
[1] D. Norman, The Design of Everyday Things. 1998. MIT Press,

(a)

(b)

(c)

Figure 10. An example of local re?nement after large deformation. (a) The initial model. (b) Result after large deformation without local re?nement. (c) Result after large deformation with local re?nement.

This simple local re?nement algorithm works well in our system for improving the quality of the mesh after large deformations, as can be seen in Figure 10. It should also be pointed out that this remeshing process ?ts for a local area, whereas most of the other popular remeshing algorithms are applicable to the whole mesh. V. R ESULTS
AND

D ISCUSSIONS

We have implemented our sketch-based modeling system. Our current implementation was written in C++ on the Windows platform. We tested our system on an Intel Pentium 4 3.6GHz machine with 1G RAM. Our experiments show that that each operation of our system runs in interactive rates. This indeed meets the user’s requirement on a sketch-based modeling system. Several 3D freeform models created with our system are shown in Figure 11. Since the creation tool in our system provides the freedom of sketching in 3D space, which is different from other systems that only enable the drawing on the 2D screen, the modeling becomes much intuitive and ?exible. With our system, many 3D objects with complex topology could be created at the creation stage. With help of reference planes, the editing process at the subsequent editing stage can also be speeded up to a large extent. This is due to precise awareness of the position and orientation of 3D sketches. It is observed in our experiment that even if multiple contour lines are de?ned initially, the constructed mesh is not quite dense and the number of vertices is about a few hundreds. Even after complex editing operations, this number is still no more than a few thousands. This enables us to consider more about the modeling effect and quality of the mesh other than the running time. Such an example can be found at our local re?nement algorithm after deformation. Since the remeshing will change the connectivity of the mesh, the re-calculation and re-factorization of the n × n matrix when solving the deformation problem is often inevitable (n refers to the number of vertices involved). This task can still be performed in real-time thanks to the small number of vertices of the model.

[2] S. Tano, T. Kodera, T. Nakashima, I. Kawano, K. Nakanishi, G. Hamagishi, M. Inoue, A. Watanabe, T. Okamoto, K. Kawagoe, K. Kaneko, T. Hotta, and M. Tatsuoka, “Godzilla: Seamless 2d and 3d sketch environment for re?ective and creative design work,” in Human-Computer Interaction (INTERACT’03), 2003, pp. 311–318. [3] L. Olsen, F. Samavati, M. Sousa, and J. Jorge, “Sketch-based modeling: A survey,” Computers & Graphics, vol. 33, pp. 85–103, 2009. [4] T. Igarashi, S. Matsuoka, and H. Tanaka, “Teddy: a sketching interface for 3d freeform design,” in SIGGRAPH 99, New York, USA, 1999, pp. 409–416. [5] O. Karpenko, J. F. Hughes, and R. Raskar, “Free-form sketching with variational implicit surfaces,” Computer Graphics Forum, vol. 21, pp. 585–594, 2002. [6] A. Nealen, T. Igarashi, O. Sorkine, and M. Alexa, “Fibermesh: designing freeform surfaces with 3d curves,” ACM Trans. Graph., vol. 26, no. 3, p. 41, 2007. [7] A. Joshi, G. Robertson, B. Plimmer, and B. W¨ nsche, u “Bubbleworld builder - 3d modelling using two-touch and sketch interaction,” in Proceedings of the 5th International Conference on Computer Graphics Theory and Applications (GRAPP 2010), 2010, pp. 116–122.

111

(a)

(b)

(c)

(d) Figure 11.

(e) Some models created by our system in two views.

(f)

[8] A. Andre, S. Saito, and M. Nakajima, “Crosssketch: freeform surface modeling with details,” in SBIM ’07: Proceedings of the 4th Eurographics workshop on Sketch-based interfaces and modeling. New York, USA: ACM, 2007, pp. 45–52. [9] M. Masry and H. Lipson, “A sketch-based interface for iterative design and analysis of 3d objects,” in ACM SIGGRAPH 2007 courses. New York, USA: ACM, 2007. [10] L. Liu, C. Bajaj, J. Deasy, D. A. Low, and T. Ju, “Surface reconstruction from non-parallel curve networks,” Computer Graphics Forum, vol. 27, no. 2, pp. 155–163, 2008. [11] R. Sowell, L. Liu, T. Ju, C. Grimm, C. Abraham, G. Gokhroo, and D. Low, “Volume viewer: an interactive tool for ?tting surfaces to volume data,” in SBIM ’09: Proceedings of the 6th Eurographics Symposium on Sketch-Based Interfaces and Modeling. New York, USA: ACM, 2009, pp. 141–148. [12] O. Sorkine, D. Cohen-Or, Y. Lipman, M. Alexa, C. R¨ ssl, and o H.-P. Seidel, “Laplacian surface editing,” in Proceedings of the Eurographics/ACM SIGGRAPH Symposium on Geometry Processing. ACM Press, 2004, pp. 179–188. [13] O. Sorkine and M. Alexa, “As-rigid-as-possible surface modeling,” in Proceedings of Eurographics/ACM SIGGRAPH Symposium on Geometry Processing, 2007, pp. 109–116. [14] A. Nealen, O. Sorkine, M. Alexa, and D. Cohen-Or, “A sketch-based interface for detail-preserving mesh editing,” ACM Trans. Graph., vol. 24, no. 3, pp. 1142–1147, 2005. [15] J. Zimmermann, A. Nealen, and M. Alexa, “Silsketch: automated sketch-based editing of surface meshes,” in SBIM ’07: Proceedings of the 4th Eurographics workshop on Sketchbased interfaces and modeling. New York, USA: ACM, 2007, pp. 23–30. [16] V. Kraevoy, A. Sheffer, and M. van de Panne, “Modeling from contour drawings,” in SBIM ’09: Proceedings of the 6th Eurographics Symposium on Sketch-Based Interfaces and Modeling. New York, USA: ACM, 2009, pp. 37–44. [17] M. Eitz, O. Sorkine, and M. Alexa, “Sketch based image deformation,” in Proceedings of Vision, Modeling and Visualization (VMV), 2007, pp. 135–142.

[18] J. M. Cohen, L. Markosian, R. C. Zeleznik, J. F. Hughes, and R. Barzel, “An interface for sketching 3d curves,” in I3D ’99: Proceedings of the 1999 symposium on Interactive 3D graphics. New York, USA: ACM, 1999, pp. 17–21. [19] K. Wang, J. Zheng, and H. S. Seah, “Flexible surface deformation for mesh editing,” in Proceedings of International Workshop on Advanced Image Technology 2010, 2010.

112




友情链接: