Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / wpf / src / Core / CSharp / System / Windows / Media3D / Point4D.cs / 1 / Point4D.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // // Description: 4D point implementation. // // See spec at http://avalon/medialayer/Specifications/Avalon3D%20API%20Spec.mht // // History: // 06/04/2003 : t-gregr - 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. //---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // // Description: 4D point implementation. // // See spec at http://avalon/medialayer/Specifications/Avalon3D%20API%20Spec.mht // // History: // 06/04/2003 : t-gregr - 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
- Config.cs
- ContentPosition.cs
- RtfToXamlReader.cs
- SHA512Managed.cs
- ConstNode.cs
- ImageClickEventArgs.cs
- ConstantCheck.cs
- SqlInfoMessageEvent.cs
- ComboBoxAutomationPeer.cs
- ParallelLoopState.cs
- FormViewDeletedEventArgs.cs
- OracleConnectionFactory.cs
- RemotingException.cs
- AxisAngleRotation3D.cs
- MessageSecurityOverMsmqElement.cs
- BaseCollection.cs
- DecoderExceptionFallback.cs
- TokenBasedSetEnumerator.cs
- TouchFrameEventArgs.cs
- FixedPageProcessor.cs
- SqlConnectionHelper.cs
- SystemUdpStatistics.cs
- EraserBehavior.cs
- UpnEndpointIdentityExtension.cs
- DataMemberConverter.cs
- LineServicesRun.cs
- RawStylusActions.cs
- HttpProfileGroupBase.cs
- ConfigXmlElement.cs
- RayMeshGeometry3DHitTestResult.cs
- FixedSOMPage.cs
- MissingMethodException.cs
- Control.cs
- Attributes.cs
- SmtpException.cs
- Rotation3DKeyFrameCollection.cs
- WindowsRebar.cs
- ListParagraph.cs
- SoapHeaderException.cs
- MatcherBuilder.cs
- SEHException.cs
- MulticastNotSupportedException.cs
- DbProviderSpecificTypePropertyAttribute.cs
- WebServiceFault.cs
- SmuggledIUnknown.cs
- FontInfo.cs
- PerfService.cs
- Parameter.cs
- EntityDataSourceDataSelection.cs
- NotificationContext.cs
- ReservationNotFoundException.cs
- RepeaterItem.cs
- AppSecurityManager.cs
- KeyedHashAlgorithm.cs
- AsyncPostBackErrorEventArgs.cs
- SynchronousChannel.cs
- AppSettingsExpressionBuilder.cs
- XmlCompatibilityReader.cs
- latinshape.cs
- SafeProcessHandle.cs
- BitArray.cs
- ListItemCollection.cs
- initElementDictionary.cs
- BuildManager.cs
- LinqDataSourceView.cs
- MenuCommandService.cs
- RevocationPoint.cs
- HTMLTagNameToTypeMapper.cs
- KnownTypesProvider.cs
- Transform3DGroup.cs
- XmlHierarchicalEnumerable.cs
- X509SecurityTokenProvider.cs
- EditorZone.cs
- BindableTemplateBuilder.cs
- TextOptionsInternal.cs
- XmlSchemaSimpleContentRestriction.cs
- PrePostDescendentsWalker.cs
- AppDomainManager.cs
- RawStylusInputCustomDataList.cs
- WebPartPersonalization.cs
- FullTrustAssemblyCollection.cs
- MetadataItemSerializer.cs
- MethodImplAttribute.cs
- UnsafeNativeMethods.cs
- OleDbDataAdapter.cs
- XamlStyleSerializer.cs
- FileDialogPermission.cs
- TreeChangeInfo.cs
- PropertyReferenceSerializer.cs
- ProfileGroupSettings.cs
- ListViewItem.cs
- RangeValidator.cs
- ListViewInsertedEventArgs.cs
- ArrayList.cs
- PieceNameHelper.cs
- HierarchicalDataSourceControl.cs
- CaseInsensitiveHashCodeProvider.cs
- printdlgexmarshaler.cs
- BitmapEffectDrawingContextWalker.cs
- ConcatQueryOperator.cs