How To Use Design Mentor



Similar documents
Computer Graphics. Geometric Modeling. Page 1. Copyright Gotsman, Elber, Barequet, Karni, Sheffer Computer Science - Technion. An Example.

Computer Graphics CS 543 Lecture 12 (Part 1) Curves. Prof Emmanuel Agu. Computer Science Dept. Worcester Polytechnic Institute (WPI)

NURBS Drawing Week 5, Lecture 10

Modeling Curves and Surfaces

Geometric Modelling & Curves

BEZIER CURVES AND SURFACES

Curves and Surfaces. Goals. How do we draw surfaces? How do we specify a surface? How do we approximate a surface?

CSE 167: Lecture 13: Bézier Curves. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2011

NURBS Drawing Week 5, Lecture 10

A Mathematica Package for CAGD and Computer Graphics

Computer Animation: Art, Science and Criticism

Figure 2.1: Center of mass of four points.

Essential Mathematics for Computer Graphics fast

We can display an object on a monitor screen in three different computer-model forms: Wireframe model Surface Model Solid model

CHAPTER 1 Splines and B-splines an Introduction

Algorithms for Real-Time Tool Path Generation

Content. Chapter 4 Functions Basic concepts on real functions 62. Credits 11

Computer Applications in Textile Engineering. Computer Applications in Textile Engineering

A matrix method for degree-raising of B-spline curves *

Corollary. (f є C n+1 [a,b]). Proof: This follows directly from the preceding theorem using the inequality

Introduction to Computer Graphics

B2.53-R3: COMPUTER GRAPHICS. NOTE: 1. There are TWO PARTS in this Module/Paper. PART ONE contains FOUR questions and PART TWO contains FIVE questions.

Package MBA. February 19, Index 7. Canopy LIDAR data

A Short Introduction to Computer Graphics

Bicycle Math. presented to the Olivetti Club. Timothy E. Goldberg. March 30, Cornell University Ithaca, New York

An Instructional Aid System for Driving Schools Based on Visual Simulation

H.Calculating Normal Vectors

This week. CENG 732 Computer Animation. Challenges in Human Modeling. Basic Arm Model

Blender Notes. Introduction to Digital Modelling and Animation in Design Blender Tutorial - week 9 The Game Engine

How To Draw A 3D Virtual World In 3D Space (Computer Graphics)

EasySTONE Info Sheet

Two hours UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE. M.Sc. in Advanced Computer Science. Friday 18 th January 2008.

Datum > Curve KIM,ME,NIU

Maya 2014 Basic Animation & The Graph Editor

the points are called control points approximating curve

3D Analysis and Surface Modeling

VIDEO SCRIPT: Data Management

Precalculus REVERSE CORRELATION. Content Expectations for. Precalculus. Michigan CONTENT EXPECTATIONS FOR PRECALCULUS CHAPTER/LESSON TITLES

SOLIDWORKS: SKETCH RELATIONS

Angle - a figure formed by two rays or two line segments with a common endpoint called the vertex of the angle; angles are measured in degrees

COMP175: Computer Graphics. Lecture 1 Introduction and Display Technologies

GAME ENGINE DESIGN. A Practical Approach to Real-Time Computer Graphics. ahhb. DAVID H. EBERLY Geometrie Tools, Inc.

3D shapes. Level A. 1. Which of the following is a 3-D shape? A) Cylinder B) Octagon C) Kite. 2. What is another name for 3-D shapes?

2.2 Creaseness operator

Degree Reduction of Interval SB Curves

Dhiren Bhatia Carnegie Mellon University

Seminar. Path planning using Voronoi diagrams and B-Splines. Stefano Martina

Finite Element Formulation for Plates - Handout 3 -

Visualization of 2D Domains

CATIA Wireframe & Surfaces TABLE OF CONTENTS

Visualizing and Animating the Winged-Edge Data Structure

Volumes of Revolution

Computer Animation and the Geometry of Surfaces in 3- and 4-Space

(Refer Slide Time: 1:42)

Curve Fitting with Maple

Introduction Week 1, Lecture 1

Cork Education and Training Board. Programme Module for. 3 Dimensional Computer Graphics. Leading to. Level 5 FETAC

Pro/ENGINEER Wildfire 5.0 Introduction to Surface Modeling

VALLIAMMAI ENGNIEERING COLLEGE SRM Nagar, Kattankulathur

Creating Your Own 3D Models

