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 / Scene3D.cs / 1 / Scene3D.cs
//----------------------------------------------------------------------------
//
//
// Copyright (C) Microsoft Corporation. All rights reserved.
//
//
//
// Description: Scene3D implementation.
//
// See spec at http://avalon/medialayer/Specifications/Avalon3D%20API%20Spec.mht
//---------------------------------------------------------------------------
using System;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Media.Composition;
using MS.Internal;
using System.ComponentModel.Design.Serialization;
using System.Windows.Markup;
using MS.Internal.Media3D;
namespace System.Windows.Media.Media3D
{
internal partial class Scene3D : Animatable
{
internal Scene3D()
{
}
///
/// Marks the visible realizations of the Scene3D.
///
internal void MarkVisibleRealizations(RealizationContext ctx)
{
Camera camera = Camera;
if (Models != null && camera != null)
{
Matrix3D view = camera.GetViewMatrix();
Matrix3D proj = camera.GetProjectionMatrix(M3DUtil.GetAspectRatio(Viewport.Size));
Matrix3DStack stack3D = ctx.Transform3DStack;
//
// Update the 3D stack with the coordinate system change into
// 2D space.
stack3D.Push(proj); // Apply the projection transform (perspective, orthographic, etc.)
stack3D.Push(view); // Position and orient camera.
Models.MarkVisibleRealizations(ctx);
stack3D.Pop(); // Projection.
stack3D.Pop(); // Camera view.
}
}
}
}
// 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: Scene3D implementation.
//
// See spec at http://avalon/medialayer/Specifications/Avalon3D%20API%20Spec.mht
//---------------------------------------------------------------------------
using System;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Media.Composition;
using MS.Internal;
using System.ComponentModel.Design.Serialization;
using System.Windows.Markup;
using MS.Internal.Media3D;
namespace System.Windows.Media.Media3D
{
internal partial class Scene3D : Animatable
{
internal Scene3D()
{
}
///
/// Marks the visible realizations of the Scene3D.
///
internal void MarkVisibleRealizations(RealizationContext ctx)
{
Camera camera = Camera;
if (Models != null && camera != null)
{
Matrix3D view = camera.GetViewMatrix();
Matrix3D proj = camera.GetProjectionMatrix(M3DUtil.GetAspectRatio(Viewport.Size));
Matrix3DStack stack3D = ctx.Transform3DStack;
//
// Update the 3D stack with the coordinate system change into
// 2D space.
stack3D.Push(proj); // Apply the projection transform (perspective, orthographic, etc.)
stack3D.Push(view); // Position and orient camera.
Models.MarkVisibleRealizations(ctx);
stack3D.Pop(); // Projection.
stack3D.Pop(); // Camera view.
}
}
}
}
// 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
- DomNameTable.cs
- CultureInfoConverter.cs
- DelegateBodyWriter.cs
- MemoryFailPoint.cs
- ContractNamespaceAttribute.cs
- XmlAttributeCollection.cs
- MetadataSerializer.cs
- EmptyEnumerator.cs
- SqlFactory.cs
- NamespaceEmitter.cs
- StringFormat.cs
- XMLUtil.cs
- SqlBuffer.cs
- AjaxFrameworkAssemblyAttribute.cs
- WindowsPen.cs
- MaskedTextBoxTextEditor.cs
- InfoCardKeyedHashAlgorithm.cs
- ViewBox.cs
- ObjectDataSourceEventArgs.cs
- XhtmlStyleClass.cs
- StorageMappingFragment.cs
- HostnameComparisonMode.cs
- DragEventArgs.cs
- ValidationPropertyAttribute.cs
- DataGridLinkButton.cs
- TypeDelegator.cs
- XmlDocumentType.cs
- UIElementCollection.cs
- ImageSource.cs
- SharedStream.cs
- TextDecorationCollection.cs
- ProfilePropertyMetadata.cs
- Dispatcher.cs
- ReadOnlyKeyedCollection.cs
- StringUtil.cs
- SQLString.cs
- AttachedProperty.cs
- ListViewUpdateEventArgs.cs
- XmlAttributes.cs
- backend.cs
- PartialClassGenerationTaskInternal.cs
- HiddenField.cs
- RuntimeResourceSet.cs
- SendKeys.cs
- Stopwatch.cs
- SlotInfo.cs
- LogoValidationException.cs
- PathData.cs
- SingleAnimationUsingKeyFrames.cs
- ListSourceHelper.cs
- ConfigurationManagerHelper.cs
- ScaleTransform.cs
- PolyLineSegment.cs
- DynamicAttribute.cs
- FontCacheLogic.cs
- BaseConfigurationRecord.cs
- HMACSHA256.cs
- XmlSerializerNamespaces.cs
- DocumentXPathNavigator.cs
- CodeTypeParameter.cs
- WebSysDescriptionAttribute.cs
- InstanceData.cs
- GridViewCancelEditEventArgs.cs
- mediaeventshelper.cs
- EnumerableRowCollection.cs
- XmlException.cs
- ParallelTimeline.cs
- CapabilitiesRule.cs
- WebServiceEnumData.cs
- HandlerFactoryCache.cs
- arc.cs
- InitializationEventAttribute.cs
- SimplePropertyEntry.cs
- DataListItemEventArgs.cs
- Margins.cs
- FixUp.cs
- ScaleTransform.cs
- WorkflowFileItem.cs
- ListViewAutomationPeer.cs
- DES.cs
- EventQueueState.cs
- ScalarOps.cs
- CngAlgorithmGroup.cs
- UIElementIsland.cs
- DefinitionUpdate.cs
- HtmlFormWrapper.cs
- WeakRefEnumerator.cs
- MediaCommands.cs
- StringComparer.cs
- _SafeNetHandles.cs
- _NegoStream.cs
- ColumnClickEvent.cs
- ComplexLine.cs
- SqlCommandSet.cs
- WebScriptEnablingElement.cs
- XPathConvert.cs
- RtfToXamlLexer.cs
- SuppressMergeCheckAttribute.cs
- AddValidationError.cs
- Unit.cs