A Sketch Interpreter System with Shading and Cross Section Lines

Similar documents
BROWN UNIVERSITY Department of Computer Science Master's Project CS-97-M12. "Sketching Curved Three-Dimensional Surfaces" by Bing Chin

Gesture-Based 3D Mesh Modeler

SKETCH INPUT OF 3D MODELS Current Directions

A SKETCHING INTERFACE FOR TERRAIN MODELING. Nayuko Watanabe. A Senior Thesis

Progressive Surface Modeling Based On 3D Motion Sketch

Chapter 5. Projections and Rendering

Freeform User Interfaces for Graphical Computing

Using Geometric Constraints to Capture. design intent

Color Segmentation Based Depth Adjustment for 3D Model Reconstruction from a Single Input Image

03 Vector Graphics. Multimedia Systems. 2D and 3D Graphics, Transformations

Feature Based Implicit Function Shaping with Isocontour Embedded Curves

An Efficient Visual Hull Computation Algorithm

Occlusion Detection of Real Objects using Contour Based Stereo Matching

2002 Journal of Software

A Fair Curve Generation Algorithm based on a Hand-drawn Sketch

An Educational Non-Photorealistic Rendering System Using 2D Images by Java Programming

Ray tracing based fast refraction method for an object seen through a cylindrical glass

L1 - Introduction. Contents. Introduction of CAD/CAM system Components of CAD/CAM systems Basic concepts of graphics programming

CREATING 3D WRL OBJECT BY USING 2D DATA

Computational Geometry

PREDICTIVE MODELING FOR 2D FORM DESIGN

Name. Center axis. Introduction to Conic Sections

Shape from LIDAR Data. Univ. of Florida

Three-Dimensional Computer Vision

Local Modification of Subdivision Surfaces Based on Curved Mesh

Introduction to Solid Modeling Parametric Modeling. Mechanical Engineering Dept.

A Sketching Interface for 3D Modeling of Polyhedrons

Non-photorealistic Rendering

Dgp _ lecture 2. Curves

OLE Coordinate System: Subjective Motion for Interactive Optical Illusion

SEOUL NATIONAL UNIVERSITY

Three Dimensional Geometry. Linear Programming

Interactive Collision Detection for Engineering Plants based on Large-Scale Point-Clouds

Clipping. CSC 7443: Scientific Information Visualization

Chapter 2 Parametric Modeling Fundamentals

Revision of Inconsistent Orthographic Views

Structural & Thermal Analysis Using the ANSYS Workbench Release 12.1 Environment

Interactive 3D Geometrical Modelers for Virtual Reality and Design. Mark Green*, Jiandong Liang**, and Chris Shaw*

Planes Intersecting Cones: Static Hypertext Version

Free-Hand Stroke Approximation for Intelligent Sketching Systems

A Sketching Interface for 3D Modeling of Polyhedrons

A simple construction method for sequentially tidying up 2D online freehand sketches

Lesson 1 Parametric Modeling Fundamentals

TRANSFORMATIONS AND CONGRUENCE

CSCI 4620/8626. Coordinate Reference Frames

Curves and surfaces & modeling case studies. Karan Singh

CS 4620 Midterm, March 21, 2017

Artistic Rendering of Function-based Shape Models

Curves & Surfaces. Last Time? Progressive Meshes. Selective Refinement. Adjacency Data Structures. Mesh Simplification. Mesh Simplification

Automated Drill Design Software

coding of various parts showing different features, the possibility of rotation or of hiding covering parts of the object's surface to gain an insight

Structural & Thermal Analysis using the ANSYS Workbench Release 11.0 Environment. Kent L. Lawrence

Extrusion Revolve. ENGR 1182 SolidWorks 02

COMPUTER AIDED ENGINEERING DESIGN (BFF2612)

Image Based Lighting with Near Light Sources

9. Three Dimensional Object Representations

Image Based Lighting with Near Light Sources

Chapter 3- Creating & Editing Objects

Image Precision Silhouette Edges

MATH 31A HOMEWORK 9 (DUE 12/6) PARTS (A) AND (B) SECTION 5.4. f(x) = x + 1 x 2 + 9, F (7) = 0