Exam 1 Sample Question SOLUTIONS. y = 2x

Imaging Systems Laboratory II. Laboratory 4: Basic Lens Design in OSLO April 2 & 4, 2002

CS 4620 Practicum Programming Assignment 6 Animation

Topographic Change Detection Using CloudCompare Version 1.0

Everyday Mathematics. Grade 4 Grade-Level Goals CCSS EDITION. Content Strand: Number and Numeration. Program Goal Content Thread Grade-Level Goal

Understand the Sketcher workbench of CATIA V5.

Procedure: Geometrical Optics. Theory Refer to your Lab Manual, pages Equipment Needed

Everyday Mathematics. Grade 4 Grade-Level Goals. 3rd Edition. Content Strand: Number and Numeration. Program Goal Content Thread Grade-Level Goals

The Essentials of CAGD


Figure 1 - Delta Theta Input Selection

Using MuPAD and JavaView to Visualize Mathematics on the Internet

Cricut Design Space Reference Guide & Glossary

Finite Element Modeling

1 CHORD LENGTH OR UNIFORM PARAMETERIZATION

An Introduction to Point Pattern Analysis using CrimeStat

Basic controls of Rhinoceros 3D software

Pro/ENGINEER Wildfire 4.0 Basic Design

An introduction to 3D draughting & solid modelling using AutoCAD

Curves and Surfaces for Computer Graphics

Chapter 3.8 & 6 Solutions

Computer Aided Design (CAD)

Objectives After completing this section, you should be able to:

Optimizing an Electromechanical Device with Mulitdimensional Analysis Software

Lession: 2 Animation Tool: Synfig Card or Page based Icon and Event based Time based Pencil: Synfig Studio: Getting Started: Toolbox Canvas Panels

Warning! Construction Zone: Building Solids from Nets

Arrangements And Duality

1. Kyle stacks 30 sheets of paper as shown to the right. Each sheet weighs about 5 g. How can you find the weight of the whole stack?

Lecture Notes, CEng 477

521493S Computer Graphics. Exercise 2 & course schedule change

Visualizing Data: Scalable Interactivity

Basic Understandings

A Geometric Characterization of Parametric Cubic Curves

SolidWorks Implementation Guides. Sketching Concepts

Water Flow in. Alex Vlachos, Valve July 28, 2010

CONCEPT-II. Overview of demo examples

Abstract. These two vectors define a plane tangent to the surface at that point. Their cross product is Recent work in computer graphics has been

Transcription:

DesignMentor: A Pedagogical Tool for Computer Graphics and Computer Aided Design John L. Lowther and Ching Kuang Shene Programmers: Yuan Zhao and Yan Zhou (ver 1) Budirijanto Purnomo (ver 2) Michigan Technological University Supported by the National Science Foundation under grants DUE 9653244 and CCR 9696084

Motivation Teaching curves and surfaces is a challenging task Major obstacles: formidable mathematics lack of pedagogical tools Learning curves and surfaces is also a difficult task The concepts are abstract and difficult to visualize; without knowing the details, writing programs to experiment is not easy; and some concepts and algorithms are simply too difficult to implement. There is virtually no tools Yes, there are tools. Most of them are libraries for programming or packages (e.g., MAPLE and Mathematica). These tools are not very helpful for illustrating the fundamentals. So, we designed DesignMentor!

What DesignMentor Is? DesignMentor provides students with an interactive environment for learning, practicing, and visualizing most fundamental concepts and algorithms in curves and surfaces What DesignMentor Is Not? DesignMentor is not a production system for helping students learn design issues and practice design skills.

Overview of DesignMentor DesignMentor supports Bezier, rational Bezier, B spline and NURBS curves and surfaces DesignMentor is portable and supports Windows 95/98/NT, SGI and Sun platforms System Architecture of DesignMentor Graphical User Interface Cross Sectional Design Interpolation/Approximation Curve GLUT OpenGL/Mesa Surface

DesignMentor s Curve System A student can click on the canvas for creating a number of control points and select a curve type (e.g., Bezier). DesignMentor generates the curve DesignMentor can display many important geometric properties Drawing Canvas Control Polygon Moving Triad Tracing Point 1st Derivative Curve Curvature Sphere Tracing Slider Roller Coaster Control Point

De Casteljau s and de Boor s Algorithms DesignMentor can display the convex hull and a step wise execution of de Casteljau s/de Boor s algorithm The computation and visualization are updated on the fly as the curve is being traced Convex Hull Computed Point de Boor Net Computation of de Boor s algorithm. Can be done step wise.

