Alias Studio Concepts
Alias Studio Concepts
AliasStudio Concepts
March 2008
2008 Autodesk, Inc. All Rights Reserved. Except as otherwise permitted by Autodesk, Inc., this publication, or parts thereof, may not be reproduced in any form, by any method, for any purpose. Certain materials included in this publication are reprinted with the permission of the copyright holder. Trademarks The following are registered trademarks or trademarks of Autodesk, Inc., in the USA and other countries: 3DEC (design/logo), 3December, 3December.com, 3ds Max, ActiveShapes, Actrix, ADI, Alias, Alias (swirl design/logo), AliasStudio, Alias|Wavefront (design/logo), ATC, AUGI, AutoCAD, AutoCAD Learning Assistance, AutoCAD LT, AutoCAD Simulator, AutoCAD SQL Extension, AutoCAD SQL Interface, Autodesk, Autodesk Envision, Autodesk Insight, Autodesk Intent, Autodesk Inventor, Autodesk Map, Autodesk MapGuide, Autodesk Streamline, AutoLISP, AutoSnap, AutoSketch, AutoTrack, Backdraft, Built with ObjectARX (logo), Burn, Buzzsaw, CAiCE, Can You Imagine, Character Studio, Cinestream, Civil 3D, Cleaner, Cleaner Central, ClearScale, Colour Warper, Combustion, Communication Specification, Constructware, Content Explorer, Create>what's>Next> (design/logo), Dancing Baby (image), DesignCenter, Design Doctor, Designer's Toolkit, DesignKids, DesignProf, DesignServer, DesignStudio, Design|Studio (design/logo), Design Your World, Design Your World (design/logo), DWF, DWG, DWG (logo), DWG TrueConvert, DWG TrueView, DXF, EditDV, Education by Design, Exposure, Extending the Design Team, FBX, Filmbox, FMDesktop, Freewheel, GDX Driver, Gmax, Heads-up Design, Heidi, HOOPS, HumanIK, i-drop, iMOUT, Incinerator, IntroDV, Inventor, Inventor LT, Kaydara, Kaydara (design/logo), LocationLogic, Lustre, Maya, Mechanical Desktop, MotionBuilder, Mudbox, NavisWorks, ObjectARX, ObjectDBX, Open Reality, Opticore, Opticore Opus, PolarSnap, PortfolioWall, Powered with Autodesk Technology, Productstream, ProjectPoint, ProMaterials, Reactor, RealDWG, Real-time Roto, Recognize, Render Queue, Reveal, Revit, Showcase, ShowMotion, SketchBook, SteeringWheels, StudioTools, Topobase, Toxik, ViewCube, Visual, Visual Bridge, Visual Construction, Visual Drainage, Visual Hydro, Visual Landscape, Visual Roads, Visual Survey, Visual Syllabus, Visual Toolbox, Visual Tugboat, Visual LISP, Voice Reality, Volo, Wiretap, and WiretapCentral The following are registered trademarks or trademarks of Autodesk Canada Co. in the USA and/or Canada and other countries: Backburner, Discreet, Fire, Flame, Flint, Frost, Inferno, Multi-Master Editing, River, Smoke, Sparks, Stone, and Wire All other brand names, product names or trademarks belong to their respective holders. Disclaimer THIS PUBLICATION AND THE INFORMATION CONTAINED HEREIN IS MADE AVAILABLE BY AUTODESK, INC. "AS IS." AUTODESK, INC. DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE REGARDING THESE MATERIALS. Published by: Autodesk, Inc. 111 Mclnnis Parkway San Rafael, CA 94903, USA
Contents
AliasStudio Concepts . . . . . . . . . . . . . . . . . . . . . . . . 1
Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 History of splines . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Mathematical representations of curves . . . . . . . . . . . . . . . 3 NURBS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 Curves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 CVs, hulls, and edit points . . . . . . . . . . . . . . . . . . . . . . 6 Moving edit points vs. moving CVs . . . . . . . . . . . . . . . . . 8 Multi-knots and CV multiplicity . . . . . . . . . . . . . . . . . . . 8 Rational vs. non-rational geometry . . . . . . . . . . . . . . . . . 9 Constructing quality curves . . . . . . . . . . . . . . . . . . . . . 10 Blend curves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Keypoint curves . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Surfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Isoparametric curves . . . . . . . . . . . . . . . . . . . . . . . . 15 Patches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 What NURBS surfaces cant do . . . . . . . . . . . . . . . . . . . 17 Curves-on-surface . . . . . . . . . . . . . . . . . . . . . . . . . . 18 Trimming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 Shells . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 Object properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 Degree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 Parameters and parameterization . . . . . . . . . . . . . . . . . . 21
iii
Normals . . . . . . . . . . . . . . . . . . . . . . . Pivot points . . . . . . . . . . . . . . . . . . . . . Construction history . . . . . . . . . . . . . . . . Modeling concepts . . . . . . . . . . . . . . . . . . . . Absolute and relative addressing . . . . . . . . . . Momentary and Continuous buttons . . . . . . . . Curvature . . . . . . . . . . . . . . . . . . . . . . Laying out curves and surfaces . . . . . . . . . . . Continuity . . . . . . . . . . . . . . . . . . . . . . Creating and measuring curvature continuity . . . New Method of Curvature Continuity Evaluation . The construction plane . . . . . . . . . . . . . . . Dynamic Shape Modeling . . . . . . . . . . . . . . Meshes . . . . . . . . . . . . . . . . . . . . . . . . . . . What is a mesh? . . . . . . . . . . . . . . . . . . . Difference between meshes and polysets . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. 23 . 26 . 27 . 28 . 28 . 29 . 29 . 30 . 34 . 37 . 39 . 47 . 48 . 55 . 55 . 56
Chapter 1
Rendering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
The rendering workflow . Shaders . . . . . . . . . Shading models . . . . . Textures . . . . . . . . . Rendering methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 . 60 . 60 . 61 . 61
Chapter 2
Animation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Animation in AliasStudio . . . . . . . . . . . . . . . . . . . . . . . . . 63 Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Chapter 3
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Introduction to Data Transfer . . . . . . . . . . . . . . . . . . Learn how Solid Modeling Theory works . . . . . . . . . . . . Learn the Solid Modeling workflow . . . . . . . . . . . . . . . Learn about the tolerance requirements for Solid Modeling . . Learn how to get the topology right before transferring data . . . . . . . . . . . . . . . . . . . . . . 65 . 66 . 67 . 68 . 69
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
iv | Contents
AliasStudio Concepts
Background
Explains the origin and meanings of some of the basic concepts used in AliasStudio.
Points
A point is a location defined by three spatial coordinates. It has no size. The most basic visual entity is the point. The point has no size, but it has a location. To determine the location of points, we first establish an arbitrary point in space as the origin. We can then say a points location is so many units left (or right) of the origin, so many units up (or down) from the origin, and so many units higher (or lower) than the origin.
These three numbers give us the 3D coordinates of the point in space. For example, a point 7 units right, 4 units down, and 3 units above the origin has the 3D coordinates (7,4,3). To specify points on the opposite side of the origin, we use negative numbers. In the example, a point at (-5, -2, -1) would be 5 units left of the origin, 2 units up, and 1 unit below.
In computer graphics, we dont really say the point is left/right, up/down, or higher/lower. Instead we call the three dimensions the X axis, the Y axis, and the Z axis.
History of splines
Describes the history of the representations of curves, from shipbuilding to modern computer modeling. Splines are types of curves, originally developed for ship-building in the days before computer modeling. Naval architects needed a way to draw a smooth curve through a set of points.
The solution was to place metal weights (called knots) at the control points, and bend a thin metal or wooden beam (called a spline) through the weights. The physics of the bending spline meant that the influence of each weight was greatest at the point of contact, and decreased smoothly further along the spline. To get more control over a certain region of the spline, the draftsman simply added more weights. This scheme had obvious problems with data exchange! People needed a mathematical way to describe the shape of the curve. Cubic Polynomials Splines are the mathematical equivalent of the draftsmans wooden beam.
Polynomials were extended to B-splines (for Basis splines), which are sums of lower-level polynomial splines. Then B-splines were extended to create a mathematical representation called NURBS, which are used by AliasStudio.
Polynomial equations
Starting with the simplest mathematical representation, we all remember from geometry class that we can represent a (two dimensional) line with an equation like y = 2x. For each value of x, we multiply it by 2 to get the value of y, and plot the two values on a graph. The generalized form of this type of equation is ax + by = c. The expression to the left of the equals sign is called a polynomial (poly means many. It refers to the fact that the expression has more than one term). We can make more complicated expressions where x is multiplied by itself, as y = x * x * x. Instead of writing out all the xs in a term, we usually just count them and write the count as a superscript. The superscript is called the exponent. So the expression above is written as y = x3. We can write polynomials with exponents, such as: y = ax2 + bx + c (You may recall from math class that this is a quadratic equation). The exponent (the 2) on the first occurrence of x means that the graph of this function is curved rather than straight.
Degree
The degree of a polynomial equation is the largest exponent in the equation. Recall that the largest exponent on the equation for a line was 1. (When a term has no visible exponent, that is the same as an exponent of 1.)
The degree of a linear equation is 1. A quadratic equation, which has a term x2, is degree 2. A cubic equation, which has a term x3, is degree 3, and so on.
Background | 3
Parametric representations
There are two general ways to write an equation for a curve. The implicit representation combines every variable in one long, non-linear equation, such as: ax3 + by2 + 2cxy + 2dx +2ey +f = 0. In this representation, to calculate the x and y values to plot them on a graph, we must solve the entire non-linear equation. The parametric representation rewrites the equation into shorter, easily solved equations that translate one variable into values for the others: x = a + bt + ct2 + dt3 + ... y = g + ht + jt2 + kt3 + ... Using this representation, the equations for x and y are simple. We just need a value for t, the point along the curve for which we want to calculate x and y. You can visualize parametric curves as being drawn by a point moving through space. At any time t, we can calculate the x and y values of the moving point. This is a very important point, because the concept of associating a parameter number with every point on the line is used by many tools. This corresponds to the U dimension of the curve.
Smooth joins
A type of curve developed in the auto industry and familiar to anyone who works with common illustration programs is the Bezier curve. Bezier curves combine cubic curve segments, each with four control points (the start and end points, and two handles). The problem with Bezier curves is that the joins between segments are not necessarily smooth. The solution to this problem, used by NURBS, is to use the last control points of the previous span as the first control points of the current span. This ensures smooth joins between curve segments. (Bezier curves can still be simulated perfectly using NURBS curves with multi-knots). The degree of the curve determines the smoothness of the joins between spans. Degree 1 (linear) curves give positional continuity at the join. Degree 2 (quadratic) curves give tangent continuity. Degree 3 (cubic) curves give curvature continuity.
NURBS
Describes the meaning of NURBS, the curve and surface representation used for modeling in AliasStudio. NURBS stands for Non-Uniform Rational B-Splines.
Non-Uniform refers to the parameterization of the curve. Non-Uniform curves allow, among other things, the presence of multi-knots, which are needed to represent Bezier curves. Rational refers to the underlying mathematical representation. This property allows NURBS to represent exact conics (such as parabolic curves, circles, and ellipses) in addition to free-form curves. B-splines are piecewise polynomial curves that have a parametric representation.
For more information on NURBS objects, see the following: Curves on page 6 Surfaces on page 15 Object properties on page 20
Background | 5
Curves
Describes curves as they appear in the AliasStudio interface.
CVs
CVs (control vertices) control how the curve is pulled from a straight line between edit points. They are the most basic and important means for controlling the shape of a curve. Lines between consecutive CVs form the control hull. You cannot add CVs to the interior of a curve: there is always a set number of CVs for each span. The number of CVs is equal to the degree of the curve plus one. So, for example, a degree 3 curve has four CVs per span. AliasStudio draws CVs differently to let you tell the difference between the start and the end of a curve. The first CV (at the start point of the curve) is drawn as a box. The second CV is drawn as a small U, to show the increasing U dimension from the start point. All other CVs are drawn as small Xs.
Multiple spans
Longer and more complex curves require more than a single span curve. As you draw what appears to be a single long curve, AliasStudio is actually adding several curve spans together. The last CV of the previous curve span become the first CV of the next curve span, creating very smooth transitions between the curve segments.
Edit points
You can tell when a curve is made from multiple spans in several ways. One is to look for edit points on the curve. Edit points mark the connection point between two spans. AliasStudio draws edit points as small crosses. Unlike the on-curve control points of Bezier curves (used in many 2D illustration programs), NURBS edit points are not usually used for editing curves. CVs control the shape of a NURBS curve, and edit points are just indicators of how many spans a curve has. There are, however, a few tasks that use edit points:
If you want more control in a curve, you can insert an edit point to increase the number of spans in the curve and give you more CVs to work with. You can also delete edit points to decrease the number of spans in a curve (and probably change the shape of the curve). It is possible to move edit points to change the shape of a curve, but you should avoid doing this except for minor adjustments. AliasStudio does not actually move the edit point itself, but instead moves the CVs to reshape the curve so the edit point is where you specified.
Hulls
As a curve gets more spans/edit points, you might lose track of the order of the CVs. To show the relationship between CVs, AliasStudio can draw lines between them. These lines are called hulls. (AliasStudio also provides other feedback to show the order of CVs. For example, when you pick a CV, AliasStudio highlights its span within the curve.)
Curves | 7
For example, a degree 3 curve normally has curvature continuity (G2) at edit points.
If you create a multi-knot of two edit points, you lose automatic curvature continuity, so you only have tangent continuity (G1) at the multi-knot. If you create a multi-knot of three edit points, you lose both automatic curvature and automatic tangent continuity, so you only have positional continuity (G0) at the multi-knot. NOTE Only the intrinsic continuity is lost. As with Bezier curves, clever placement of CVs can restore continuity.
AliasStudio only creates full multiplicity knots, i.e. knots which have a multiplicity equal to the degree of the curve.
It may not be transferable to downstream CAD packages that cant deal with complex descriptions It can be slower to manipulate when modeling, and slower to render.
The following tables lists the differences between the two types of geometry. Nature
Non-rational
Pros
More flexibility for transformations.Faster. Precise geometry (that is, exact conics).
Cons
Sacrifices some precision for modeling flexibility. Weighted CVs not supported by many CAD packages.Weighted CVs harder to manipulate.Creates multi-knots.Slower to display and render.
Rational
Curves | 9
This illustration shows two circles drawn with the two types of geometry.
The circle on the left is a non-rational curve with CVs that are all weighted equally. To have a non-rational curve, all weights must be 1.0. The circle on the right is a rational curve with different weights applied to the CVs, and multi-knots.
If you attach a radius measurement to the circles, you will see that the non-rational circle is not a perfect circle (although it is pretty close): it has different radii depending on where you measure. The rational circle is a perfect circle. Attach curve curvature combs to the circles. The curvature on the non-rational circle on the left varies. The curvature of the rational circle on the right is constant.
Simple curves
Use the simplest curves that can describe the shape you want. Simpler curves mean simple, faster rendering surfaces.
1 Begin a curve by drawing a single span. 2 Move the CVs to achieve the shape you want. 3 If you cant achieve the shape, add an edit point to create more CVs. 4 Continue until you have the shape you need. This iterative process ensures your curve only has as many spans as are absolutely necessary. You can also use the Rebuild curve tool to simplify existing curves. The tool can simplify a curve while maintaining its shape within a tolerance you set.
Parameterization
It is often best to build curves with uniform parameterization, because it makes inserting edit points and detaching curves at exact locations easier.
When drawing Edit point curves with Uniform parameterization, the resulting CVs may be placed awkwardly. To fix this, move the CVs to prevent crossing hull lines. Try to consistently use either Uniform or Chord length parameterization when drawing curves. If you mix and match curve styles, it could result in cross knot insertion when the curves are used to build a surface.
Intersections
Some surfacing tools require curves to intersect:
To draw intersecting curves, use curve snapping (hold down Ctrl + Alt, or click the curve snapping button curve to the right of the prompt line).
Curves | 11
Pick an edit point and use the Move tool with curve snapping. Use the Object editor with curve snapping.
Blend curves
Describes the features and concepts behind blend curves, which allow you to create curves by specifying constraints on their shape. Palette tool: Curves > Blend curve toolbox. Blend curves provide higher-level, simpler methods for shaping and manipulating curves. They provide a level of abstraction on top of the actual geometry of the curve. Blend curves let you focus on what the curve needs to do, and have the system calculate the right curve to fulfill those requirements.
Blend curves are normal NURBS curves with more construction history: you can use all the normal curve tools on blend curves, and when you are not using blend curve tools, they look like any other curve. Blend curves are controlled by blend points acting as constraints:
what points in space the curve should pass through, which surfaces it should be tangent to, which existing curves the blend curve should intersect, what direction it should be travelling at a certain point,
...and so on. AliasStudio draws the curve to satisfy the constraints, and automatically updates the curve when the constraints, or the objects the curve is constrained to, change.
Location: forces the curve to pass through the blend points location in space. This is the type you create when you first draw a blend curve. Direction: forces the curve to pass through the blend points location in space travelling in a certain world space direction. There are two sub-types of direction:
Directed: you set an actual direction for the curve tangent. Use this type when the specific tangent direction at the point of the blend point is important.
Curves | 13
Parallel: you set a line along which the curve passes (in either direction) at the blend point. This is easier to enforce and results in better curve continuity.
Geometry: forces the curve to pass through a point on a curve or surface and travel in a direction relative to that curve or surface.
The following table shows the icons used to represent the different constraints: Type Not attached Attached to blend curve Attached to regular curve
Location
Direction
Keypoint curves
Describes the concepts behind keypoint curves, which allow you to create CAD-like lines and arcs.
Overview
Keypoint curves retain more information than other curves. They remember relationships and constraints, and apply them when you edit the lines. You can also edit these special attributes in the Information Window. For example, a keypoint arc has edit points and CVs just like a normal curve, but it also has a radius, sweep angle, and center point, all of which can be edited. During editing, the arc stays an arc: it will not lose its shape from keypoint editing.
When you combine keypoint curves into composite curves (for example, with the Line-arc tool), relationships between the individual lines and arcs are still maintained.
Keypoint curve tools create guidelines, which are very useful for aligning curves with each other as you draw. Keypoint curves are especially useful for CAD and drafting applications. However, any part of your model requiring geometric accuracy or ease of editing will benefit from keypoint curves. NOTE Most tools that work on normal curves also work on keypoint curves.
Surfaces
Describes how isoparametric curves, U and V coordinates, and possible trims combine to form a surface.
Isoparametric curves
Isoparametric curves are line running along the surface in the U and V directions, showing the shape of the surface as defined by the CVs.
Surfaces | 15
AliasStudio draws a NURBS surface as a mesh of curves, called isoparametric curves, running in the U and V directions. Isoparametric curves are sometimes called isoparms. Unfortunately, the term isoparametric curve is used to describe two related but subtly different features of a surface:
This is the type of isoparametric curve created by the Insert tool. Adding this type of isoparametric curve actually changes the geometry of the surface. You can only delete an isoparametric curves of this type. Using this definition, a surface has the same number of isoparametric curves in the U and V directions as it has edit points.
You can increase the number of this type of isoparametric curve that is drawn for a surface with the Patch precision tool. Using this definition, a surface has an infinite number of isoparametric curves.
You can use these isoparametric curves to help you understand the surface shape, but the system doesnt use them to represent the surface internally.
Patches
Patches are the regions between adjacent edit point isoparametric curves. The four-sided regions between adjacent edit point isoparametric curves or edges are called patches. You rarely need to think about patches, since the focus in AliasStudio is on the isoparametric curves. One tool that works with patches is the Patch precision tool, which sets how many U and V isoparametric curves are drawn for each patch.
Topologies that are not equivalent to a rectangular sheet. Spheres, cones, tori, and triangles can all be built from sheets by attaching or collapsing sides. But more complex shapes, for example a star shape, cannot be represented with a simple NURBS surface. To get a complex surface outline, you must use a trimmed surface or a network or collection of four-sided surfaces. Holes. To create a hole in a surface, use a trimmed surface. Surfaces that cannot be mapped with regular U and V coordinates. For example, you can model the shape of a Mobius strip, but the surface will have a seam.
Surfaces | 17
Curves-on-surface
Curves-on-surface are special curves the exist on a surface, and are used mostly for defining the line along which to trim the surface. Curves-on-surface are special curves that are drawn in the UV space of a surface, rather than in the XYZ space of the scene. Curves-on-surface do not have CVs. They are controlled by moving on-curve edit points. You can create curves-on-surface by drawing directly on the surface, by projecting existing curves onto a surface, and by intersecting existing geometry with a surface. Curves-on-surface are usually used to trim surfaces, or to form the edge of new surfaces.
Trimming
Describes the process of trimming, through which you can alter the visible shape of a surface by trimming away parts. Since NURBS surfaces are intrinsically four-sided and do not allow holes, you need a way to visually simulate irregular shapes and holes when using NURBS. The answer is trimming. Trimming lets you visually cut or divide a surface along a curve-on-surface so it appears to have holes or missing pieces. The trimmed surface, however, is not actually cut. It exists in a hidden form that does not render or affect modeling. You can recover the trimmed part of a surface using the Untrim tool. Creating curves-on-surface and then trimming is the most common way to combine NURBS surfaces in industrial design.
Shells
Shells are a special type of surface or collection of surfaces you can use for special modeling operations, or for export to solid modeling packages. Shells are collections of adjacent NURBS surfaces. Every surface stitched into a shell must meet the edge of another surface in the shell at some point. Shells are stored as a single node in the DAG. Shells can be open or closed. For closed shells, the normals should always point outward. This is necessary for the Boolean operations.
To improve data transfer to some CAD packages. Some CAD packages deal with shells much better than normal trimmed NURBS surfaces. To prepare for Boolean operations. The Boolean tools (Shell subtract, Shell intersect, and Shell union) only work on shells. Often you will simply stitch surfaces into shells, apply a boolean operation, then unstitch back into surfaces. To check adjacencies between surfaces. Surfaces can only be stitched into shells if they are within an adjacency tolerance. If the tolerance is set correctly, you can easily check whether a group of surfaces will export or build properly by checking whether they will stitch together into a shell.
To identify open edges in stitched shells: Use Object edit > Query edit to check for open edges in shells. Red arrows clearly mark gaps in the shell.
Depending on the options in the Shell stitch option window, a stitched shell may not match the original surfaces exactly. In this case, unstitching will not produce surfaces that match the originals exactly either. You can not edit CVs of a shell. If you need to reshape the surface of a shell, you must unstitch the shell.
Surfaces | 19
You cannot use the isoparametric curves of shell surfaces as input for other tools. You cannot maintain continuity with a shell in tools such as Square and Rail Surface. You cannot create fillet surfaces on shells or between shells and other surfaces. If you stitch an object, then scale it, then unstitch it, you not be able to re-stitch the object. This is because the scaling operation can increase the gaps between surfaces, thereby causing any subsequent stitch operations to fail (within the current tolerance settings). In this case, scale the object before you first stitch it.
Object properties
Explains the properties common to NURBS objects.
Degree
Degree is a mathematical property of a curve or of a surface dimension that controls how many CVs are available for modeling.
The number of CVs for each curve span is controlled by the degree of the curve. The default curve type in Studio is degree 3, which has four CVs for the first curve span. You can choose to have fewer CVs per span, or, if you have an advanced version of Studio, you can create curves with more than four CVs per span.
Degree 1 creates curves or surfaces with straight lines. Degree 2 curves or surfaces do not automatically have smooth transitions between spans or patches. Degree 3 is the default degree for new curves and surfaces.
Degree 5 and degree 7 curves are generally used in automotive design. They are slower, but give you smoother curves, better internal continuity, and more control.
The degree of your curves can affect data transfer to CAD packages. Some other packages cannot accept curves with degree higher than 3. Surfaces can have different degrees across their width and length. So, for example, a surface could be degree 3 along its width, and degree 5 along its length.
What is parameterization?
The method Studio uses to number the points along a curve is called the curves parameterization. Studio has two parameterization methods: uniform and chord-length.
Object properties | 21
Each method has advantages and disadvantages depending on how the curve will be used. You can choose which parameterization method to use when you create a new curve, and you can rebuild existing curves to use a specific parameterization.
Uniform
Uniform parameterization assigns integral parameter values to the edit points, and evenly distributes parameters along the spans between edit points. So the first edit point is always parameter 0.0, the second edit point is always 1.0, the third is always 2.0, and so on. A bonus feature of uniform parameterization is that the parameter value of the last edit point is the also the number of spans in the curve. However, unlike chord-length parameterization, the parameters of a uniform curve have nothing to do with the actual length of the curve.
Chord-length
Chord-length parameterization assigns parameter 0.0 to the start of the curve, then increases the parameter value proportionally to the chord length, or the shortest linear distance, between the surrounding edit points. Unlike uniform parameterization, the parameters of a chord-length curve are irregularly spaced between the edit points, and the edit points do not have integral parameters.
Comparison
Each parameterization method has advantages and disadvantages, depending on how you will use the curve or surface. Type
Chord-length
Pros
Parameter value gives some indication of the points relative position along the curve.Minimizes stretching and squeezing of textures. Easy to reckon parameters (for example, 1.5 is about half-way between edit points at 1.0 and 2.0).
Cons
Parameters are not obvious.Surfaces built from chord-length curves can be more complex because of cross-knot insertion. In many cases, interpolation between edit points is not as good.Can lead to unpredictable stretching of textures during rendering.
Uniform
Just as with degree, surfaces can have different parameterization methods for their U and V dimensions. For example, the U isoparms of a surface can be degree 3 with uniform parameterization, while the V isoparms are degree 1 with chord-length parameterization.
Normals
Normals are imaginary lines perpendicular to each point on a curve or surface.
The direction of U and V isoparms on a surface determines the direction of the surfaces normals.
Object properties | 23
Normals are a mathematical side-effect of NURBS.They are often used as a way of specifying which side of a surface points inside or outside (for example, when creating shells). Normals are also an indirect indicator of the shape of a curve or surface. Since they are always perpendicular to the curve or surface, the way normal lines point toward or away from each other can reveal subtle curvature. Starting with AliasStudio 13.5, we treat surface sidedness differently from in the past. Previously, sidedness has been a geometric concept based on the so-called right hand rule, and has been dictated by the U and V directions of surfaces and the triangle vertex ordering of meshes. This has had unintended consequences for users, in that the front and back of surfaces were subject to the way U and V directions happened to be, and operations like negative scaling and mirroring would tend to turn surfaces inside out.
Starting in 13.5, surface orientation is controlled not only by handedness and transformation, but also by the Opposite flag that has, until now, only been part of the rendering workflow, and is shown in the Render Stats window. So the Orient Normals tool leaves handedness and transformations alone, and sets the Opposite flag appropriately. The Opposite flag is also used and set by other operations, such as Zero Transform.
This allows orientation to be controlled independently of handness and transformation. Flipping orientation no longer involves transposing UVs, and so it is possible to preserve history. Also, surfaces can now be reoriented without flipping texture maps, something that would happen if you transposed UVs. Having better control of orientation means that orientation sensitive operationsa long list including ambient occlusion, surface offset, mass properties, and STL outputare now more reliable. You can see for yourself how this works by creating some simple geometry (a plane primitive in what follows) and turning on the Multi Color diagnostic shade (the blue icon), along with Show Reversed Normals. Open Windows > Information > Information window and Render > Editors > Render stats. The top of the plane should be blue, the underside yellow. If you flip the Opposite flag in the Render Stats Window, the color should change. If you add a negative sign to the X component of Scale in the Information Window Transform Info, the color will not change. Leave the scale negative, then choose Transform > Zero transforms. The color still does not change. But note that the Opposite flag has changed. If you perform this experiment in AliasStudio 13, you will get quite different behavior. In AliasStudio 13 the Opposite flag is ignored, except for rendering. And a negative scale affects orientation. Also examine the Reverse Direction option box, which has a new default option, Reverse Normal Direction.
Object properties | 25
If you use this, the UVs are unchanged, but the Opposite flag toggles on or off. In fact, there's no difference between choosing Reverse Normal direction and toggling the Opposite flag. What is the result? AliasStudio 13.0 and 13.5 are not compatible with respect to orientation. The exportBakedOrientation plug-in can be used to export oriented geometry so that it has the same orientation in 13.0 and earlier. However, the exported file will have zeroed transforms, and no history. Changes have been made to some data translators. The main change is that orientation will be baked into geometry, by swapping UVs and reversing mesh winding (the baking occurs in the exported file, not the Studio geometry).
Pivot points
The pivot point is the point around which an object rotates and scales, and which represents the point location of the object when it moves. When you pick objects in the view windows, you can see a small blue-green dot associated with every object. This is the pivot point of the object.
Pivot points allow you to control how objects rotate and scale, and also represent the exact locations of objects in space. All transformations to an object are relative to the pivot point: Transformation
Move
Relationship to Pivot
Moves the pivot point (and the object travels along with it).
Transformation
Scale
Relationship to Pivot
Scales object out from or in toward the pivot point.
Rotation
There are actually two separate pivot points: one for rotation and scale, and one for movement. They can be separated by using Transform > Local > Set Pivot. Placing the two pivots at different locations can be useful for creating animations, where you may want the movement of an object to follow a path while it rotates or scales about another point.
Construction history
Construction history is the saved information about how an object was created. When you edit the construction history the object will automatically update. For almost every tool, AliasStudio gives you the option of saving the history of how an object was constructed. This means you can edit the curves, surfaces, manipulators, tool options, and so on that were used to create an object, and the object will automatically update. For example, when you use the Revolve tool to create an object with construction history, you can:
reshape and edit the curves you revolved... re-display the construction manipulator that created the revolved surface...
...and the surface(s) will update automatically. To create construction history when working with tools, turn on the Create History option in the option window. This option is on by default in all tools.
Object properties | 27
Objects that have construction history are drawn in green in the default color scheme. NOTE If a surface or curve has been built with construction history, it cannot be moved, scaled, or rotated even if its constructor objects are transformed along with it.
Modeling concepts
Describes general and AliasStudio specific concepts that you will use when modeling.
For example, if an object is rotated to 45 degrees on both the x and y axes, and you want to rotate the object an additional 4 degrees on the x axis relative to its current position, the rotational amount would be input as 4, 0, 0 followed by pressing the Enter key. The zero values for the y and z axes result in no positional adjustment on these two axes. Once again, trailing zero values can be omitted. In this case, typing 4 followed by the Enter key at the prompt line achieves the same result as well, since the relative rotational change for both the y and z axis are null. To switch back to the absolute addressing mode at any time, enter the lower case letter a followed by the translation values. NOTE The addressing mode switch (a or r) can also be typed, followed by pressing the Enter key, without typing in any values.
Curvature
Curvature is a measure of how much a curve curves.
Modeling concepts | 29
Curvature is measured by fitting a circle into the curve, then taking the reciprocal of the circles radius. In the illustration at left, at point x, the curve is best described by a circle with radius r. At this point, the curvature is 1/r. (We use the reciprocal, 1/r, instead of just r because a flat line has an infinite radius. Taking the reciprocal gives us 0 instead of infinity.)
Several tools in AliasStudio, such as the Locators > Curve curvature tool, allow you to display a comb plot of a curves curvature. At regular points along the curve, the tool samples the curvature, and draws a line (sometimes called a quill because it looks like a spine on the back of a porcupine). The length of the line represents the curvature value at that point.
Introduction
For all but the very simplest models, you will not want to create the entire model using a single surface. Sometimes the choice of boundaries between separate surfaces will be obvious. But in cases where there is no clear natural boundary, you will have to decide how to break up a large-scale areas into individual surfaces. This is decision is a bit of an art, with different modelers making different decisions to emphasize different priorities. In this topic, we will attempt to give you a broad overview of the process.
The shape on the left has low curvature. The shape in the middle has high curvature. The shape on the right has two changes in curvature. You will want to break up large-scale areas into areas of low curvature and high curvature at the points where the curvature begins to increase.
Low curvature
In areas of low curvature, not as many CVs are needed to describe the shape, so you can use a single span and a lower degree curve. Using separate surfaces for these areas lets you use simpler geometry.
High curvature
In areas of high curvature, you will want more CVs to describe the shape more accurately. Using separate surfaces in these areas lets you use high degree surfaces or multiple spans to get more CVs. Note that even if you can get away with describing the shape with a small number of CVs, the CVs may be doing too much work. That is, each CV is responsible for controlling such a large area of the curve or surface that making small changes to the curve or surface later will be very difficult.
Changes in curvature
You will want to break up shapes where the curvature changes direction (called inflections, shown below on the left), and where curvature begins to change (shown below on the right).
Modeling concepts | 31
CV distribution
In each case, breaking the model up involves maximizing the use of CVs. That means creating conditions where no CVs are overworked (having too much influence on the shape of the curve or surface), and the CVs have a smooth distribution, both of which make maintaining shape and continuity easier.
Overworked CVs
Overworked (or high tension) CVs are CVs that are distant from the curve they control, or have a significant influence on the shape of their curve or surface. In the following simplified example, the second CV in the curve on the left is clearly doing a lot of work: its almost solely responsible for pulling the shape of the curve to the left.
This makes editing the shape of the curve difficult. Because a single CV is largely responsible for the shape of a section of the curve (marked below), and any reshaping you want to do anywhere within section must be accomplished by moving that one CV.
This leads to extremely minute and frustrating adjustments of the CV, as you find each movement affects a larger area than just the small part of the curve you wanted to improve. Using separate curves (as shown below on the right) immediately improves the situation. Now each CV in both curves is exerting roughly the same amount of influence.
Has consistent direction change along hulls, with no zigzags, W shapes, or pronounced peaks.
Modeling concepts | 33
Continuity
Continuity is a measure of how well two curves or surfaces flow into each other. Palette tool Curves > Blend curve toolbox.
To get more visual smoothness at intersections, increase the level of continuity. To increase the amount of flexibility available to achieve high levels of continuity, increase the curve degree.
Types of continuity
Continuity is a mathematical indication of the smoothness of the flow between two curves or surfaces. The following lists the five types of continuity possible with AliasStudio tools, G0 to G4. Note that G3 and G4 continuity are only available with blend curves.
Positional (G0)
The endpoints of the two curves meet exactly. Note that two curves that meet at any angle can still have positional continuity.
Tangent (G1)
Same as positional continuity, plus the end tangents match at the common endpoint. The two curves will appear to be travelling in the same direction at the join, but they may still have very different apparent speeds (rate of change of the direction, also called curvature).
For example, in the illustration at left, the two curves have the same tangent (the double-arrow line) at the join (the dot). But the curve to the left of the join has a slow (low) curvature at the join, while the curve to the right of the join has a fast (high) curvature at the join.
Curvature (G2)
Same as tangent continuity, plus the curvature of the two curves matches at the common endpoint. The two curves appear to have the same speed at the join.
Modeling concepts | 35
Curvature with constant rate of change of the rate of change of the curvature (G4)
Same as G3 continuity, plus the rate of change of the rate of change of the curvature matches between the curves. This is the smoothest type of join.
The concept of rate of change of the rate of change may be hard to conceptualize. Consider the following graphs:
In graph A on the left, the value of x does not change, so the rate of change of x is 0.
In graph B in the middle, x has a constant rate of change, which we can calculate as the slope of the line. In graph C on the right, the rate of change is not constant: it is slow at first, then fast, then slow again. The rate at which the rate of change itself changes is the rate of change of the rate of change.
Here R1 and R2 are the radii of curvature of the two surfaces at a matching point on their boundary.
Modeling concepts | 37
See New Method of Curvature Continuity Evaluation on page 39 for more information on this new way to compute curvature. This calculation is carried out at several points (called checkpoints) across the boundary. Each deviation value is compared to the Continuity curvature tolerance given in the Tolerances:Continuity section of Preferences > Construction Options. If at least one of the deviation values is larger than the tolerance, then we say that the surfaces are not curvature continuous. As you can see, the curvature continuity test may succeed or fail depending on the tolerance chosen, as well as number and location of the checkpoints where the calculations are done. Curvature deviation values are dependent on one more parameter, and that is the direction in which the radius of curvature is measured. AliasStudio uses a direction perpendicular to the boundary for all curvature calculations.
The number and position of checkpoints used by both calculations is different. The original curves used to build the surface dont intersect at the corners. The surface creation tool should warn you of this (check the promptline history). This situation can create inconsistent curvature continuity checks by different tools. There is a gap between the surfaces which is slightly larger than the Maximum Gap Distance in Preferences > Construction Options, so the evaluation tool views the surfaces as failing positional continuity (and hence higher levels of continuity). This gap might have been created when the original curves were rebuilt to create the surfaces. The tolerance used for rebuilding curves is given by the Curve Fit Distance in Preferences > Construction Options. Setting Curve Fit Distance to a value smaller than Maximum Gap Distance may remove the discrepancy.
In conclusion, if any tool warns you of a discontinuity or problem where you didnt expect one, you should examine your geometry closely. Some continuity calculations, especially those done at the time a new surface is built, tend to be more forgiving than those that check the boundary after the surface has been built.
The difference
For users of previous versions of Studio, this new method can appear significantly different from the way curvature continuity was evaluated in the past.
Modeling concepts | 39
The intention of this section is to assure you that the change is not something that you need to worry about while evaluating the quality of your models, and to help you better interpret the results of curvature continuity evaluation at surface boundaries. Starting with version 13.0, Studio uses a relative check for curvature continuity evaluation instead of the absolute difference check that was used in prior versions.
where Curvature is
That is,
(1)
(2) NOTE There are other software packages that use a similar relative curvature continuity check but have a factor of 2 built into their deviation calculation. In other words, their method of calculating can be expressed as:
NOTE You need to be aware of this so that you can specify your Continuity Curvature tolerance in Construction Options to match those of other software packages if required.
To be in line with other engineering or CAD software packages since most of them calculate curvature deviation with a similar relative calculation. The relative evaluation is independent of the scale of the models, whereas the absolute deviation-based check was scale dependent.
In V12.0, the curvature deviation would change as the model was scaled. Hence, curvature continuity could be achieved within tolerance simply by scaling up the model. This can be considered acceptable as curvature discontinuity between two surfaces becomes less visibly obvious if the radius values of the surfaces become larger.
Modeling concepts | 41
In V13.0 (and later), the curvature deviation does not change by scaling the model to make it larger or smaller until a point is reached when a surface is scaled such that the radius is large enough to be considered flat. Flat surfaces are an important consideration now with the new curvature continuity calculation. (See Flat surfaces below).
In the Surface continuity tool, or Information Window, turn on Show Comb to display the curvature comb. The curvature comb may appear broken as shown below. This indicates that there is a change in the type of continuity failure, and is helpful when working with individual CVs.
Modeling concepts | 43
Flat surfaces
When a relative calculation for curvature continuity deviation is used, as one radius keeps increasing, the curvature deviation tends toward the value 1.0. This is not necessarily a visual curvature problem, but it is necessary to inform you that the radius of curvature on one of the surfaces is approaching an infinitely high value. A purely flat surface is one which has an infinite radius of curvature; therefore this condition is flagged as FLAT. A radius larger than 100000 centimeters is considered infinite. The curvature evaluation shows a yellow locator labeled FLAT only if the radius is infinite on one surface across the common boundary, and not infinite on the other one. If both radii are infinite, then the curvature deviation will tend toward zero and the curvature evaluation check will pass. Seeing such a failure condition (as indicated by the continuity check locators color) does not mean that there is a noticeable curvature break. It just means that there might be a potential problem and you should use other diagnostic tools, such as highlight lines (zebra stripes), curvature combs on sections etc., to decide if the result is acceptable. This method of indicating a flat surface in the continuity check is not unique to Studio, but is common in many other engineering or CAD software packages.
By contrast, the absolute (old) method of curvature deviation would often show that curvature continuity had been achieved in this case, even if the two surfaces had widly different curvatures at the join. To see this, substitute R1=10 and R2=1000 in formula (1). The result is 0.099, which is smaller than the default tolerance of 0.1.
Tolerances
Since curvature continuity is calculated differently in V13.0, its tolerance value (Continuity Curvature in the Construction Options) now has a different meaning. In Studio, the tolerance is expressed as a number in the range of 0.0 to 1.0.
Modeling concepts | 45
Other software packages may express the same value as a percentage. For example, a value of 0.1 in Studio corresponds to a value of 10% in other packages, and you need to be aware of this to map Studios values relative to that of the system under consideration.
Customization
You can set environment variable ALIAS_G2_INFINITY_TOL to any value that should be considered as an infinite radius (in centimeters). Any radius greater than this value will be considered infinite in determining flat surfaces during curvature continuity checks. AliasStudio default value is 100000 centimeters. If this value is increased, the word FLAT appears less frequently, but curvature deviation values such as 0.999 (as its nearing 1.0) will appear instead. If this value is decreased, more green curvature continuity locators appear, because both surfaces have a radius greater than this value, and the curvature continuity check indicates a pass.
As explained earlier, the results of the curvature continuity evaluation in V13.0 can and will appear different from prior versions of Studio. You need to be aware of the changes that were madein order to use the results of the new method effectively to produce aesthetically pleasing highlights across surface transitions. Interpreting curvature continuity across surface boundaries is quite different from using position and tangent continuity evaluations. Curvature continuity checks always have a subjective aspect because of the users intent: the need to provide good highlight flow across surface transitions in the model. On the other hand, positional and tangent continuity conditions have many implications that are related to manufacturing process, which is different than aesthetic evaluation. You must keep this distinction in mind while using curvature continuity evaluation, deciding tolerance values, and considering the success or failure of the curvature continuity checks. Given that the relative check is stricter than the earlier absolute difference, surfacing tools providing curvature continuity may now produce heavier results. You need to consider this in relation with the tolerance value set
in Construction Options, which the tools are using to build curvature continuous surfaces. You can loosen (i.e. increase) the Continuity Curvature tolerance value in Construction Options (under Tolerances:Continuity) to produce results that are similar to the surfaces built in prior versions of Studio. As always, you are the final judge of what you consider to be acceptable quality of surface transitions, highlights, and reflection lines in your model.
Modeling concepts | 47
The Lattice Rig is an easy-to-use tool that doesn't require deep user experience. The advanced Transformer Rig allows a more detailed and specific shaping process.
For information about these toolboxes and tools, see Object Edit > Dynamic Shape Modeling > Transformer Rig and Object Edit > Dynamic Shape Modeling > Lattice Rig.
of your model to each other will not change, and features can not be added or subtracted, but within the model, relative sizes, proportions, and shapes can be modified.
What to expect from the tools Using Dynamic Shape Modeling for communication and concept development
Use these tools for balancing proportions of geometry sets. The output of the tool may not necessarily provide production surfaces, even when the input is of production quality. This tool can easily be used as a communication tool for designers and surface modelers.
Because the warping of the global shape will not destroy the surface parameterization, the modified surface set can be used for further modeling. This tool can be used for Class A surfacing work, as long as you realize that further work may be required to bring the model back to production quality.
Modeling concepts | 49
The tools allow you to revert a modifiction by deleting the duplicated geometry and restoring the original, or commit to a modification by deleting the original and the history.
Glossary of terms
Target: The geometry that can be globally modified is called a target. Targets can be surfaces, meshes, or curves. Lattice: A manipulator used to articulate the desired changes to the targets. Proxy A proxy is a lightweight wireframe representation of the targets being deformed by an engaged lattice. The proxy interactively updates while you modify the engaged lattice to show what the targets look like after deformation. Meanwhile, the targets remain unchanged until you release the mouse button (when auto-recalc option is ON) or when you click GO (when auto-recalc is OFF).
Modeling concepts | 51
Constraining
You can shape the disengaged lattice so that it does not fully enclose the targets. When the lattice is engaged, everything that is outside the lattice will remain unchanged; everything that is inside the lattice will be modified. To facilitate this, parts of the lattice that intersect the targets are locked and drawn in red.
In disengaged mode, the lattice points are modifiable; in engaged mode these points are not modifiable.
NOTE For the purposes of locking the lattice, this tool treats trimmed surfaces as if they were not trimmed.
Modeling concepts | 53
door handles and lights. These rigid targets will be moved embedded in the flexible targets, but they will not lose their shape during the warp. Making a target rigid helps preserve the shapes of the parts while allowing them to move with the surface. Imagine grommets moving on a rubber tarp that is stretched to cover a load: the grommets remain the same shape and size on the flexible surface of the tarp.
Why choose the Transformer Rig over the Lattice Rig? Custom modifiers and constraints:
The Transformer Rig enables you to create custom modifiers specific to the model being changed. This provides tighter control of the surface modification. The Transformer Rig also enables you to constrain parts of the selected target geometry. You can select real geometry to constrain the modifications, which makes the entire warp result more precise, and enables you to make finer-grained changes.
The Transformer Rig offers more flexibility with NURBS fitting options
The Transformer Rig offers an additional NURBS fitting method called Adaptive.
Set up a Transformer Rig Use Transformer Rigs Change Transformer Rigs Add a clamp to surfaces in Transformer Rigs Use predefined modifiers with Transformer Rigs Use rigid targets with Transformer Rigs Set up a Lattice Rig to modify shapes Use a lattice to modify shapes
Meshes
Describes what meshes are and how they can be used in AliasStudio.
What is a mesh?
A mesh is a large polygonal object resulting from scanning and digitizing physical objects to create data models in AliasStudio. Meshes can contain several million triangles and, because of their internal representation, are a more efficient way than the old AliasStudio polysets to store large and detailed data models representing real objects.
Meshes | 55
Visual cues
Beside having a different internal representation, meshes are different from polysets in the following ways:
The default inactive color of a mesh is the same as that of hulls and edit points (brown). Using Object edit > Query edit on a mesh will show the TYPE as Mesh.
Allowed operations
The following tools can be used on mesh objects:
Evaluate > Cross section Evaluate > Dynamic Section xsect tool on Control Panel
File > Open File > Import > File File > Save File > Save as File > Export > STL
WindowDisplay > Hardware Shade ObjectDisplay > Visible ObjectDisplay > Hide Unselected ObjectDisplay > Template Diagnostic Shading modes on Control Panel Mesh Display parameters on Control Panel
Curves > Blend curve toolbox NOTE Blend curve tools that depend on parameter values or those related to curvature will not work on meshes since meshes are polygonal objects.
Locators > Move locator Locators > Annotate Locators > Measure > Distance Locators > Measure > Angle
Meshes | 57
Locators > Deviation > Closest Point Locators > Deviation > MinMax Mesh-Surface deviation
Pick > Object Delete > Delete active Transform > Move, Transform > Rotate, Transform > Scale, etc See Work with meshes for more information. See also Visualize the deviation between mesh-surface, surface-surface or mesh-mesh.
Rendering
Describes the process of and theory behind rendering images of your 3D models.
59
Shaders
Shaders are descriptions of surface materials or effects that control what a surface looks like when it is rendered. To render a surface, you need a description of what the surface is supposed to look like. Is it gray or red? Smooth or bumpy? Shiny or matte? Should it look like gold or gravel? This description of what a surface should look like is called a shader. Shaders have literally hundreds of parameters that let you simulate virtually any material you can imagine. But this infinite variety is based on two basic decisions: what shading model to use, and how to set or apply textures to the parameters of that shading model.
Shading models
A shading model is a representation of how light bounces when it hits a surface. Different models simulate different types of materials better. Model
Lambert
Useful for...
Matte materials (chalk, matte paint, unpolished surfaces).
Example
Phong
Blinn
Lightsource
A special lighting model that has no shading. Can be used to represent, for example, the surface of a switched-on lightbulb.Objects shaded with this model do not actually cast light into the scene.
60 | Chapter 1 Rendering
These shading models and their parameters (for example, color, shininess, and reflectivity) determine the base look for a shader. You can then modify the base look by mapping different types of textures onto the shader parameters.
Textures
Textures allow you to vary the look of a shader across a surface by mapping values to shader properties. The basic shaders have properties that can be measured at each point on a surface: color, shininess, displacement, and so on. In a new shader these values are uniform, so for example the entire surface has one color. To create more interesting materials, you can map a texture onto the properties of the shader. There are many different types of textures available: color ramps, checkerboard patterns, fractal noise, and more. For example, you could map a blue-to-green ramp to a shaders color parameter, and a checkerboard pattern to a shaders reflectivity parameter, to create a material with a smooth transition from blue to green across the surface, and that alternates between reflective and dull in a checkerboard pattern.
Rendering methods
Describes the different methods available in AliasStudio for rendering images, and the pros and cons of each.
Raycaster
Raycasting produces smooth shaded renderings that include shadows. Raycasting is faster than raytracing, but does not produce reflections or refraction (although you can simulate these using clever shaders).
Raytracer
Raytracing produces smooth shaded renderings that include optical effects such as reflections and refraction. It is the most realistic rendering possible, but much slower than raycasting.
| 61
62
Animation
Describes the process of and theory behind creating animations with your 3D models.
Animation in AliasStudio
Describes the processes and workflow of creating animation in AliasStudio. AliasStudio provides two types of automatic animation, where you just plug in parameters and AliasStudio creates the animation, as well as manual, freeform animation. In AliasStudio, manually creating animation involves establishing a timeline, then varying one or more properties of objects (for example, position or color) over time. The basic workflow for manually creating an animation is: 1 Create the models. 2 Decide how long you want the animation to be and create the necessary number of frames in AliasStudio. 3 Use basic techniques to vary the scene through the length of the animation:
Place objects you want to animate, including the camera, where you want them, and with the values you want, at each point in the time line, then mark those frames as keyframes. and/or Establish motion paths for objects to move along through time.
For more advanced animation, AliasStudio is capable of varying almost every property of an object or shader along the timeline, not just position. 4 Decide how the objects should transition from frame to frame. More advanced animation can use the Action window, expressions (mathematical formulas describing relationships between time and object properties), and constraints, to create more realistic and automated effects. 5 Preview or render the animation.
63
Parameters
Parameters are properties of objects that can be varied over time to create animation.
Objects have many parameters that can be animated. Examples are the objects X, Y, and Z positions, rotations, scaling, and visibility. Different types of objects have different animation parameters. For example, you can animate a cameras field of view, and the color and intensity of a light. In AliasStudio, you control which parameters of an object are animated using the Param Control window.
64 | Chapter 2 Animation
Introduction
Learn the theory behind CAD data transfer and how it works within AliasStudio. It is not necessary to read this information to complete a data transfer. However, it may help you understand how data can be transferred successfully.
65
Locators > Deviation Use these tools to check the maximum distance between surface boundaries in AliasStudio to confirm the integrity of the model before transferring it to the target CAD system. Surface Edit > Stitch > Shell stitch This tool enables you to create a valid solid model topology within AliasStudio. Stitching surfaces within AliasStudio creates a shell. When the shell is exported to a downstream (CAD) system, it includes an extra layer of information. The stitching process also identifies surface boundaries that exceed the prescribed tolerances. These problems can then be corrected by the designer prior to the translation of the data. TIP Save the original model before stitching. TIP Stitching is not required prior to transferring Unigraphics , Pro/ENGINEER, or CATIA files. If the geometry is stitched, it comes into the target system with topology information. If it is not stitched prior to transfer, the geometry comes into the target system as NURBS geometry.
Geometric data Surfaces contain the geometric data of a solid model. The geometric data describes the basic shape of an object and can be represented using NURBS ( Non-Uniform Rational B-Splines). Topological data Loops, edges, and vertices contain the topological relationships between the individual surfaces that form the solid model. Topological data describes how the geometric components are connected together. In solid modeling terminology, surfaces are called faces, and each face is made up of loops, edges, and vertices.
66 | Chapter 3 Introduction
The edges are used to connect two loops from adjacent surfaces. The vertices are used to connect two or more edges. This solid box consists of six surfaces, twelve edges, and eight vertices that form the geometrical and topological information required to define it as a solid model. For example, if a hole is placed in the box through S1 and S6, S1 and S6 would each have a loopset containing two loops.
NOTE A stitched geometry saved to an AliasStudio wire file cannot be unstitched to its original state.
68 | Chapter 3 Introduction
The Surface Edit > Stitch tools in AliasStudio creates a valid solid model topology.
Stitching surfaces can greatly improve the data transfer to a solid modeler. The stitching process also identifies surface boundary gaps that exceed your tolerances. The stitching process identifies duplicate surfaces in the model and unifies the direction of the surface normals of the completed shell.
The following illustration shows three individual surfaces (labeled S1, S2 and S3). The edges of each surface are represented by dashed lines.
When models are constructed using the AliasStudio advanced surface tools (Swept, Rail Surface and Square), it is common to create a number of smaller surfaces along the edge of one larger surface. This modeling technique does not create the twin edges required for a solid model. Stitching adds this information. NOTE Some modeling techniques, such as Trim, Intersect and Round, create twin edges.
70 | Chapter 3 Introduction
Index
A
about 24, 4751, 53, 55 construction planes 47 curves 3 dynamic shape modeling 4850 constraints 49 lattice rig 50 modifiers 49 targets 49 lattice rig 51 lattice 51 target 51 meshes 55 parametric representations of curves 4 splines 2 transformer rig 53 clampers 53 constraints 53 modifiers 53 rigid targets 53 targets 53 absolute addressing 28 accuracy 68 defining for solid modelers 68 addressing 28 absolute 28 relative 28 animating 6364 basic concepts 63 parameters 64 animation 63 manual 63 direction 13 geometry 14 location 13 parallel 14 buttons 29 continuous 29 momentary 29
C
CAD data transfer 69 rational and non-rational geometry 69 changes in curvature 31 checkpoints 38 and curvature deviation calculations 38 chord-length parameterization 22 comb plots 30 about 30 concepts 1 points 1 construction history 27 about 27 continuity 34, 38 curvature tolerance and deviation value 38 continuous buttons 29 control vertices 6, 8 multiplicity 8 creating 4, 37, 67 a solid model of a cube 67 and measuring curvature continuity 37 complex curves 4 curvature 3031, 36 changes in 31 constant rate of change of the rate of change (G4) 36 high 31 low 31
B
blend curves 12 about 12 blend points 1314 directed 13
71 | Index
curvature continuity 35, 39, 46 customizing tolerance 46 evalution method 39 interpreting 46 curvature deviation calculation 37 curve definition 5 curve degree 3, 20, 34 curve intersections, about 11 curve normals, about 23 curve parameterization 21 curve segments (about) 4 curve spans (about) 4 curves 34, 30, 32 computations 4 CV distribution 32 definition of degree 3 equations for polynomials 3 layout for optimal surfaces 30 mathematical representation 3 curves-on-surface 18 about 18 CV distribution 3233 good vs. poor 33 on curves 32 CVs 6, 8 about 6 multiplicity 8
D
definition 4951, 55 constraints 49 lattice (on lattice rig) 51 lattice rig 50 meshes 55 modifiers 49 target (on lattice rig) 51 targets 49 definition blend curves 12 definition construction history 27 definition construction plane 47 definition control vertex 6 definition control vertex multiplicity definition curves-on-surface 18 definition CV 6 definition CV multiplicity 8
definition dynamic shape modeling 48 definition edit points 7 definition EPs 7 definition hulls 7 definition isoparametric curves 15 definition isoparms 15 definition keypoint curves 14 definition non-rational geometry 9 definition normal 23 definition patches 17 definition pivot points 26 definition rational geometry 9 definition shells 18 definition trimming 18 degree 1 20 degree 2 20 degree 3 20 degree 5 20 degree 7 20 descriptive isoparms 16 detaching 11 curves 11 dotted-line isoparms 16 dynamic shape modeling 4950, 5253 and concept development 49 and target geometry 50 for further modeling 49 lattice rig and constraints 52 transformer rig 53 clampers 53 constraints 53 modifiers 53 rigid targets 53 targets 53
E
edit points 7, 16 definition 7 on isoparametric curves 16 exporting 67 solid model of a cube 67 surfaces(faces) 67
72 | Index
F
fillets 69 creating rational 69
L
layout 30 of curves 30 linear units 68 base for data transfer low curvature 31
G
geometry 6869 checking surface continuity 69 getting it right for data transfer 68
68
M
mathematical representation of splines 2 meshes 5556 how they differ from polysets 56 operations allowed on 56 momentary buttons 29 moving 8 CVs, about 8 edit points, about 8 multiplicity 8 of CVs 8
H
hidden line rendering 61 definition 61 high curvature 31 high tension CVs 32 hulls 7 about 7
I
identifying open edges in shells inserting 11 edit points into curves 11 intersecting 11 curves, how to 11 introduction 59, 63 to animation 63 to rendering 59 isoparametric curves 1516 about 15 at edit points 16 descriptive 16 isoparms 1516 about 15 and edit points 16 19
N
non-rational 9 geometry, about 9 numerical input 28 NURBS 3, 5 curves, about 5 curves, definition of degree
O
overworked CVs 32
P
parameterization 22 chord length 22 uniform 22 parameters 21 parametric representations of curves 4 patch precision 17 and internal isoparametric curves 17 patches, about 17
K
keypoint curves about 14 14
Index | 73
pivot points 26 about 26 planning 12, 30 surfaces 12 point 1 definition 1 points, about 1 positional continuity
34
shell limitations 19 shells, about 18 simplifying surfaces 12 splines 2 definition 2 surface degree 20 surface normals, about 23 surface parameterization 21 surface spans 12
R
rational and non-rational geometry for CAD 69 rational curves, definition 5 rational geometry, about 9 raycasting 61 definition 61 raytracing 61 definition 61 relative addressing 28 relative curvature deviation method rendering 5961 basic concepts 59 methods 61 shaders 60 shading model 60 textures 61 workflow 59 69
T
tangent continuity 35 textures 61 introduction to 61 tolerances 68 standards for CAD systems 68 transformations and pivot points 26 trimming, about 18 trouble shooting 19 open edges in shells 19 types of continuity 34
40
U
understanding curves 3 understanding mathematics of geometry 1 uniform parameterization 11, 22
S
shaders 60 introduction to shading 60 models 60
W
60 workflow 59 rendering 59
74 | Index