コード例 #1
0
 private static Bitmap MinimapToBitmap(byte[] minimap)
 {
     return(BitmapConvert.ToBitmap(
                minimap,
                SctReader.MinimapWidth,
                SctReader.MinimapHeight));
 }
コード例 #2
0
        private Bitmap TileToBitmap(byte[] tile)
        {
            var bmp = BitmapConvert.ToBitmap(
                tile,
                MapConstants.TileWidth,
                MapConstants.TileHeight);

            return(this.tileCache.GetOrAddBitmap(bmp));
        }
コード例 #3
0
        protected override void LoadFile(HpiArchive archive, HpiArchive.FileInfo file)
        {
            // extract and read the file
            var fileBuffer = new byte[file.Size];

            archive.Extract(file, fileBuffer);
            var adapter = new GafEntryArrayAdapter();

            using (var b = new GafReader(new MemoryStream(fileBuffer), adapter))
            {
                b.Read();
            }

            var gaf = adapter.Entries;

            var records = this.filenameFeatureMap[HpiPath.GetFileNameWithoutExtension(file.Name)];

            // retrieve the anim for each record
            foreach (var record in records)
            {
                var sequenceName = record.SequenceName;
                if (string.IsNullOrEmpty(sequenceName))
                {
                    // Skip if this record has no sequence name.
                    continue;
                }

                var entry = gaf.FirstOrDefault(
                    x => string.Equals(x.Name, sequenceName, StringComparison.OrdinalIgnoreCase));
                if (entry == null)
                {
                    // skip if the sequence is not in this gaf file
                    continue;
                }

                var frame = entry.Frames[0];

                Bitmap bmp;
                if (frame.Data == null || frame.Width == 0 || frame.Height == 0)
                {
                    bmp = new Bitmap(50, 50);
                }
                else
                {
                    bmp = BitmapConvert.ToBitmap(
                        frame.Data,
                        frame.Width,
                        frame.Height,
                        frame.TransparencyIndex);
                }

                var offsetImage = new OffsetBitmap(-frame.OffsetX, -frame.OffsetY, bmp);
                this.Records.Add(new KeyValuePair <string, OffsetBitmap>(record.Name, offsetImage));
            }
        }
コード例 #4
0
ファイル: MapModelFactory.cs プロジェクト: milkmanmatty/Mappy
 private static Bitmap ToBitmap(MinimapInfo minimap)
 {
     return(BitmapConvert.ToBitmap(minimap.Data, minimap.Width, minimap.Height));
 }