3.2 THREE DIMENSIONAL OBJECT REPRESENTATIONS

Images from 3D Creative Magazine. 3D Modelling Systems

Surface Roughness Control Based on Digital Copy Milling Concept to Achieve Autonomous Milling Operation

Scalar Visualization

A 3-Dimensional Modeling System Inspired by the Cognitive Process of Sketching

DeepSketch2Face: A Deep Learning Based Sketching System for 3D Face and Caricature Modeling. Part I: User Studies on the Interface

Parametric Modeling. With. Autodesk Inventor. Randy H. Shih. Oregon Institute of Technology SDC PUBLICATIONS

SESAME: Towards Better 3D Conceptual Design Systems

Module 1: Basics of Solids Modeling with SolidWorks

3D Modeling techniques

Using surface markings to enhance accuracy and stability of object perception in graphic displays

Online Graphics Recognition: State-of-the-Art

CS602 MCQ,s for midterm paper with reference solved by Shahid

2D Object Definition (1/3)

Mapping textures on 3D geometric model using reflectance image

Reflection & Mirrors

Feature Extraction for Illustrating 3D Stone Tools from Unorganized Point Clouds

3D Polygon Rendering. Many applications use rendering of 3D polygons with direct illumination

Evolution of Impossible Objects

Geometric Modeling. Introduction

Technion - Computer Science Department - Technical Report CIS

The Reflection of Light

Method for computing angle constrained isoptic curves for surfaces

Sketch Input of Engineering Solid Models

Image Precision Silhouette Edges

ShapeShop: Sketch-Based Solid. Modeling with BlobTrees. Ryan Schmidt, Brian Wyvill, Mario Costa Sousa. Joaquim A Jorge. University of Calgary, Canada

Three-Dimensional Reconstruction from Projections Based On Incidence Matrices of Patterns

Shadows in Computer Graphics

Comparison and affine combination of generalized barycentric coordinates for convex polygons

Multipatched B-Spline Surfaces and Automatic Rough Cut Path Generation

Optics II. Reflection and Mirrors

Computer Graphics 7: Viewing in 3-D

Objectives: (What You ll Learn) Identify and model points, lines, planes Identify collinear and coplanar points, intersecting lines and planes

Freeform / Freeform PLUS

IDETC POINT-BASED SHAPE MONITORING OF PLATE BENDING FOR LARGE-SCALE STORAGE TANKS

Art Based Rendering of Fur by Instancing Geometry

INTERACTIVE ENVIRONMENT FOR INTUITIVE UNDERSTANDING OF 4D DATA. M. Murata and S. Hashimoto Humanoid Robotics Institute, Waseda University, Japan

CS123 INTRODUCTION TO COMPUTER GRAPHICS. Describing Shapes. Constructing Objects in Computer Graphics 1/15

Reconstruction of 3D Interacting Solids of Revolution from 2D Orthographic Views

Mathematics High School Geometry An understanding of the attributes and relationships of geometric objects can be applied in diverse contexts

Transcription:

Journal for Geometry and Graphics Volume 9 (2005), No. 2, 177 189. A Sketch Interpreter System with Shading and Cross Section Lines Kunio Kondo 1, Haruki Shizuka 1, Weizhong Liu 1, Koichi Matsuda 2 1 Dept. of Information and Computer Sciences, Saitama University 255 Shimo-okubo, Saitama, 338-8570 Japan email: kondo@ke.ics.saitama-u.ac.jp 2 Faculty of Software and Information Science, Iwate Prefectural University email: matsuda@soft.iwate-pu.ac.jp Abstract. We present a sketch interpreter system with shading and cross section lines for 3D freeform design. The input strokes are classified into three types: outlines (contour lines), shading lines and cross section lines. The outline is used to generate the basic rounded shape. The shading lines and cross section lines are used as control lines that are drawn inside the contour to modify the 3D shape. In order to effectively extract 3D information from the shading and cross section lines, we analyze different representations and deformations of the shading and cross section lines and classify them into three cases: convex, concave and upheaving. Each deformation is drawn by hand and transferred to a 3D shape according to the rules proposed in this paper. We evaluate our sketch interpreter system for various objects from concept sketches and present our results. Keywords: Sketch, freehand drawing, shading, cross section lines MSC 2000: 68U05 1. Introduction Although it has become common to use CAD/CAM systems to increase the efficiency of the industrial design process, traditional sketching is often more efficient in the early stages of concept design. Since it is difficult to design a CAD system that is capable of creating 3D objects directly from concept sketches due to ambiguous information, sketch systems [1 11] have recently been introduced that bridge the gap between concept design and computerbased modeling programs. These combine some of the features of pencil-and-paper sketching and some of the features of CAD systems in order to provide a lightweight, gesture-based interface to approximate 3D polyhedral modeling. Concept sketching is a pre-design process used by designers. It is used to draw the contours of products on paper by using a pencil in a step-by-step fashion. In order to achieve ISSN 1433-8157/$ 2.50 c 2005 Heldermann Verlag

178 K. Kondo et al.: A Sketch Interpreter System with Shading and Cross Section Lines 3D shapes, it is necessary to be able to recognize the required shapes from the concept sketch. Several CAD systems can now exhibit the object models created by the designers realistically, but these advanced 3D CAD systems demand precise data about the 3D object, especially in the steps where the data is input and in creating free-form surfaces. It can be impossible, or at least very difficult, for designers to use these systems to realize their ideas from their original sketches. It has now become a major research area to examine ways of increasing the flexibility of 3D data input techniques for CAD systems. This paper extends these ideas to propose a sketch interpreter system for designing 3D freeform objects. The essential idea is the use of the freeform stroke as an expressive design tool. Freeform strokes can be classified into one of three types: outlines (contour lines), shading lines and cross section lines. Outlines are used along with shading lines to generate the basic rounded 3D shapes. Shading lines and cross section lines are then used as control lines, and are drawn inside the contour in order to modify the basic 3D shape. The modeling procedure is as follows: we first draw a 2D outline with shading lines to specify the silhouette of an object, and the system then automatically constructs a basic 3D polygonal shape. We then modify the generated 3D shape by drawing the control lines and surface pattern lines. Finally, we reconstruct a new polygonal mesh. By using our technique, even first-time users can create simple yet expressive 3D models within minutes. Our system is designed for the rapid construction of approximate models, not for the careful editing of precise models. A 3D loudspeaker model designed using our proposed system is shown in Fig. 1. Figure 1: A loudspeaker designed using our sketch system

K. Kondo et al.: A Sketch Interpreter System with Shading and Cross Section Lines 179 2. Sketch analysis 2.1. Analyze the elements of the concept sketch In this section, we extract the primary elements from the concept sketch. The sketch in Fig. 2 shows a voice recorder that has been drawn by a designer. We can regard it as being made up of five main parts, as follows: An outline of the basic shape. The shading lines on the bottom-left. The contour with cross section lines on the top-right. The contours with shading lines in the center. The surface pattern lines in the upper-center. These can be further classified into four chief elements: Outline, Shading Lines, Cross Section Lines, and Surface Pattern Lines. Here, the surface pattern lines are directly mapped onto the final surface; this can be achieved by transferring the 2D lines onto the 3D surface. The contours, together with shading lines and the cross section lines, are used for calculating the 3D information. In this paper, we attempt to add information about shading and cross section lines to a sketch system in order to control a 3D shape. Therefore, in the next two sections, we will begin by analyzing various representations of shading and cross section lines. Figure 2: Sketch elements analysis 2.2. Analyze representations of shading In this section, we will show representations of shading by analyzing the lighting conditions and its expressive effects. 1. Lighting conditions: In order to analyze the effects of lighting conditions, we have investigated many concept sketches produced by designers. Referring to Fig. 3, in most cases it is convenient to

