Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / wpf / src / Core / CSharp / System / Windows / Media3D / Material.cs / 1 / Material.cs
//----------------------------------------------------------------------------
//
//
// Copyright (C) Microsoft Corporation. All rights reserved.
//
//
//
// Description: 3D material implementation.
//
// See spec at http://avalon/medialayer/Specifications/Avalon3D%20API%20Spec.mht
//
// History:
// 06/25/2003 : t-gregr - Created
//
//---------------------------------------------------------------------------
using System;
using System.Diagnostics;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Media.Composition;
namespace System.Windows.Media.Media3D
{
///
/// Material is the abstract base class for materials
///
[Localizability(LocalizationCategory.None, Readability = Readability.Unreadable)] // cannot be read & localized as string
public abstract partial class Material : Animatable
{
//-----------------------------------------------------
//
// Constructors
//
//-----------------------------------------------------
#region Constructors
// Prevent 3rd parties from extending this abstract base class.
internal Material() {}
#endregion Constructors
//------------------------------------------------------
//
// Internal Methods
//
//-----------------------------------------------------
#region Internal Methods
// NTRAID#Longhorn-1591973-2006/03/31-[....] - Should be using inherited "Precompute" from Animatable
//
// These return 'true' if the Material requires realization
internal abstract bool PreCompute();
internal static bool PreCompute(Brush brush)
{
bool requiresRealization = false;
if (brush != null)
{
brush.Precompute();
requiresRealization = brush.RequiresRealizationUpdates;
}
return requiresRealization;
}
internal abstract void UpdateRealizations(
RealizationContext ctx,
ref Rect bounds);
internal static void UpdateRealizations(
Brush brush,
RealizationContext ctx,
ref Rect bounds
)
{
if (brush != null)
{
brush.UpdateRealizations(bounds, ctx);
}
}
#endregion Internal Methods
//------------------------------------------------------
//
// Internal Properties
//
//------------------------------------------------------
#region Internal Properties
// NTRAID#Longhorn-1591973-2006/03/31-[....] - Should be using inherited "RequiresRealizationUpdates" from Animatable
internal abstract bool RequiresRealization
{
get;
}
#endregion Internal Properties
}
}
// 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: 3D material implementation.
//
// See spec at http://avalon/medialayer/Specifications/Avalon3D%20API%20Spec.mht
//
// History:
// 06/25/2003 : t-gregr - Created
//
//---------------------------------------------------------------------------
using System;
using System.Diagnostics;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Media.Composition;
namespace System.Windows.Media.Media3D
{
///
/// Material is the abstract base class for materials
///
[Localizability(LocalizationCategory.None, Readability = Readability.Unreadable)] // cannot be read & localized as string
public abstract partial class Material : Animatable
{
//-----------------------------------------------------
//
// Constructors
//
//-----------------------------------------------------
#region Constructors
// Prevent 3rd parties from extending this abstract base class.
internal Material() {}
#endregion Constructors
//------------------------------------------------------
//
// Internal Methods
//
//-----------------------------------------------------
#region Internal Methods
// NTRAID#Longhorn-1591973-2006/03/31-[....] - Should be using inherited "Precompute" from Animatable
//
// These return 'true' if the Material requires realization
internal abstract bool PreCompute();
internal static bool PreCompute(Brush brush)
{
bool requiresRealization = false;
if (brush != null)
{
brush.Precompute();
requiresRealization = brush.RequiresRealizationUpdates;
}
return requiresRealization;
}
internal abstract void UpdateRealizations(
RealizationContext ctx,
ref Rect bounds);
internal static void UpdateRealizations(
Brush brush,
RealizationContext ctx,
ref Rect bounds
)
{
if (brush != null)
{
brush.UpdateRealizations(bounds, ctx);
}
}
#endregion Internal Methods
//------------------------------------------------------
//
// Internal Properties
//
//------------------------------------------------------
#region Internal Properties
// NTRAID#Longhorn-1591973-2006/03/31-[....] - Should be using inherited "RequiresRealizationUpdates" from Animatable
internal abstract bool RequiresRealization
{
get;
}
#endregion Internal Properties
}
}
// 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
- ACE.cs
- UserPreferenceChangingEventArgs.cs
- FormatConvertedBitmap.cs
- CLSCompliantAttribute.cs
- COM2EnumConverter.cs
- XpsSerializationException.cs
- SerializationSectionGroup.cs
- HtmlTextArea.cs
- SafeFindHandle.cs
- ControlFilterExpression.cs
- KnownTypeHelper.cs
- ADConnectionHelper.cs
- KnownBoxes.cs
- PropertyConverter.cs
- HttpInputStream.cs
- OleDbPermission.cs
- safex509handles.cs
- Delegate.cs
- X509ScopedServiceCertificateElementCollection.cs
- ContainerSelectorGlyph.cs
- StrictModeSecurityHeaderElementInferenceEngine.cs
- KnownIds.cs
- ObjectDataSourceEventArgs.cs
- ScrollChrome.cs
- SspiHelper.cs
- OracleInfoMessageEventArgs.cs
- ProgressBar.cs
- sqlpipe.cs
- NumericUpDownAccelerationCollection.cs
- SafeHandle.cs
- TextFormatterImp.cs
- AspNetHostingPermission.cs
- XPathSelectionIterator.cs
- CreateUserWizardStep.cs
- Rect.cs
- FormsAuthentication.cs
- StandardToolWindows.cs
- PipelineModuleStepContainer.cs
- MemberHolder.cs
- RectangleHotSpot.cs
- RegisteredExpandoAttribute.cs
- HttpCookieCollection.cs
- StrongNameMembershipCondition.cs
- DbParameterCollectionHelper.cs
- GeneralTransform3DGroup.cs
- DataGridViewColumnStateChangedEventArgs.cs
- PenLineJoinValidation.cs
- Aggregates.cs
- DecimalMinMaxAggregationOperator.cs
- PeerCollaboration.cs
- CodeLabeledStatement.cs
- Vars.cs
- LoginView.cs
- LockedActivityGlyph.cs
- ComponentTray.cs
- SystemWebCachingSectionGroup.cs
- XamlSerializationHelper.cs
- RangeBase.cs
- EditorPartChrome.cs
- CoTaskMemHandle.cs
- ComplexBindingPropertiesAttribute.cs
- SqlParameter.cs
- Rotation3DKeyFrameCollection.cs
- SolidColorBrush.cs
- ResourceManager.cs
- NumberFormatter.cs
- WebBrowserDocumentCompletedEventHandler.cs
- KeyGestureConverter.cs
- SessionSwitchEventArgs.cs
- WebPartHeaderCloseVerb.cs
- RegistrationServices.cs
- Attachment.cs
- SQLMoney.cs
- CookieProtection.cs
- EdmSchemaError.cs
- SystemColorTracker.cs
- ToolStripLabel.cs
- DesignerDataTable.cs
- ExtensionSimplifierMarkupObject.cs
- IdentifierElement.cs
- BevelBitmapEffect.cs
- RepeatButton.cs
- AsymmetricAlgorithm.cs
- PointUtil.cs
- IntSecurity.cs
- DetailsViewDeletedEventArgs.cs
- HtmlGenericControl.cs
- XmlElementAttributes.cs
- TdsParserHelperClasses.cs
- SerializationSectionGroup.cs
- MainMenu.cs
- Int32Animation.cs
- ToolStripPanelRow.cs
- WebPartMinimizeVerb.cs
- BlockCollection.cs
- IProducerConsumerCollection.cs
- DataGridViewButtonCell.cs
- PrintDialogException.cs
- UnionCodeGroup.cs
- GrammarBuilderDictation.cs