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
- SendSecurityHeader.cs
- Rotation3DKeyFrameCollection.cs
- EmbeddedMailObjectsCollection.cs
- CompilerInfo.cs
- XmlDeclaration.cs
- UInt32Converter.cs
- DispatcherEventArgs.cs
- CellCreator.cs
- X509Utils.cs
- BrowserCapabilitiesFactory.cs
- ParameterBinding.cs
- invalidudtexception.cs
- SQLDecimalStorage.cs
- EventWaitHandleSecurity.cs
- PageParserFilter.cs
- QilExpression.cs
- Matrix3D.cs
- ObjectResult.cs
- counter.cs
- CellIdBoolean.cs
- DbConnectionPoolOptions.cs
- TextEffectCollection.cs
- PrimitiveType.cs
- CellParaClient.cs
- WindowAutomationPeer.cs
- PropertiesTab.cs
- XmlEncodedRawTextWriter.cs
- GregorianCalendarHelper.cs
- xml.cs
- HashAlgorithm.cs
- CachedCompositeFamily.cs
- ExtenderProvidedPropertyAttribute.cs
- NameSpaceExtractor.cs
- MessageCredentialType.cs
- DataGridViewImageCell.cs
- ExternalFile.cs
- Drawing.cs
- IImplicitResourceProvider.cs
- QuaternionAnimationBase.cs
- Bold.cs
- DynamicActivityXamlReader.cs
- LZCodec.cs
- PageMediaSize.cs
- NewArrayExpression.cs
- IteratorFilter.cs
- SQLInt64Storage.cs
- MatrixAnimationUsingPath.cs
- XmlDigitalSignatureProcessor.cs
- LOSFormatter.cs
- FormView.cs
- ColumnHeader.cs
- MailDefinition.cs
- DataGridLinkButton.cs
- PerformanceCounterPermissionAttribute.cs
- RequestQueryProcessor.cs
- DecoderReplacementFallback.cs
- HttpListenerRequestUriBuilder.cs
- ConstantExpression.cs
- Add.cs
- GuidConverter.cs
- TimeSpanConverter.cs
- DayRenderEvent.cs
- EntryPointNotFoundException.cs
- GeneratedView.cs
- PasswordDeriveBytes.cs
- ProjectionPathBuilder.cs
- HttpFileCollection.cs
- TablePattern.cs
- CheckBox.cs
- DocumentGridPage.cs
- ExpressionBindingCollection.cs
- FakeModelItemImpl.cs
- XmlSchemaSimpleContent.cs
- DataGridPagerStyle.cs
- RequestCacheValidator.cs
- Soap12ServerProtocol.cs
- XamlGridLengthSerializer.cs
- FormViewUpdatedEventArgs.cs
- HostProtectionException.cs
- TableAdapterManagerGenerator.cs
- X509Certificate2.cs
- SourceChangedEventArgs.cs
- BitmapFrame.cs
- AttachedAnnotationChangedEventArgs.cs
- DmlSqlGenerator.cs
- StringInfo.cs
- SingleQueryOperator.cs
- LayoutEvent.cs
- ScriptControl.cs
- LiteralControl.cs
- RowTypePropertyElement.cs
- TreeNodeEventArgs.cs
- EventItfInfo.cs
- ComplexBindingPropertiesAttribute.cs
- _ScatterGatherBuffers.cs
- ListItemCollection.cs
- OdbcUtils.cs
- ValidationPropertyAttribute.cs
- ControlPropertyNameConverter.cs
- HeaderUtility.cs