330 likes | 608 Views
Zero to 3D in 60 Minutes. Fenton Webb Senior Developer Evangelist. About the Presenter. Fenton Webb Developer Technical Services Americas Autodesk, Inc http://twitter.com/fentonwebb
E N D
Zero to 3D in 60 Minutes Fenton Webb Senior Developer Evangelist
About the Presenter Fenton WebbDeveloper Technical ServicesAmericasAutodesk, Inc http://twitter.com/fentonwebb Fenton has been a member of the Autodesk DevTech team since 2000. Originally a member of our EMEA team, he has recently relocated to California to work for DevTech Americas. Fenton is an expert in all the AutoCAD APIs, AutoCAD OEM, RealDWG and Revit. He particularly enjoys travelling to evangelise the APIs he support at our annual Developer Days conferences. Before joining Autodesk, Fenton worked for an ADN partner developing ObjectARX applications in the Civil and Structural Engineering domain.
Autodesk Developer Network • Access to almost all Autodesk software and SDK’s • Including early access to Beta software • Members-only website with 1000s of technical articles • Unlimited technical support • Product direction through conferences • Marketing benefits • Exposure on autodesk.com • Promotional opportunities • 1 to 3 free API training classes • Based on user level www.autodesk.com/joinadn
DevLab • San Francisco, USA Feb 1-5, 2010 • Farnborough, UK Feb 8-12, 2010 • Munich, Germany June 7-11, 2010 • Other countries TBD • www.autodesk.com/apitraining > Schedule • stephen.preston@autodesk.com
Agenda History of 3D in AutoCAD Creating 3D Geometry Creating Advanced 3D Geometry Logical - Unions, Subtracts and Intersect Geometrical - Extrusions, Lofts, Revolves and Sweeps Freeform Modeling Extract the 3D Data Questions
History of 3D in AutoCAD Technology Information • Version 2.1 • Z Coordinate • R11 AutoCAD Modeling Extension (AME) • ADS API • R13 ACIS - Licensed Technology from Spatial • Industry Standard • SAT Output • 2004 ASM – Autodesk Solid Modeler • Derived from ACIS • Autodesk Standard • Amodeler – Autodesk Modeler • Focused Surface Modeler used by ADT/AutoCAD Architecture
Creating 3D Geometry Using AutoCAD Easy to Create Basic 3D Geometry – Solid Types • Known as Primitive Solids • Commands • Box, Wedge, Cone, Cylinder, Sphere, Pyramid, Torus • See AutoCAD Help Create 3D Solid Primitives
Creating 3D Geometry Using AutoCAD You can easily modify Primitive Solids • Via the Properties Window • Via Grips • Basic Properties • Keeps Shape
Creating 3D Geometry Using AutoCAD Advanced modification is possible • Sub-Object Selection (CTRL+Left Click) • Faces • Edges • Vertices
Creating 3D Geometry Using APIs .NET Solid3d.Create* CreateBox, CreateSphere, CreateTorus, etc ObjectARX AcDb3dSolid::create* createBox, CreateSphere, CreateTorus , etc VBA or Visual LISP Active X Acad3dSolid.Add* AddBox, AddSphere, AddTorus, etc LISP Command Line method ActiveX LISP (using the same API as VBA)
Creating 3D Geometry Show how... Demo “Basic 3D” Demonstrating Visual Studio 2008 Using Solid3d class Using C# .NET
Creating Advanced 3D Geometry Using Logical Operations Synthesizing Solids • Union • Subtract • Intersect
Creating Advanced 3D Geometry Using Logical Operations Synthesizing Solids • Union • Combine
Creating Advanced 3D Geometry Using Logical Operations Synthesizing Solids • Subtract
Creating Advanced 3D Geometry Using Logical Operations Synthesizing Solids • Intersect • Common
Creating 3D Geometry Show how... Demo “Logical 3D” Demonstrating Logical Solid3D Operations Union Subtract Intersect Using C# .NET
Creating Advanced 3D Geometry Using AutoCAD Extrude, Loft, Revolve and Sweep - Surface (and Solid) Types
Creating Advanced 3D Geometry Using AutoCAD You can modify these types • Via the Properties Window • Via Grips • Construction Geometry Only
Creating Advanced 3D Geometry Using AutoCAD Advanced modification not possible Sub-Object Selection (CTRL+Left Click) Faces Edges Vertices
Creating Advanced 3D Geometry Using APIs .NET Extrude SweepOptions / SweepOptionsBuilder ExtrudedSurface.CreateExtrudedSurface Sweep SweepOptions /SweepOptionsBuilder SweptSurface.CreateSweptSurface Loft LoftOptions / LoftOptionsBuilder Solid3d.CreateLoftedSolid Revolve RevolveOptions / RevolveOptionsBuilder Solid3d.CreateRevolvedSolid Surface Type Surface Type Solid Type Solid Type
Creating Advanced 3D Geometry Using APIs ObjectARX Extrude AcDbSweepOptions AcDbExtrudedSurface::createExtrudedSurface Sweep AcDbSweepOptions AcDbSweptSurface::createSweptSurface Loft AcDbLoftOptions AcDb3dSolid::createLoftedSolid Revolve AcDbRevolveOptions AcDb3dSolid::createRevolvedSolid Surface Type Surface Type Solid Type Solid Type
Creating Advanced 3D Geometry Using APIs VBA or Visual LISP ActiveX Extrude AddExtrudedSolid Sweep SweptSurface – Read Only Loft LoftedSurface– Read Only Revolve AddRevolvedSolid Surface Type Surface Type Solid Type Solid Type
Creating Advanced 3D Geometry Show how... Demo “Advanced 3D” Demonstrating Extrudes Lofts Sweeps Revolves Using C# .NET
Freeform Modeling Realisations New features Required Unique Style of Modeling • Takes 3D Modeling to the next level! Quicker and easier Special Gadgets ASM Solids Are Very Powerful Great at Everything What about DWG compatibility? Face limitation (32k)
Freeform Modeling New API New SubDMesh entity Uses Catmull-Clark algorithm Edge and surface creasing No 32k face limit API Available in • ObjectARX – AcDbSubDMesh • .NET - SubDMesh
Freeform Modeling What is SubD A subdivision surface is a smooth surface created from a coarse mesh. The smooth surface is calculated by iteratively subdividing each polygonal face into smaller faces that better approximate the smooth surface. • See http://en.wikipedia.org/wiki/Subdivision_surface
Freeform Modeling Show how... Demo “Freeform Modeling” Demonstrating • Freeform Modeling SDK Sample Create from primitive Create from ASM solid Applying creases Transform mesh elements Convert to ASM solid Using VB.NET
Extract the 3D Data Introducing Brep Boundary Representation Brep ObjectARX and .NET • Solids • Regions • Bodies • Surfaces* • Represents shapes using Limits • Limits defined using hierarchically connected objects • Otherwise known as Topology
Extract the 3D Data How Brep works Boundaries gives Faces, Faces gives Edges Geometric information are associated with three basic entities ( Surfacesfaces, Curvesedges, PointsVertices )
Extract the 3D Data Show how... Demo “Brep” Demonstrating Visual Studio 2008 Extracting 3D Data from a Solid Using C# .NET
Zero to 3D Further reading... SDK and Samples www.objectarx.com Developer Center www.autodesk.com/developautocad Discussion Groups http://discussion.autodesk.com API Training Classes www.autodesk.com/apitraining Kean’s Through the Interface Blog http://blogs.autodesk.com/through-the-interface Autodesk Developer Network www.autodesk.com/joinadn
Zero to 3D in 60 Minutes Fenton Webb Senior Developer Evangelist Thank you – Any questions?