private void InitializeCompositionVariables() { var bounds = ApplicationView.GetForCurrentView().VisibleBounds; var maxWindowWidth = bounds.Width.ToFloat(); var maxWindowHeight = bounds.Height.ToFloat(); var maxWindowRadius = Math.Max(maxWindowWidth, maxWindowHeight); // Setup sky visual's size, position, opacity, etc. _skyVisual = Sky.ContainerVisual(); _skyVisual.Size = new Vector2(maxWindowRadius * SkyVisualAreaRatio); _skyVisual.Offset = new Vector3(-SkyVisualRadius + maxWindowWidth / 2.0f, -SkyVisualRadius + maxWindowHeight / 2.0f, 0.0f); _skyVisual.CenterPoint = new Vector3(SkyVisualRadius, SkyVisualRadius, 0.0f); _skyVisual.Opacity = 0; _compositor = _skyVisual.Compositor; _reading = _compositor.CreatePropertySet(); _reading.InsertVector3("Offset", new Vector3(0.0f, 0.0f, 0.0f)); _imageLoader = ImageLoaderFactory.CreateImageLoader(_compositor); _circleBrush = _compositor.CreateSurfaceBrush(); _circleBrush.Surface = _imageLoader.LoadImageFromUri(new Uri(StarUriString)); if (_inclinometer != null) { SetupSkyVisualOffsetExpressionAnimation(); } }
private CompositionSurfaceBrush CreateBrushFromAsset(string name, out Size size) { IImageLoader imageLoader = ImageLoaderFactory.CreateImageLoader(m_compositor); CompositionDrawingSurface surface = imageLoader.LoadImageFromUri(new Uri("ms-appx:///Assets/" + name)); size = surface.Size; return(m_compositor.CreateSurfaceBrush(surface)); }
/// <summary> /// Initialize Composition /// </summary> private void InitializeComposition() { // Retrieve an instance of the Compositor from the backing Visual of the Page _compositor = ElementCompositionPreview.GetElementVisual(this).Compositor; // Create a root visual from the Compositor _root = _compositor.CreateContainerVisual(); // Set the root ContainerVisual as the XAML Page Visual ElementCompositionPreview.SetElementChildVisual(this, _root); // Assign initial values to variables used to store updated offsets for the visuals float posXUpdated = _posX; float posYUpdated = _posY; // Create a list of image brushes that can be applied to a visual string[] imageNames = { "01.png", "02.png", "03.png", "04.png", "05.png", "06.png", "07.png", "08.png", "60Banana.png", "60Lemon.png", "60Vanilla.png", "60Mint.png", "60Orange.png", "110Strawberry.png", "60SprinklesRainbow.png" }; List <CompositionSurfaceBrush> imageBrushList = new List <CompositionSurfaceBrush>(); IImageLoader imageFactory = ImageLoaderFactory.CreateImageLoader(_compositor); for (int k = 0; k < imageNames.Length; k++) { var surface = imageFactory.LoadImageFromUri(new Uri("ms-appx:///Assets/Images/Composition/ImplicitAnimation/" + imageNames[k])); imageBrushList.Add(_compositor.CreateSurfaceBrush(surface)); } // Create nxn matrix of visuals where n=row/ColumnCount-1 and passes random image brush to the function // that creates a visual for (int i = 1; i < _rowCount; i++) { posXUpdated = i * _distance; for (int j = 1; j < _columnCount; j++) { CompositionSurfaceBrush brush = imageBrushList[randomBrush.Next(imageBrushList.Count)]; posYUpdated = j * _distance; _root.Children.InsertAtTop(CreateChildElement(brush, posXUpdated, posYUpdated)); } } EnableAnimationOnChildren(EnableAnimations.IsChecked.GetValueOrDefault()); }
private void SetImageBrush(string uri) { // Update the sprite _imageBrush.Surface = _imageLoader.LoadImageFromUri(new Uri(uri)); UpdateImageBrush(); // Update the preview image BitmapImage image = new BitmapImage(new Uri(uri)); ImagePreview.Source = image; }
/// <summary> /// Instantiate brush scenarios to use on the visual; used in combobox BrushSelection changed event. /// </summary> private static INineGridScenario[] CreateBrushes(Compositor compositor, IImageLoader imageLoader, Vector2 visualSize) { // Load image to surfaceBrush (this asset serves as the alpha mask as well) var surface = imageLoader.LoadImageFromUri(new Uri("ms-appx:///Samples/SDK 14393/NineGridResizing/RoundedRect.png")); var imageBrush = compositor.CreateSurfaceBrush(surface); imageBrush.Stretch = CompositionStretch.Fill; // Create INineGridScenario array to return. Surface scenario is special because it's used as input to another scenario var surfaceNineGridScenario = new SurfaceNineGridScenario(compositor, imageBrush, "Source: SurfaceBrush"); return(new INineGridScenario[] { new ColorNineGridScenario(compositor, "Source: ColorBrush(hollow)"), new BorderNineGridScenario(compositor, imageBrush, visualSize, "Source: ColorBrush(w/ content)"), surfaceNineGridScenario, new EffectNineGridScenario(compositor, (CompositionNineGridBrush)surfaceNineGridScenario.Brush, "Input to: EffectBrush"), new MaskNineGridScenario(compositor, imageBrush, "Input to: MaskBrush") }); }
/// <summary> /// Initialize Composition /// </summary> private void InitializeComposition() { // Retrieve an instance of the Compositor from the backing Visual of the Page _compositor = ElementCompositionPreview.GetElementVisual(this).Compositor; // Create a root visual from the Compositor _root = _compositor.CreateContainerVisual(); // Set the root ContainerVisual as the XAML Page Visual ElementCompositionPreview.SetElementChildVisual(this, _root); // Assign initial values to variables used to store updated offsets for the visuals float posXUpdated = _posX; float posYUpdated = _posY; //Create a list of image brushes that can be applied to a visual string[] imageNames = { "60Banana.png", "60Lemon.png", "60Vanilla.png", "60Mint.png", "60Orange.png", "110Strawberry.png", "60SprinklesRainbow.png" }; _imageBrushList = new List<CompositionSurfaceBrush>(); _imageLoader = ImageLoaderFactory.CreateImageLoader(_compositor); for (int k = 0; k < imageNames.Length; k++) { var surface = _imageLoader.LoadImageFromUri(new Uri("ms-appx:///Samples/SDK 14393/ImplicitAnimationTransformer/" + imageNames[k])); _imageBrushList.Add(_compositor.CreateSurfaceBrush(surface)); } // Create nxn matrix of visuals where n=row/ColumnCount-1 and passes random image brush to the function // that creates a visual for (int i = 1; i < _rowCount; i++) { posXUpdated = i * _distance; for (int j = 1; j < _columnCount; j++) { CompositionSurfaceBrush brush = _imageBrushList[randomBrush.Next(_imageBrushList.Count)]; posYUpdated = j * _distance; _root.Children.InsertAtTop(CreateChildElement(brush, posXUpdated, posYUpdated)); } } // Update the default animation state UpdateAnimationState(EnableAnimations.IsChecked == true); }
//private async Task HideStatusBar() //{ // //if (ApiInformation.IsApiContractPresent("Windows.Phone.PhoneContract", 1, 0)) // //{ // // var statusBar = StatusBar.GetForCurrentView(); // // await statusBar.HideAsync(); // //} //} private void InitializeCompositionVariables() { var bounds = ApplicationView.GetForCurrentView().VisibleBounds; var maxWindowWidth = bounds.Width.ToFloat(); var maxWindowHeight = bounds.Height.ToFloat(); var maxWindowRadius = Math.Max(maxWindowWidth, maxWindowHeight); // Setup sky visual's size, position, opacity, etc. _skyVisual = Sky.ContainerVisual(); _skyVisual.Size = new Vector2(maxWindowRadius * SkyVisualAreaRatio); _skyVisual.Offset = new Vector3(-SkyVisualRadius + maxWindowWidth / 2.0f, -SkyVisualRadius + maxWindowHeight / 2.0f, 0.0f); _skyVisual.CenterPoint = new Vector3(SkyVisualRadius, SkyVisualRadius, 0.0f); _skyVisual.Opacity = 0; _compositor = _skyVisual.Compositor; _reading = _compositor.CreatePropertySet(); _reading.InsertVector3("Offset", new Vector3(0.0f, 0.0f, 0.0f)); _imageLoader = ImageLoaderFactory.CreateImageLoader(_compositor); _circleBrush = _compositor.CreateSurfaceBrush(); _circleBrush.Surface = _imageLoader.LoadImageFromUri(new Uri(StarUriString)); if (_inclinometer != null) SetupSkyVisualOffsetExpressionAnimation(); }