Class ProvinceMapParser
High-performance province map parser that combines BMP/PNG parsing with province definitions Maps RGB colors to province IDs using definition.csv data Supports both BMP and PNG formats via auto-detection
public static class ProvinceMapParser
- Inheritance
-
objectProvinceMapParser
Methods
CalculateProvinceStats(ProvinceMapResult, int)
Calculate statistics for a province
public static ProvinceMapParser.ProvinceStats CalculateProvinceStats(ProvinceMapParser.ProvinceMapResult mapResult, int provinceID)
Parameters
mapResultProvinceMapParser.ProvinceMapResultprovinceIDint
Returns
FindProvincePixels(ProvinceMapResult, int, Allocator)
Find all pixels belonging to a specific province
public static NativeList<PixelCoord> FindProvincePixels(ProvinceMapParser.ProvinceMapResult mapResult, int provinceID, Allocator allocator)
Parameters
mapResultProvinceMapParser.ProvinceMapResultprovinceIDintallocatorAllocator
Returns
- NativeList<PixelCoord>
ParseProvinceMap(NativeArray<byte>, NativeArray<byte>, Allocator)
Parse province map by combining BMP data with definition CSV (legacy method)
public static ProvinceMapParser.ProvinceMapResult ParseProvinceMap(NativeArray<byte> bmpFileData, NativeArray<byte> definitionCsvData, Allocator allocator)
Parameters
bmpFileDataNativeArray<byte>definitionCsvDataNativeArray<byte>allocatorAllocator
Returns
ParseProvinceMap(NativeSlice<byte>, NativeSlice<byte>, Allocator)
Parse province map by combining BMP data with definition CSV (legacy method)
public static ProvinceMapParser.ProvinceMapResult ParseProvinceMap(NativeSlice<byte> bmpFileData, NativeSlice<byte> definitionCsvData, Allocator allocator)
Parameters
bmpFileDataNativeSlice<byte>definitionCsvDataNativeSlice<byte>allocatorAllocator
Returns
ParseProvinceMapImageOnly(NativeArray<byte>, Allocator)
Parse province map image only (without definition CSV) Useful for map-only mode where we just need to display the map
public static ProvinceMapParser.UnifiedProvinceMapResult ParseProvinceMapImageOnly(NativeArray<byte> imageFileData, Allocator allocator)
Parameters
imageFileDataNativeArray<byte>allocatorAllocator
Returns
ParseProvinceMapUnified(NativeArray<byte>, NativeArray<byte>, Allocator)
Parse province map from any supported image format (BMP or PNG) Auto-detects format from file data
public static ProvinceMapParser.UnifiedProvinceMapResult ParseProvinceMapUnified(NativeArray<byte> imageFileData, NativeArray<byte> definitionCsvData, Allocator allocator)
Parameters
imageFileDataNativeArray<byte>definitionCsvDataNativeArray<byte>allocatorAllocator
Returns
TryGetProvinceAt(ProvinceMapResult, int, int, out int)
Get province ID at specific pixel coordinates
public static bool TryGetProvinceAt(ProvinceMapParser.ProvinceMapResult mapResult, int x, int y, out int provinceID)
Parameters
mapResultProvinceMapParser.ProvinceMapResultxintyintprovinceIDint
Returns
- bool
TryGetProvinceAtUnified(UnifiedProvinceMapResult, int, int, out int)
Get province ID at specific pixel coordinates (unified version)
public static bool TryGetProvinceAtUnified(ProvinceMapParser.UnifiedProvinceMapResult mapResult, int x, int y, out int provinceID)
Parameters
mapResultProvinceMapParser.UnifiedProvinceMapResultxintyintprovinceIDint
Returns
- bool
ValidateProvinceMap(ProvinceMapResult, Allocator)
Validate province map integrity Checks for unmapped colors, duplicate colors, etc.
public static ProvinceMapParser.ProvinceMapValidationResult ValidateProvinceMap(ProvinceMapParser.ProvinceMapResult mapResult, Allocator allocator)
Parameters
mapResultProvinceMapParser.ProvinceMapResultallocatorAllocator