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
- DictionarySectionHandler.cs
- FlowDocumentScrollViewer.cs
- RegistrySecurity.cs
- BitmapCodecInfoInternal.cs
- TagPrefixAttribute.cs
- SelectionEditingBehavior.cs
- SamlAuthorityBinding.cs
- WriteFileContext.cs
- TagNameToTypeMapper.cs
- BigInt.cs
- ButtonBase.cs
- InstanceDataCollection.cs
- SiteMapDataSourceView.cs
- DataGridCommandEventArgs.cs
- arclist.cs
- InvalidOleVariantTypeException.cs
- TdsParser.cs
- ISAPIWorkerRequest.cs
- SelectedDatesCollection.cs
- SafeEventHandle.cs
- RegistryConfigurationProvider.cs
- X509ImageLogo.cs
- DbParameterCollection.cs
- EventsTab.cs
- HtmlTableRow.cs
- MemberPath.cs
- LZCodec.cs
- AutomationPatternInfo.cs
- DataServiceBuildProvider.cs
- MenuEventArgs.cs
- ByeMessage11.cs
- tabpagecollectioneditor.cs
- ServiceMetadataExtension.cs
- RequestCacheValidator.cs
- CacheMemory.cs
- ConfigurationLockCollection.cs
- ConnectionManagementElement.cs
- AutomationAttributeInfo.cs
- ObjectManager.cs
- SchemaMerger.cs
- PageCatalogPart.cs
- WebPartMenu.cs
- WsdlServiceChannelBuilder.cs
- HandlerFactoryCache.cs
- ByteStreamGeometryContext.cs
- TreeNodeBindingCollection.cs
- SemanticAnalyzer.cs
- PropertyEmitterBase.cs
- SoapHeaderException.cs
- BrowserCapabilitiesFactoryBase.cs
- FixedStringLookup.cs
- TrackingDataItem.cs
- StrongNameKeyPair.cs
- GatewayDefinition.cs
- CompilerGeneratedAttribute.cs
- SqlParameterCollection.cs
- AssemblyInfo.cs
- FigureParaClient.cs
- ToolStripSystemRenderer.cs
- RegexGroupCollection.cs
- SequentialUshortCollection.cs
- WebPartConnectionsDisconnectVerb.cs
- MailWriter.cs
- GridViewRow.cs
- filewebrequest.cs
- PrintDocument.cs
- EncryptedType.cs
- XamlDebuggerXmlReader.cs
- DataControlFieldCollection.cs
- embossbitmapeffect.cs
- MissingMemberException.cs
- SamlAttribute.cs
- BindingListCollectionView.cs
- Math.cs
- CompModSwitches.cs
- webclient.cs
- DataBindingCollection.cs
- HttpBufferlessInputStream.cs
- StrongTypingException.cs
- GridViewDeletedEventArgs.cs
- LocalIdKeyIdentifierClause.cs
- DataServiceExpressionVisitor.cs
- DrawingAttributes.cs
- XmlQueryRuntime.cs
- AnimationLayer.cs
- XmlCharType.cs
- DecoderNLS.cs
- ReflectEventDescriptor.cs
- XmlArrayAttribute.cs
- RegexReplacement.cs
- Panel.cs
- WeakReference.cs
- FutureFactory.cs
- LocalizationParserHooks.cs
- MbpInfo.cs
- ValidatedControlConverter.cs
- HttpModulesSection.cs
- Model3DGroup.cs
- Duration.cs
- HtmlInputImage.cs