Jypeli  9
The simple game programming library
DisplayResolution.cs
Siirry tämän tiedoston dokumentaatioon.
1 using System;
2 
3 namespace Jypeli
4 {
5  public class DisplayResolution : IEquatable<DisplayResolution>
6  {
11  public static readonly DisplayResolution Small = new DisplayResolution( 400, 240 );
12 
17  public static readonly DisplayResolution Large = new DisplayResolution( 800, 480 );
18 
23  public static readonly DisplayResolution HD720 = new DisplayResolution( 1280, 720 );
24 
29  public static readonly DisplayResolution HD1080 = new DisplayResolution( 1920, 1080 );
30 
31 
35  public int Width { get; private set; }
36 
40  public int Height { get; private set; }
41 
45  public double AspectRatio
46  {
47  get { return Width / Height; }
48  }
49 
53  public int PixelCount
54  {
55  get { return Width * Height; }
56  }
57 
63  public DisplayResolution(int width, int height)
64  {
65  if ( width <= 0 || height <= 0 )
66  throw new ArgumentException( "Width and height must be positive integers" );
67 
68  this.Width = width;
69  this.Height = height;
70  }
71 
72  public override int GetHashCode()
73  {
74  return ( Width << 16 ) | Height;
75  }
76 
77  public override bool Equals( object obj )
78  {
79  return this.Equals( obj as DisplayResolution );
80  }
81 
82  public bool Equals( DisplayResolution other )
83  {
84  if ( other == null )
85  return false;
86 
87  return other.Width == this.Width && other.Height == this.Height;
88  }
89 
91  {
92  if ( ReferenceEquals(a, null) )
93  return ReferenceEquals( b, null );
94  if ( ReferenceEquals( b, null ) )
95  return false;
96 
97  return a.Width == b.Width && a.Height == b.Height;
98  }
99 
101  {
102  if ( ReferenceEquals( a, null ) )
103  return !ReferenceEquals( b, null );
104  if ( ReferenceEquals( b, null ) )
105  return true;
106 
107  return a.Width != b.Width || a.Height != b.Height;
108  }
109  }
110 }
Jypeli.DisplayResolution.GetHashCode
override int GetHashCode()
Definition: DisplayResolution.cs:72
Jypeli.DisplayResolution.operator==
static bool operator==(DisplayResolution a, DisplayResolution b)
Definition: DisplayResolution.cs:90
Jypeli
Definition: Automobile.cs:5
Jypeli.DisplayResolution.Height
int Height
Näytön korkeus pikseleinä.
Definition: DisplayResolution.cs:40
Jypeli.DisplayResolution.Equals
bool Equals(DisplayResolution other)
Definition: DisplayResolution.cs:82
Jypeli.DisplayResolution.operator!=
static bool operator!=(DisplayResolution a, DisplayResolution b)
Definition: DisplayResolution.cs:100
Jypeli.DisplayResolution.HD720
static readonly DisplayResolution HD720
HD720-tarkkuus (720p, 1280 x 720). Ei toimi kaikilla puhelimilla.
Definition: DisplayResolution.cs:23
Jypeli.DisplayResolution.Equals
override bool Equals(object obj)
Definition: DisplayResolution.cs:77
Jypeli.DisplayResolution.PixelCount
int PixelCount
Näytön pikselien määrä.
Definition: DisplayResolution.cs:54
Jypeli.DisplayResolution.DisplayResolution
DisplayResolution(int width, int height)
Alustaa uuden näyttöresoluution.
Definition: DisplayResolution.cs:63
Jypeli.DisplayResolution.Large
static readonly DisplayResolution Large
Suuri tarkkuus (WVGA, 800 x 480). Oletus WP8:lla.
Definition: DisplayResolution.cs:17
Jypeli.DisplayResolution.Width
int Width
Näytön leveys pikseleinä.
Definition: DisplayResolution.cs:35
Jypeli.DisplayResolution.Small
static readonly DisplayResolution Small
Pieni tarkkuus (WVGA, 400 x 240). WP7-yhteensopivuustila, ei varsinaisesti paranna suorituskykyä.
Definition: DisplayResolution.cs:11
System
Definition: CFFauxAttributes.cs:29
Jypeli.DisplayResolution.HD1080
static readonly DisplayResolution HD1080
HD1080-tarkkuus (1080p, 1920 x 1080). Ei toimi kaikilla puhelimilla.
Definition: DisplayResolution.cs:29
Jypeli.DisplayResolution
Definition: DisplayResolution.cs:6
Jypeli.DisplayResolution.AspectRatio
double AspectRatio
Näytön kuvasuhde.
Definition: DisplayResolution.cs:46