180 K. Kondo et al.: A Sketch Interpreter System with Shading and Cross Section Lines select parallel lighting and to suppose that it is located in the top-left position, with a 45 degree angle of incidence. 2. Different representations of shading: In general, the effect of lighting can be classified into one of three cases: bright, grey and shadow. We can roughly visualize a 3D shape by referring to the different brightness that appears on each face. In our research, we mainly use shading for two interpretations of processing. For the first case, it is used to generate the basic 3D shape, right from the initial step. The shading lines can be regarded as a parameter that is used to visualize the roundness of an ellipse, and this will be discussed in later sections. For the second case, it is used as a control line, together with the cross section lines, in order to modify the 3D shape. Representations of these control lines can be further classified into three cases: convex, concave, upheaving. Figure 3: Representations of shading 2.3. Analyze cross section lines Here we propose cross section lines as an interactive editing tool. They are drawn on the 2D plane and mapped onto the local area of the surface. The local mesh is modified by extracting the 3D depth value from the cross section lines. 1. Draw the cross section lines on the 3D shape. Referring to Fig. 4, we suppose that the cross section lines are orthogonal to each other in 3D space. In general, we only draw them on the local area of a 3D shape that needs to be modified. 2. Effective representation of the cross section lines. We classify the cross section lines into two types: main cross section lines and subordinate cross section lines. By drawing cross section lines on the surface of a generated 3D shape, we can first visualize and calculate the depth values, and then modify the local 3D mesh by transferring this information to the 3D shape. 3. Sketch modeling and algorithm In this section, we will introduce our interpreter system that uses shading and cross section lines. We use a tablet LCD as the input device. The procedures used in the sketch modeling process can be described as follows: 1. Input the sketch with outline and shading lines. 2. Analyze the shading lines.

K. Kondo et al.: A Sketch Interpreter System with Shading and Cross Section Lines 181 Figure 4: Cross section lines 3. Create the basic 3D shape. 4. Modify the generated 3D shape by drawing shading lines, cross section lines, or surface pattern lines. 5. Render the generated shape. 3.1. Create the basic 3D shape In our research, we extend Teddy s [2] algorithm to create a sketching interpreter system with shading and cross section lines for designing freeform 3D objects. When using Teddy s algorithm, we first create a closed planar polygon by connecting the start-point and the end-point of the stroke, and then determine the spine or axes of the polygon by using the chordal axis process. Next, we elevate the vertices of the spine by an amount proportional to their distance from the polygon, and finally we construct a polygonal mesh by wrapping the spine and the polygon in such a way that the sections form ovals. Here, each vertex of the spine is elevated proportionally to the average distance between the vertex and any external vertices that are directly connected to the vertex, and each section is calculated from the standard oval equation, so we cannot control information about the z- value of the generated shape. In the 3D shading sketch system [5], there are many limitations regarding the closeness of input curves. In our system, we change the wrapping and the extrusion rule in order to control the generated shape. In Teddy s [2] algorithm, after elevating the vertices of the core curve, an oval function is used to elevate the surface of the shape. In this work we attempt to modify this function by associating it with the shading analysis result. In this way, we can control the 3D shape through the shading lines. The modified wrapping function is described below: r = ab a 2 sin c θ + b 2 cos 2 θ Here, a represents the horizontal radius, and b is the vertical radius. We modify the traditional oval function by adding a new parameter c. In the next section, we will introduce the relationship between this function and the shading analysis results.

182 K. Kondo et al.: A Sketch Interpreter System with Shading and Cross Section Lines 3.2. Analyze the shading We suppose that the angle of incidence equals 45 degrees from the top-left direction. Referring to Fig. 5, by considering the gravity of the cross sections through the X-axis and the Y -axis directions, we can calculate the two intersection points. We can then calculate the areas of these two sections, as shown in Fig. 5. The number of vertices in these two areas determines the concentration of the shading, as shown in Fig. 5 (right). Finally, we calculate the ratio of these two numbers; this is then used as a parameter for controlling the generated 3D shape. Figure 5: Analysis of shading Here, we show an example in which our method is compared with a previous method. Fig. 6 is a previous result for modeling an oval object. Fig. 7 shows our result, with a low concentration of shading. Fig. 8 was generated by using our method with a high concentration of shading. 4. Deformation In this section, we will discuss the deformation operation on the rough 3D shape that was generated. We propose two ways of carrying out this process. The first method is to use a contour line with shading. By drawing shading inside the contour, we can achieve the following deformation effects: Convex, Concave and Upheaving. The second method involves the use of a contour with cross section lines, with which we can achieve a convex deformation effect by drawing cross section lines inside the contour. 4.1. Deformation using shading We suppose that the angle of incidence equals 45 degrees from the top-left direction. The different ways of drawing the shading equate to different deformations: 1. Referring to Fig. 9, if we draw the shading lines in the top-left segment of the contour, we can achieve a concave deformation effect. 2. Referring to Fig. 10, if we draw the shading lines in the right-bottom segment of the contour, we can achieve a convex deformation effect. 3. Referring to Fig. 11, if we draw the shading lines outside the contour, we can achieve an upheaving deformation effect.

