{"product_id":"visual-basic-graphics-programming-9780471355991","title":"Visual Basic Graphics Programming","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eAll the tools you need to create the full range of Visual Basic(r) color graphics applications  Expert Rod Stephens provides you with everything you need to add advanced graphics to your applications in this in-depth introduction to graphic programming with Microsoft Visual Basic.\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003cp\u003eIntroduction\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart One: Working with Windows 1\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 1 Visual Basics 3\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eVisual Basic Coordinate Systems 3\u003c\/p\u003e \u003cp\u003eCustom Coordinates 5\u003c\/p\u003e \u003cp\u003eCoordinate Overflow 8\u003c\/p\u003e \u003cp\u003eScale Conversions 8\u003c\/p\u003e \u003cp\u003eSize and Positioning 9\u003c\/p\u003e \u003cp\u003eInterior Sizing 10\u003c\/p\u003e \u003cp\u003eThe Move Method 13\u003c\/p\u003e \u003cp\u003eGraphic Container Controls 13\u003c\/p\u003e \u003cp\u003eLine Method 14\u003c\/p\u003e \u003cp\u003eCircle Method 15\u003c\/p\u003e \u003cp\u003ePaintPicture Method 20\u003c\/p\u003e \u003cp\u003ePSet Method 22\u003c\/p\u003e \u003cp\u003ePoint Method 24\u003c\/p\u003e \u003cp\u003ePrint Method 25\u003c\/p\u003e \u003cp\u003eScrolled Windows 27\u003c\/p\u003e \u003cp\u003eScrolled Window Controls 30\u003c\/p\u003e \u003cp\u003eWhen to Draw 30\u003c\/p\u003e \u003cp\u003eAutoRedraw Property 31\u003c\/p\u003e \u003cp\u003ePaint Events 31\u003c\/p\u003e \u003cp\u003eRedrawing During Resize Events 31\u003c\/p\u003e \u003cp\u003eControlling Controls 34\u003c\/p\u003e \u003cp\u003eText Properties 35\u003c\/p\u003e \u003cp\u003eOther Graphic Properties 38\u003c\/p\u003e \u003cp\u003eGraphical Controls 47\u003c\/p\u003e \u003cp\u003eImage Control 47\u003c\/p\u003e \u003cp\u003eLabel Control 48\u003c\/p\u003e \u003cp\u003eLine Control 48\u003c\/p\u003e \u003cp\u003eShape Control 49\u003c\/p\u003e \u003cp\u003eColor 49\u003c\/p\u003e \u003cp\u003eRGB Colors 50\u003c\/p\u003e \u003cp\u003eSystem Colors 50\u003c\/p\u003e \u003cp\u003eDecomposing Colors 52\u003c\/p\u003e \u003cp\u003eQBColor 53\u003c\/p\u003e \u003cp\u003eSummary 54\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 2 Using the API 55\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eThe Genie 55\u003c\/p\u003e \u003cp\u003eUsing the API 56\u003c\/p\u003e \u003cp\u003eIdentifying the Routine 56\u003c\/p\u003e \u003cp\u003eDefining Data Structures 56\u003c\/p\u003e \u003cp\u003eDeclaring the Routine 58\u003c\/p\u003e \u003cp\u003eCalling the Routine 63\u003c\/p\u003e \u003cp\u003eUseful API Functions 65\u003c\/p\u003e \u003cp\u003eDrawing 65\u003c\/p\u003e \u003cp\u003eDrawing Attributes 72\u003c\/p\u003e \u003cp\u003eMetafiles 78\u003c\/p\u003e \u003cp\u003eSummary 80\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 3 Advanced Color 81\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eColor Models 81\u003c\/p\u003e \u003cp\u003eBitmaps 84\u003c\/p\u003e \u003cp\u003eDevice-Dependent Bitmaps 84\u003c\/p\u003e \u003cp\u003eDevice-Independent Bitmaps 89\u003c\/p\u003e \u003cp\u003eColor Palettes 91\u003c\/p\u003e \u003cp\u003eStatic Colors 94\u003c\/p\u003e \u003cp\u003eInverting Static Colors 94\u003c\/p\u003e \u003cp\u003eColors in Visual Basic 96\u003c\/p\u003e \u003cp\u003eSummary 111\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 4 Advanced Text 113\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eMultiple Colors and Fonts 114\u003c\/p\u003e \u003cp\u003eText Metrics 117\u003c\/p\u003e \u003cp\u003eCreateFont Function 119\u003c\/p\u003e \u003cp\u003eHeight 120\u003c\/p\u003e \u003cp\u003eWidth 120\u003c\/p\u003e \u003cp\u003eEscapement 120\u003c\/p\u003e \u003cp\u003eOrientation 121\u003c\/p\u003e \u003cp\u003eWeight 121\u003c\/p\u003e \u003cp\u003eItalic, Underline, StrikeOut 122\u003c\/p\u003e \u003cp\u003eCharacterSet 122\u003c\/p\u003e \u003cp\u003eOutputPrecision 123\u003c\/p\u003e \u003cp\u003eClipPrecision 123\u003c\/p\u003e \u003cp\u003eQuality 124\u003c\/p\u003e \u003cp\u003ePitchAndFamily 124\u003c\/p\u003e \u003cp\u003eFace 125\u003c\/p\u003e \u003cp\u003eStandard Fonts 125\u003c\/p\u003e \u003cp\u003eProgramming with CreateFont 126\u003c\/p\u003e \u003cp\u003eCurved Text 127\u003c\/p\u003e \u003cp\u003eCentering Rotated Text 131\u003c\/p\u003e \u003cp\u003eEditable Text 134\u003c\/p\u003e \u003cp\u003eSummary 139\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 5 Printing 141\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003ePrinter Objects 141\u003c\/p\u003e \u003cp\u003eSelecting a Printer 142\u003c\/p\u003e \u003cp\u003ePrinter Properties 144\u003c\/p\u003e \u003cp\u003ePrinter Control Methods 146\u003c\/p\u003e \u003cp\u003eThe PrintForm Method 146\u003c\/p\u003e \u003cp\u003eHigh-Resolution Printing 147\u003c\/p\u003e \u003cp\u003ePrinting Text 148\u003c\/p\u003e \u003cp\u003ePrint Preview 150\u003c\/p\u003e \u003cp\u003eMultipage Print Preview 152\u003c\/p\u003e \u003cp\u003ePrinter Scale Properties 156\u003c\/p\u003e \u003cp\u003eScaling Objects to Fit 158\u003c\/p\u003e \u003cp\u003eHigh Resolution PrintForm 160\u003c\/p\u003e \u003cp\u003eSummary 162\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart Two: Image Processing 163\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 6 Point Processes 165\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eObtaining Images 165\u003c\/p\u003e \u003cp\u003eProgramming Tools 166\u003c\/p\u003e \u003cp\u003eLoadPicture 166\u003c\/p\u003e \u003cp\u003eLoadImage 167\u003c\/p\u003e \u003cp\u003eSavePicture Routine 169\u003c\/p\u003e \u003cp\u003ePoint and PSet Functions 170\u003c\/p\u003e \u003cp\u003ePoint Processes 171\u003c\/p\u003e \u003cp\u003eGrayscale 171\u003c\/p\u003e \u003cp\u003eComplement 173\u003c\/p\u003e \u003cp\u003eBrightness 174\u003c\/p\u003e \u003cp\u003eColor Balance 175\u003c\/p\u003e \u003cp\u003eContrast 176\u003c\/p\u003e \u003cp\u003eBinary Contrast Enhancement 182\u003c\/p\u003e \u003cp\u003eMultiple Image Processing 185\u003c\/p\u003e \u003cp\u003eImage Subtraction 186\u003c\/p\u003e \u003cp\u003eImage Averaging 187\u003c\/p\u003e \u003cp\u003eImage Compositing 188\u003c\/p\u003e \u003cp\u003eSummary 190\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 7 Area Processes 191\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eSpatial Filtering 191\u003c\/p\u003e \u003cp\u003eInitializing Kernels 195\u003c\/p\u003e \u003cp\u003eLow-Pass Filters 196\u003c\/p\u003e \u003cp\u003eUnsharp Masking 197\u003c\/p\u003e \u003cp\u003eHigh-Pass Filters 197\u003c\/p\u003e \u003cp\u003eEdge Detection 200\u003c\/p\u003e \u003cp\u003eEmbossing 202\u003c\/p\u003e \u003cp\u003eRestricting an Operation Using a Mask 202\u003c\/p\u003e \u003cp\u003eSummary of Spatial Filters 203\u003c\/p\u003e \u003cp\u003eRank Filters 203\u003c\/p\u003e \u003cp\u003eGeometric Transformations 204\u003c\/p\u003e \u003cp\u003eBilinear Interpolation 205\u003c\/p\u003e \u003cp\u003eA Transformation Framework 207\u003c\/p\u003e \u003cp\u003eEnlargement 209\u003c\/p\u003e \u003cp\u003eReduction 211\u003c\/p\u003e \u003cp\u003eCheating with LoadImage 213\u003c\/p\u003e \u003cp\u003eRotation 215\u003c\/p\u003e \u003cp\u003eReflection 218\u003c\/p\u003e \u003cp\u003eComplex Reflection 219\u003c\/p\u003e \u003cp\u003eShape-Distorting Transformation 221\u003c\/p\u003e \u003cp\u003eSummary 222\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart Three: Animation 223\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 8 Bitmap Animation 225\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eAnimation Basics 225\u003c\/p\u003e \u003cp\u003eTiming Is Everything 226\u003c\/p\u003e \u003cp\u003eTiming in Visual Basic 227\u003c\/p\u003e \u003cp\u003eFast Display 227\u003c\/p\u003e \u003cp\u003eTimer Controls 228\u003c\/p\u003e \u003cp\u003eClock Watching 230\u003c\/p\u003e \u003cp\u003eDisplaying Files Directly 231\u003c\/p\u003e \u003cp\u003eStoring Image Bits 232\u003c\/p\u003e \u003cp\u003eThe Need for Speed 235\u003c\/p\u003e \u003cp\u003eDrawing Animation 236\u003c\/p\u003e \u003cp\u003eClear and Redraw 237\u003c\/p\u003e \u003cp\u003eSave and Restore 241\u003c\/p\u003e \u003cp\u003eUsing the API 243\u003c\/p\u003e \u003cp\u003eSummary 244\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 9 Advanced Animation 245\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eControlling Animation 245\u003c\/p\u003e \u003cp\u003eSimulation 245\u003c\/p\u003e \u003cp\u003eScripts 248\u003c\/p\u003e \u003cp\u003eSprites 250\u003c\/p\u003e \u003cp\u003eTweening and Morphing 253\u003c\/p\u003e \u003cp\u003eTweening 254\u003c\/p\u003e \u003cp\u003eMorphing 259\u003c\/p\u003e \u003cp\u003eSpecialized Animation 262\u003c\/p\u003e \u003cp\u003eScene Transitions 263\u003c\/p\u003e \u003cp\u003eScreen Savers 271\u003c\/p\u003e \u003cp\u003eAnimating Program Icons 276\u003c\/p\u003e \u003cp\u003eSummary 277\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart Four: Two-Dimensional Graphics 279\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 10 Fractals and Tilings 281\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eFractals 281\u003c\/p\u003e \u003cp\u003eTrees 282\u003c\/p\u003e \u003cp\u003eSnowflakes 288\u003c\/p\u003e \u003cp\u003eSpace-Filling Curves 296\u003c\/p\u003e \u003cp\u003eGaskets 302\u003c\/p\u003e \u003cp\u003eThe Mandelbrot Set 308\u003c\/p\u003e \u003cp\u003eJulia Sets 313\u003c\/p\u003e \u003cp\u003eStrange Attractors 316\u003c\/p\u003e \u003cp\u003eTilings 318\u003c\/p\u003e \u003cp\u003eSummary 321\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 11 Drawing Curves 323\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eLines and Circles 323\u003c\/p\u003e \u003cp\u003eParametric Curves 324\u003c\/p\u003e \u003cp\u003eDrawCurve 325\u003c\/p\u003e \u003cp\u003eRotating Points 327\u003c\/p\u003e \u003cp\u003eCurve Fitting 330\u003c\/p\u003e \u003cp\u003ePolynomial Curve Fitting 331\u003c\/p\u003e \u003cp\u003eLinear Least Squares 331\u003c\/p\u003e \u003cp\u003eQuadratic Least Squares 334\u003c\/p\u003e \u003cp\u003eHigher-Order Least Squares 336\u003c\/p\u003e \u003cp\u003eParametric Curve Fitting 344\u003c\/p\u003e \u003cp\u003eHermite Curves 344\u003c\/p\u003e \u003cp\u003eBezier Curves 348\u003c\/p\u003e \u003cp\u003eHigher-Order Bezier Curves 351\u003c\/p\u003e \u003cp\u003eB-Splines 353\u003c\/p\u003e \u003cp\u003eClosed B-Splines 358\u003c\/p\u003e \u003cp\u003eSummary 361\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 12 Two-Dimensional Transformations 363\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eModeling Two-Dimensional Objects 363\u003c\/p\u003e \u003cp\u003eWindows and Viewports 369\u003c\/p\u003e \u003cp\u003ePanning and Zooming 369\u003c\/p\u003e \u003cp\u003eAspect Ratios 371\u003c\/p\u003e \u003cp\u003eWindows and Viewports in Visual Basic 375\u003c\/p\u003e \u003cp\u003eZooming and Panning in Visual Basic 377\u003c\/p\u003e \u003cp\u003eTwo-Dimensional Transformations 384\u003c\/p\u003e \u003cp\u003eSimple Transformations 385\u003c\/p\u003e \u003cp\u003eCombining Transformations 388\u003c\/p\u003e \u003cp\u003eTransformation Matrices in Visual Basic 395\u003c\/p\u003e \u003cp\u003eVector and Matrix Operations in Visual Basic 401\u003c\/p\u003e \u003cp\u003eTransforming Objects 403\u003c\/p\u003e \u003cp\u003eShape-Distorting Transformations 404\u003c\/p\u003e \u003cp\u003eTreating Types of Transformation Differently 407\u003c\/p\u003e \u003cp\u003eDisplay Data Structure 408\u003c\/p\u003e \u003cp\u003eQuadtrees 409\u003c\/p\u003e \u003cp\u003eLocating Objects 409\u003c\/p\u003e \u003cp\u003eQuadtrees in Visual Basic 410\u003c\/p\u003e \u003cp\u003eA Quadtree Implementation 411\u003c\/p\u003e \u003cp\u003eSummary 416\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart Five: Three-Dimensional Graphics 417\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 13 Three-Dimensional Transformations 419\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eSimple Transformations 419\u003c\/p\u003e \u003cp\u003eHomogeneous Coordinates 420\u003c\/p\u003e \u003cp\u003eVector and Matrix Operations in Visual Basic 420\u003c\/p\u003e \u003cp\u003eTranslation 422\u003c\/p\u003e \u003cp\u003eScaling 423\u003c\/p\u003e \u003cp\u003eReflection 424\u003c\/p\u003e \u003cp\u003eRight-Handed Coordinates 425\u003c\/p\u003e \u003cp\u003eRotation 426\u003c\/p\u003e \u003cp\u003eInverse Transformations 429\u003c\/p\u003e \u003cp\u003eProjections 429\u003c\/p\u003e \u003cp\u003eParallel Projection 430\u003c\/p\u003e \u003cp\u003ePerspective Projection 438\u003c\/p\u003e \u003cp\u003eSummary of Projections 442\u003c\/p\u003e \u003cp\u003ePerspective Viewing 442\u003c\/p\u003e \u003cp\u003eComposing Transformations 446\u003c\/p\u003e \u003cp\u003eScaling without Translation 446\u003c\/p\u003e \u003cp\u003eReflection across an Arbitrary Plane 447\u003c\/p\u003e \u003cp\u003eRotation around an Arbitrary Line 452\u003c\/p\u003e \u003cp\u003eProjection onto an Arbitrary Plane 454\u003c\/p\u003e \u003cp\u003eThe UP Vector 455\u003c\/p\u003e \u003cp\u003eUsing Subroutine m3Project 456\u003c\/p\u003e \u003cp\u003eSpherical Coordinates 459\u003c\/p\u003e \u003cp\u003eThree-Dimensional Objects 461\u003c\/p\u003e \u003cp\u003eSummary 464\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 14 Surfaces 465\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eSimple Surfaces 465\u003c\/p\u003e \u003cp\u003eGrids 466\u003c\/p\u003e \u003cp\u003eThe Hi-Lo Algorithm 481\u003c\/p\u003e \u003cp\u003eThe Z-Order Algorithm 490\u003c\/p\u003e \u003cp\u003eFractal Surfaces 492\u003c\/p\u003e \u003cp\u003eParametric Surfaces 498\u003c\/p\u003e \u003cp\u003eBezier Surfaces 499\u003c\/p\u003e \u003cp\u003eB-Splines 506\u003c\/p\u003e \u003cp\u003eSurfaces of Transformation 514\u003c\/p\u003e \u003cp\u003eExtruded Surfaces 514\u003c\/p\u003e \u003cp\u003eSurfaces of Revolution 520\u003c\/p\u003e \u003cp\u003eOther Surfaces of Transformation 524\u003c\/p\u003e \u003cp\u003eSummary 530\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 15 Hidden Surface Removal 531\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eBackface Removal 531\u003c\/p\u003e \u003cp\u003eFinding Surface Normals 532\u003c\/p\u003e \u003cp\u003eTesting Angles with Normals 533\u003c\/p\u003e \u003cp\u003ePutting It All Together 534\u003c\/p\u003e \u003cp\u003eConvex Solids 534\u003c\/p\u003e \u003cp\u003eBackface Removal in Visual Basic 535\u003c\/p\u003e \u003cp\u003eDepth-Sort 539\u003c\/p\u003e \u003cp\u003eNonconvex Solids 541\u003c\/p\u003e \u003cp\u003eSurfaces Revisited 554\u003c\/p\u003e \u003cp\u003eSummary 559\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 16 Shading Models 561\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eThe Physics of Lighting 561\u003c\/p\u003e \u003cp\u003eDiffuse Reflection 562\u003c\/p\u003e \u003cp\u003eAmbient Light 566\u003c\/p\u003e \u003cp\u003eDistance 567\u003c\/p\u003e \u003cp\u003eSpecular Reflection 570\u003c\/p\u003e \u003cp\u003eSmooth Shading 576\u003c\/p\u003e \u003cp\u003eGouraud Shading 576\u003c\/p\u003e \u003cp\u003ePhong Shading 581\u003c\/p\u003e \u003cp\u003eSummary 583\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 17 Ray Tracing 585\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eA Brief Warning 587\u003c\/p\u003e \u003cp\u003eRay-Tracing Basics 587\u003c\/p\u003e \u003cp\u003eRay Tracing in Visual Basic 589\u003c\/p\u003e \u003cp\u003eCalculating Hit Color 592\u003c\/p\u003e \u003cp\u003eTracing Rays 593\u003c\/p\u003e \u003cp\u003ePerformance 597\u003c\/p\u003e \u003cp\u003eBounding Volumes 598\u003c\/p\u003e \u003cp\u003eScanline Culling 599\u003c\/p\u003e \u003cp\u003eOther Objects 601\u003c\/p\u003e \u003cp\u003ePlanes 601\u003c\/p\u003e \u003cp\u003eDisks 605\u003c\/p\u003e \u003cp\u003ePolygons 608\u003c\/p\u003e \u003cp\u003eCheckerboards 611\u003c\/p\u003e \u003cp\u003eCylinders 614\u003c\/p\u003e \u003cp\u003eRecursive Ray Tracing 622\u003c\/p\u003e \u003cp\u003eReflected Light 623\u003c\/p\u003e \u003cp\u003eTransparent Surfaces 625\u003c\/p\u003e \u003cp\u003eAssumptions 634\u003c\/p\u003e \u003cp\u003eAdaptive Depth Control 636\u003c\/p\u003e \u003cp\u003eTexture Mapping 637\u003c\/p\u003e \u003cp\u003eNormal Perturbation 637\u003c\/p\u003e \u003cp\u003eEnvironment Mapping 638\u003c\/p\u003e \u003cp\u003eSpecial Environment Mapping 639\u003c\/p\u003e \u003cp\u003eSummary 641\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart Six Beyond Three Dimensions 643\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 18 Higher-Dimensional Transformations 645\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eTemporal Projection 645\u003c\/p\u003e \u003cp\u003eSpatial Projection 647\u003c\/p\u003e \u003cp\u003eFour-Dimensional Transformations 647\u003c\/p\u003e \u003cp\u003eHomogeneous Coordinates 648\u003c\/p\u003e \u003cp\u003eTranslation 648\u003c\/p\u003e \u003cp\u003eScaling 649\u003c\/p\u003e \u003cp\u003eReflection 649\u003c\/p\u003e \u003cp\u003eRotation 650\u003c\/p\u003e \u003cp\u003eInverse Transformations 651\u003c\/p\u003e \u003cp\u003eProjections 651\u003c\/p\u003e \u003cp\u003eRotating a Hypercube 656\u003c\/p\u003e \u003cp\u003eFolding a Hypercube 656\u003c\/p\u003e \u003cp\u003eSummary 661\u003c\/p\u003e \u003cp\u003e\u003cb\u003eChapter 19 Mathematical Tools 663\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003eVectors and Matrices 663\u003c\/p\u003e \u003cp\u003eVector Arithmetic 664\u003c\/p\u003e \u003cp\u003eVector Length 665\u003c\/p\u003e \u003cp\u003eDot Product 665\u003c\/p\u003e \u003cp\u003eProjection of a Vector onto a Vector 666\u003c\/p\u003e \u003cp\u003eCross Product 667\u003c\/p\u003e \u003cp\u003eMatrix-Vector Multiplication 668\u003c\/p\u003e \u003cp\u003eMatrix-Matrix Multiplication 669\u003c\/p\u003e \u003cp\u003eTransformation Matrices 670\u003c\/p\u003e \u003cp\u003eTwo-Dimensional Transformations 670\u003c\/p\u003e \u003cp\u003eThree-Dimensional Transformations 670\u003c\/p\u003e \u003cp\u003eFour-Dimensional Transformations 673\u003c\/p\u003e \u003cp\u003eSpherical Coordinates 674\u003c\/p\u003e \u003cp\u003eDistances 675\u003c\/p\u003e \u003cp\u003ePoint-to-Point 675\u003c\/p\u003e \u003cp\u003ePoint-to-Line 675\u003c\/p\u003e \u003cp\u003ePoint-to-Plane 676\u003c\/p\u003e \u003cp\u003eLine-to-Line 677\u003c\/p\u003e \u003cp\u003ePlane-to-Plane 677\u003c\/p\u003e \u003cp\u003ePlatonic Solids 678\u003c\/p\u003e \u003cp\u003eRegular Solids 679\u003c\/p\u003e \u003cp\u003eDuals 679\u003c\/p\u003e \u003cp\u003eTetrahedron 680\u003c\/p\u003e \u003cp\u003eCube 683\u003c\/p\u003e \u003cp\u003eOctahedron 684\u003c\/p\u003e \u003cp\u003eDodecahedron 684\u003c\/p\u003e \u003cp\u003eIcosahedron 689\u003c\/p\u003e \u003cp\u003eSummary 692\u003c\/p\u003e \u003cp\u003eIndex 693\u003c\/p\u003e","brand":"John Wiley \u0026 Sons Inc","offers":[{"title":"Default Title","offer_id":49402572276055,"sku":"9780471355991","price":40.0,"currency_code":"GBP","in_stock":false}],"url":"https:\/\/bookcurl.com\/products\/visual-basic-graphics-programming-9780471355991","provider":"Book Curl","version":"1.0","type":"link"}