Shape Editing DesignMentor supports shape editing Moving control points: all curves Changing weights of control points: Rational Bezier and NURBS Modifying knots: B spline and NURBS Shape editing is global for Bezier and rational Bezier curves Bezier before after B spline do not change

Modifying Weights (NURBS) Weights can also be modified for rational Bezier and NURBS curves Increasing (resp., decreasing) the weight of a control point pulls (resp., pushes) the curve toward (resp., away from) that point A user selects a control point and changes its weight. The effect is shown on the fly. Before After w = 1 w = 1 w = 0.3 w = 4 NURBS curve of degree 5

Advanced Geometric Algorithms DesignMentor supports 3 advanced algorithms for B spline and NURBS: Knot insertion: inserting a new knot Subdivision: dividing a curve into two Degree Elevation: increasing the degree by 1 Before insertion new control points knots B spline of degree 5 new knot corners cut After insertion new knot

Curve Interpolation DesignMentor also supports curve interpolation and approximation A user clicks data points on the canvas and DesignMentor constructs a B spline curve that contains all points in the given order Under Global Interpolation modifying a data point changes the curve globally. Under Local Interpolation modifying a data point only affects the curve locally. Global Interpolation Local Interpolation Bezier curve of degree 3 data points data points

DesignMentor s Surface System DesignMentor supports Bezier, rational Bezier, B spline and NURBS surfaces. A user indicates the type of a surface and its degrees. DesignMentor generates a flat surface. Then, a user create the desired surface with shape editing operations. control point tracing point move control points domain (u,v) move to trace control net knots

Surface Shape Editing To change the shape of a surface, a user can move control points (all surfaces) modifying knots (B spline and NURBS) change weights (rational Bezier and NURBS) A zero weight means no contribution to the creation of the surface before weight change after weight change w = 1 w = 10 w = 1 w = 0.1

De Casteljau s and de Boor s Algorithms De Casteljau s/de Boor s algorithm for curves can be extended to surfaces Apply the algorithm to each row of control points creating a set of new points, followed by one application of the algorithm to the new points. apply the algorithm to the new points to get this apply the algorithm to each row get this new point

Advanced Geometric Algorithms DesignMentor supports knot insertion, degree elevation and surface subdivision both u and v directions. Each subpatch is color coded v = 0.5 u = 0.75

Cross Sectional Design Cross Sectional Design is a technique of surface design using a number of curves (i.e., profile cross section and trajectory curves) DesignMentor supports the following surface types: Ruled surface: two curves Surface of revolution: one profile curve Swung surface: one profile and one trajectory curve Simple swept surface: one profile and one trajectory curve Skinned surface: a number of profile curves Swept by skinning: one trajectory and a set of (transformed) profile curves The surface system activates the curve system for designing profile and trajectory curves

Ruled Surfaces It takes two curves for designing a ruled surface. The surface is created by joining corresponding points on curves with line segments. first curve line segment second curve (line segment)

Swung Surfaces A swung surface is very similar to a surface of revolution In addition to an axis of revolution, a trajectory curve is required As the profile curve rotates about the axis, it is scaled by the trajectory curve trajectory curve surface is rotated to show the detail axis of revolution profile curve

Skinned Surfaces A skinned surface requires a set of profile curves DesignMentor constructs a B spline surface to contain all given curves Thus, skinning is a form of inter polation (of curves) profile curves (circles)

Swept by Skinning DesignMentor can construct complex swept surfaces via skinning A master profile curve is required Instances of this master curve are placed along the trajectory curve and can be rotated and scaled Then, skinning is applied master profile transformed masters

Interpolation and Approximation DesignMentor supports global and local interpolation and global approximation for regular grid data point grid global interpolation compare the resulting surfaces local interpolation global approximation compare the resulting surfaces compare the resulting surfaces

Curve Network Interpolation DesignMentor supports interpolation on a curve network A user can design a curve network with DesignMentor or other system Then, DesignMentor interpolates the curve network with a surface, the Gordon Surface curve network Gordon surface

Future Work More visualization of geometric properties (e.g., tangent plane, normal vector, curvature sphere, umbilic, Dupin indicatrix,...) Triangular and multi sided patches Curve and surface interrogation Subdivision scheme The Blossoming Principle Irregular data interpolation and approximation