K. Kondo et al.: A Sketch Interpreter System with Shading and Cross Section Lines 183 Figure 6: Example of a previous method Figure 7: Example of our proposed method with wide bright shading Figure 8: Example of our proposed method with darker, narrower shading 4.2. Deformation by using cross section lines Cross section lines provide very useful information for a concept sketch. In our research, we propose a simple way of obtaining a convex deformation effect by drawing cross section lines inside a contour. The procedure for this is as follows: for the generated 3D shape, we first decide which area should be modified, and draw a contour on that area. We then draw several cross section lines based on the rules that we proposed previously. Finally, we reconstruct a polygonal mesh by using the linear interpolation process. The rules for this process can be described as follows: Referring to Fig. 12(a), we suppose that the lines (A, B), (C, D) and (E, F ) that connect the starting points A, C, E and the end points B, D, F of the cross section lines are perpendicular to each other. We first calculate the line segments, as shown in Fig. 12(b), and we then evaluate the depth of the vertices in these line segments. Referring to Fig. 12(c), from

184 K. Kondo et al.: A Sketch Interpreter System with Shading and Cross Section Lines (a) (b) (c) Figure 9: Concave deformation (a) (b) (c) Figure 10: Convex deformation each vertex in the cross section line segments, we calculate the point perpendicular to the line that connects the starting point and the end point of the cross section lines. The distance between the vertex and the perpendicular point is considered to be the depth of the vertex. In the next step, we evaluate the normal of the vertices in the cross section lines. Referring to Fig. 13, we first construct a 1-lever narrow face loop (a) inside the contour, and then calculate the normal of each face; the average normal (b) of these vectors is regarded as the basic normal, and we set this as the normal of each vertex (c) in the cross section lines. Finally, using the depth value and normal of each vertex, we calculate a new vertex for each vertex in the cross section lines. After obtaining these 3D vertices in the local area, we reconstruct a local mesh by using the linear interpolation method. (a) (b) (c) Figure 11: Upheaving deformation

K. Kondo et al.: A Sketch Interpreter System with Shading and Cross Section Lines 185 (a) (b) (c) Figure 12: Evaluation of the depth of the cross section line segments (a) (b) (c) Figure 13: Evaluation of the normal Here, we show an example of this process in Fig. 14. Fig. 14(a) shows the input cross section lines on the basic 3D shape. Fig. 14(b) shows the new generated 3D shape. Fig. 14(c) shows a rotated view of the generated 3D shape. (a) (b) (c) Figure 14: Deformation by using cross section lines 5. Examples We will now show two examples for modeling a loudspeaker and a voice recorder using our sketch system. Fig. 15 shows a loudspeaker designed using our system by applying shading lines. Fig. 15(a) is an input sketch with shading lines. Fig. 15(b) is the generated basic 3D shape. Figs. 15(c) and 15(e) are the 3D shapes after drawing the contour and shading lines. Figs. 15(d) and

186 K. Kondo et al.: A Sketch Interpreter System with Shading and Cross Section Lines (a) Input sketch with shading (b) Generate 3D shape (c) Draw contour with shading lines (d) deformation (e) Draw contour with shading lines (f) deformation (g, h) Rotate the generated 3D shape Figure 15: A loudspeaker shape designed by our sketch system

