Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Core / System / Windows / Media3D / Point4D.cs / 1 / Point4D.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // // Description: 4D point implementation. // // See spec at [....]/medialayer/Specifications/Avalon3D%20API%20Spec.mht // // History: // 06/04/2003 : [....] - Created // //--------------------------------------------------------------------------- using System.Windows; using System.Windows.Media.Media3D; using System; namespace System.Windows.Media.Media3D { ////// Point4D - 4D point representation. /// Defaults to (0,0,0,0). /// public partial struct Point4D { //----------------------------------------------------- // // Constructors // //----------------------------------------------------- #region Constructors ////// Constructor that sets point's initial values. /// /// Value of the X coordinate of the new point. /// Value of the Y coordinate of the new point. /// Value of the Z coordinate of the new point. /// Value of the W coordinate of the new point. public Point4D(double x, double y, double z, double w) { _x = x; _y = y; _z = z; _w = w; } #endregion Constructors //------------------------------------------------------ // // Public Methods // //----------------------------------------------------- #region Public Methods ////// Offset - update point position by adding deltaX to X, deltaY to Y, deltaZ to Z, and deltaW to W. /// /// Offset in the X direction. /// Offset in the Y direction. /// Offset in the Z direction. /// Offset in the W direction. public void Offset(double deltaX, double deltaY, double deltaZ, double deltaW) { _x += deltaX; _y += deltaY; _z += deltaZ; _w += deltaW; } ////// Addition. /// /// First point being added. /// Second point being added. ///Result of addition. public static Point4D operator +(Point4D point1, Point4D point2) { return new Point4D(point1._x + point2._x, point1._y + point2._y, point1._z + point2._z, point1._w + point2._w); } ////// Addition. /// /// First point being added. /// Second point being added. ///Result of addition. public static Point4D Add(Point4D point1, Point4D point2) { return new Point4D(point1._x + point2._x, point1._y + point2._y, point1._z + point2._z, point1._w + point2._w); } ////// Subtraction. /// /// Point from which we are subtracting the second point. /// Point being subtracted. ///Vector between the two points. public static Point4D operator -(Point4D point1, Point4D point2) { return new Point4D(point1._x - point2._x, point1._y - point2._y, point1._z - point2._z, point1._w - point2._w); } ////// Subtraction. /// /// Point from which we are subtracting the second point. /// Point being subtracted. ///Vector between the two points. public static Point4D Subtract(Point4D point1, Point4D point2) { return new Point4D(point1._x - point2._x, point1._y - point2._y, point1._z - point2._z, point1._w - point2._w); } ////// Point4D * Matrix3D multiplication. /// /// Point being transformed. /// Transformation matrix applied to the point. ///Result of the transformation matrix applied to the point. public static Point4D operator *(Point4D point, Matrix3D matrix) { return matrix.Transform(point); } ////// Point4D * Matrix3D multiplication. /// /// Point being transformed. /// Transformation matrix applied to the point. ///Result of the transformation matrix applied to the point. public static Point4D Multiply(Point4D point, Matrix3D matrix) { return matrix.Transform(point); } #endregion Public Methods } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SymbolType.cs
- XmlUrlResolver.cs
- SmtpClient.cs
- ObjectSet.cs
- DataObjectSettingDataEventArgs.cs
- DbMetaDataCollectionNames.cs
- DetailsViewCommandEventArgs.cs
- KeysConverter.cs
- MessageQueueException.cs
- UriTemplateDispatchFormatter.cs
- AssociationTypeEmitter.cs
- bidPrivateBase.cs
- IMembershipProvider.cs
- TransformerTypeCollection.cs
- LinkedResourceCollection.cs
- XmlSignatureManifest.cs
- TemplateBindingExtensionConverter.cs
- EventRouteFactory.cs
- SqlSupersetValidator.cs
- DocumentReference.cs
- SmtpMail.cs
- TraceHandlerErrorFormatter.cs
- RequiredFieldValidator.cs
- ModuleBuilder.cs
- UriTemplateVariablePathSegment.cs
- HttpCapabilitiesEvaluator.cs
- UTF8Encoding.cs
- MetafileHeader.cs
- ShutDownListener.cs
- DataTableNewRowEvent.cs
- UpdatePanelControlTrigger.cs
- FigureParaClient.cs
- ProjectionCamera.cs
- MemberExpression.cs
- PasswordRecovery.cs
- _SSPISessionCache.cs
- HtmlInputFile.cs
- SmiEventStream.cs
- MediaElement.cs
- NavigationProgressEventArgs.cs
- _Semaphore.cs
- PointCollectionValueSerializer.cs
- ReflectionUtil.cs
- LateBoundBitmapDecoder.cs
- SmtpFailedRecipientException.cs
- FixedSOMImage.cs
- OutOfMemoryException.cs
- SqlReferenceCollection.cs
- DependencyObjectCodeDomSerializer.cs
- AppDomainManager.cs
- ResourceProperty.cs
- CmsInterop.cs
- PtsCache.cs
- NumberFormatter.cs
- ObjectAnimationBase.cs
- DateTimeUtil.cs
- PackWebRequestFactory.cs
- ExpressionBinding.cs
- CatalogPartChrome.cs
- WebMessageEncodingElement.cs
- Convert.cs
- OleDbConnectionInternal.cs
- GradientBrush.cs
- FastPropertyAccessor.cs
- WindowsEditBoxRange.cs
- Semaphore.cs
- FigureHelper.cs
- DataGridLength.cs
- ReturnType.cs
- FloaterParagraph.cs
- _SslSessionsCache.cs
- SpecialFolderEnumConverter.cs
- GroupQuery.cs
- Util.cs
- EdmComplexTypeAttribute.cs
- EdmType.cs
- GridView.cs
- XmlEnumAttribute.cs
- MetadataUtil.cs
- ClientTargetCollection.cs
- SingleTagSectionHandler.cs
- TemplateControlCodeDomTreeGenerator.cs
- comcontractssection.cs
- Deflater.cs
- XPathNode.cs
- ColumnPropertiesGroup.cs
- XsdDateTime.cs
- Codec.cs
- MeasureItemEvent.cs
- DataGridViewAutoSizeModeEventArgs.cs
- TypedElement.cs
- JsonWriterDelegator.cs
- EntityDesignerUtils.cs
- RawStylusActions.cs
- BuilderPropertyEntry.cs
- SQLConvert.cs
- VerificationException.cs
- ParameterToken.cs
- StateManagedCollection.cs
- ListControl.cs