public Mat GetAvatar(PCRAvatarLevel avatarLevel) { var path = GetAvatarPath(avatarLevel); var mat = OpenCvExtension.ReadMatFromFile(path); return(mat); }
public string GetAvatarPath(PCRAvatarLevel avatarLevel) { var avatarName = GetAvatarName(avatarLevel); var path = pcrTools.ChooseFilePath("Img/unit", null, avatarName); return(path); }
public static int GetRequiredStars(this PCRAvatarLevel avatarLevel) { switch (avatarLevel) { case PCRAvatarLevel.Level1: return(1); case PCRAvatarLevel.Level3: return(3); case PCRAvatarLevel.Level6: return(6); } return(0); }
protected Mat GetUnitAvatarPartial(string unitID, PCRAvatarLevel avatarLevel, int templateWidth) { var key = $"{unitID}_{avatarLevel}_{templateWidth}"; if (unitAvatarPartialDict.ContainsKey(key)) { return(unitAvatarPartialDict[key]); } var unit = PCRUnit.FromUnitID(unitID, avatarLevel.GetRequiredStars()); var avatar = unit.GetResizedAvatar(avatarLevel, templateWidth); var avatarPartial = avatar.GetChildMatByRectRate(unitAvatarPartialRectRate); unitAvatarPartialDict[key] = avatarPartial; return(avatarPartial); }
/// <summary> /// /// </summary> /// <param name="avatarLevel"></param> /// <param name="templateWidth">1280*640像素下的图标大小</param> /// <returns></returns> public Mat GetResizedAvatar(PCRAvatarLevel avatarLevel, int templateWidth) { var avatarResSize = configMgr.UnitAvatarResourceSize; var viewportSize = pcrTools.GetViewportSize(); var viewportTemplateSize = configMgr.MumuViewportTemplateSize; var viewportScale = 1.0 * viewportSize.Width / viewportTemplateSize.Width; var avatarScale = 1.0 * templateWidth / avatarResSize.Width * viewportScale; var mat = GetAvatar(avatarLevel); var resized = mat.Resize(new OpenCvSize(mat.Width * avatarScale, mat.Height * avatarScale)); return(resized); }
public Mat GetResizedAvatar(PCRAvatarLevel avatarLevel) { var avatarTemplateSize = configMgr.UnitAvatarTemplateSize; return(GetResizedAvatar(avatarLevel, avatarTemplateSize.Width)); }
public string GetAvatarName(PCRAvatarLevel avatarLevel) { return(GetAvatarName(ID, avatarLevel)); }
public static string GetAvatarName(string ID, PCRAvatarLevel avatarLevel) { return($"icon_unit_{ID}{avatarLevel.GetRequiredStars()}1.png"); }