Jypeli 10
The simple game programming library
DisplayResolution.cs
Siirry tämän tiedoston dokumentaatioon.
1using System;
2
3namespace Jypeli
4{
8 public class DisplayResolution : IEquatable<DisplayResolution>
9 {
14 public static readonly DisplayResolution Small = new DisplayResolution( 400, 240 );
15
20 public static readonly DisplayResolution Large = new DisplayResolution( 800, 480 );
21
26 public static readonly DisplayResolution HD720 = new DisplayResolution( 1280, 720 );
27
32 public static readonly DisplayResolution HD1080 = new DisplayResolution( 1920, 1080 );
33
34
38 public int Width { get; private set; }
39
43 public int Height { get; private set; }
44
48 public double AspectRatio
49 {
50 get { return Width / Height; }
51 }
52
56 public int PixelCount
57 {
58 get { return Width * Height; }
59 }
60
66 public DisplayResolution(int width, int height)
67 {
68 if ( width <= 0 || height <= 0 )
69 throw new ArgumentException( "Width and height must be positive integers" );
70
71 this.Width = width;
72 this.Height = height;
73 }
74
79 public override int GetHashCode()
80 {
81 return ( Width << 16 ) | Height;
82 }
83
89 public override bool Equals( object obj )
90 {
91 return this.Equals( obj as DisplayResolution );
92 }
93
99 public bool Equals( DisplayResolution other )
100 {
101 if ( other == null )
102 return false;
103
104 return other.Width == this.Width && other.Height == this.Height;
105 }
106
114 {
115 if ( ReferenceEquals(a, null) )
116 return ReferenceEquals( b, null );
117 if ( ReferenceEquals( b, null ) )
118 return false;
119
120 return a.Width == b.Width && a.Height == b.Height;
121 }
122
130 {
131 if ( ReferenceEquals( a, null ) )
132 return !ReferenceEquals( b, null );
133 if ( ReferenceEquals( b, null ) )
134 return true;
135
136 return a.Width != b.Width || a.Height != b.Height;
137 }
138 }
139}
Mobiililaitteiden resoluutiovaihtoehdot
override int GetHashCode()
Hajautuskoodi
int Height
Näytön korkeus pikseleinä.
int Width
Näytön leveys pikseleinä.
static readonly DisplayResolution Small
Pieni tarkkuus (WVGA, 400 x 240). WP7-yhteensopivuustila, ei varsinaisesti paranna suorituskykyä.
bool Equals(DisplayResolution other)
Onko ruutujen koot samat
static readonly DisplayResolution HD1080
HD1080-tarkkuus (1080p, 1920 x 1080). Ei toimi kaikilla puhelimilla.
override bool Equals(object obj)
Onko ruutujen koot samat
static readonly DisplayResolution HD720
HD720-tarkkuus (720p, 1280 x 720). Ei toimi kaikilla puhelimilla.
DisplayResolution(int width, int height)
Alustaa uuden näyttöresoluution.
double AspectRatio
Näytön kuvasuhde.
static bool operator==(DisplayResolution a, DisplayResolution b)
Onko ruutujen koot samat
int PixelCount
Näytön pikselien määrä.
static bool operator!=(DisplayResolution a, DisplayResolution b)
Onko ruutujen koot eri
static readonly DisplayResolution Large
Suuri tarkkuus (WVGA, 800 x 480). Oletus WP8:lla.