K. Kondo et al.: A Sketch Interpreter System with Shading and Cross Section Lines 187 (a) Input sketch with shading (b) Generate 3D shape (c) Draw contour with shading lines (d) Deformation (e) Draw cross section lines (f) Convex deformation (g, h) Rotate the generated 3D shape Figure 16: A voice recorder shape designed by our sketch system

188 K. Kondo et al.: A Sketch Interpreter System with Shading and Cross Section Lines 15(f) are the 3D shapes after the deformation process with shading. Figs. 15(g) and 15(h) are rotated views of the final generated 3D shape. Fig. 16 shows the other example, in which we designed a voice recorder by using our system. Fig. 16(a) is the input sketch with shading lines. Fig. 16(b) is the generated 3D shape with the surface pattern lines. Fig. 16(c) is the 3D shape after drawing the contour and shading lines on its surface. Fig. 16(d) is the generated 3D shape after concave deformation. Fig. 16(e) is the 3D shape after drawing cross section lines on it. Fig. 16(f) is the generated 3D shape after convex deformation. Figs. 16(g) and 16(h) are rotated views of the final generated 3D shape. 6. Conclusions The purpose of our research work is to propose a sketch interpreter system that makes use of shading and cross section lines. The shading is used in the extrusion process for detailed control of the basic surfaces that are created. Also, the shading lines and cross section lines are used to modify the local meshes of the surfaces. The algorithms and implementation are robust and efficient enough for experimental use. Because shading and cross section lines are natural information for concept sketches, designers can quickly evaluate their ideas for designing a new object. Future works will consider ways of enhancing the extrusion algorithm to allow designers to create more detailed surfaces and to use other surface construction techniques such as NURBS or implicit mesh construction methods. References [1] C.Z. Robert, P.H. Kenneth, F.H. John: SKETCH: An Interface for Sketching 3D Scenes. SIGGRAPH 96, 163 170 (1996). [2] T. Igarashi, S. Matsuoka, H. Tanaka: :. Teddy: A Sketching Interface for 3D Freeform Design. ACM SIGGRAPH 99, 409 416 1999) [3] J.A. Landay, B.A. Myers: Interactive Sketching for the Early Stages of User Interface Design. Proceedings of CHI 95, 43 50 (1995). [4] S. Sugishita, K. Kondo, H. Sato, S. Shimada: Sketch Interpreter for geometric modeling. International Conf. of Computer Aided Geometric Design, 1994.7. [5] K. Matsuda, S. Suzuki, K. Kondo: :. Sketch Interpreter System: 3D Modeling System with Handdrawn Shade and Shadow. The Transactions of the Institute of Electronics, Information and Communication Engineers 44(11), 2547 2555 (2003) [6] J.M. Cohen, L. Markosian, R.C. Zeleznik, J.F. Hughes, R. Barzel: An Interface for Sketching 3D Curves. 1999 Symposium on Interactive 3D Graphics, 17 21 (1999). [7] M. Deering: :. The Holosketch VR sketching system. Communications of the ACM 39(5), 54 61 (1996) [8] M.D. Gross, E.Y.L. Do: Ambiguous intentions: A paper-like interface for creative design. UIST 96 Conference Proceedings, 183 192 (1996). [9] D.L. Jenkins: The Automatic Interpretation of Two- Dimensional Freehand Sketches. PhD Thesis, Cardiff University 1992.

K. Kondo et al.: A Sketch Interpreter System with Shading and Cross Section Lines 189 [10] I.J. Grimstead: Interactive Sketch Input of Boundary Representation Solid Models. PhD Thesis, Cardiff University 1997. [11] P.A.C. Varley, R.R. Martin: A System for Constructing Boundary Representation Solid Models from a Two-Dimensional Sketch. Proc. GMP 2000, IEEE Press (2000). [12] H. Hoppe, T. DeRose, T. Duchamp, J. McDonald, W. Stuetzle: Mesh Optimization. SIGGRAPH 93 Conference Proceedings, 19 26 (1993). Received November 8, 2004; final form January 26, 2006