Compare commits

..

6 Commits

Author SHA1 Message Date
3550951b11 更新 README.md 2023-08-24 13:46:54 +08:00
8065c7c67e update readme 2022-07-24 21:59:31 +08:00
89ffad3228 change version to v1.2.1 2022-07-24 21:58:42 +08:00
bfa7e52879 add calculated gs and reported gs 2022-07-24 21:54:39 +08:00
dda58ee6ce rename item id 2022-07-24 21:45:26 +08:00
7126a5e350 update readme 2022-07-11 11:59:11 +08:00
4 changed files with 36 additions and 23 deletions

@ -1,6 +1,6 @@
# TinyEurocat # TinyEurocat
An simple EuroScope plug-in to simulate THALES Eurocat TAG items A simple EuroScope plug-in to simulate THALES Eurocat TAG items
<hr> <hr>
@ -18,7 +18,7 @@ Open OTHER SETS -> TAG Editor, and manually replace default altitude, cleared al
- Current altitude, Cleared altitude and current speed in metric - Current altitude, Cleared altitude and current speed in metric
- show nohing when cleared altitude is 0 - show nohing when cleared altitude is 0
## Changlog ## Change Log
### v1.0.1 ### v1.0.1
@ -37,4 +37,8 @@ Open OTHER SETS -> TAG Editor, and manually replace default altitude, cleared al
- change license and copyright holder - change license and copyright holder
- remove force rvsm - remove force rvsm
- change ``GS`` source - change ``GS`` source
- change ``CFL`` algorithm - change ``CFL`` algorithm
## v1.2.1
- add both ``Reported GS`` and ``Calculated GS``

@ -6,13 +6,14 @@
TinyEurocat::TinyEurocat(void) : CPlugIn ( COMPATIBILITY_CODE, TinyEurocat::TinyEurocat(void) : CPlugIn ( COMPATIBILITY_CODE,
"TinyEurocat", "TinyEurocat",
"1.1.1", "1.2.1",
"Future Sim Studio", "Future Sim Studio",
"Copr. 2022 Future Sim Studio" ) "Copr. 2022 Future Sim Studio" )
{ {
RegisterTagItemType("Metric / Current Altitude", TAG_ITEM_MET_CURR_ALT); RegisterTagItemType("Metric / Current Altitude", ITEM_MET_AFL);
RegisterTagItemType("Metric / Cleared Altitude", TAG_ITEM_MET_ASS_ALT); RegisterTagItemType("Metric / Cleared Altitude", ITEM_MET_CFL);
RegisterTagItemType("Metric / Current Speed", TAG_ITEM_MET_CURR_SPD); RegisterTagItemType("Metric / Current Speed (Reported)", ITEM_MET_GS_R);
RegisterTagItemType("Metric / Current Speed (Calculated)", ITEM_MET_GS_C);
} }
void TinyEurocat::OnGetTagItem( CFlightPlan FlightPlan, void TinyEurocat::OnGetTagItem( CFlightPlan FlightPlan,
@ -24,11 +25,11 @@ void TinyEurocat::OnGetTagItem( CFlightPlan FlightPlan,
COLORREF *pRGB, COLORREF *pRGB,
double *pFontSize ) double *pFontSize )
{ {
int maalt, mcalt, mcspd;
switch (ItemCode) switch (ItemCode)
{ {
char tmpstr[15]; int maalt, mcalt, mcspd;
case TAG_ITEM_MET_ASS_ALT: char tmpstr[15];
case ITEM_MET_CFL:
maalt = FlightPlan.GetClearedAltitude() * 0.3048 / 10; maalt = FlightPlan.GetClearedAltitude() * 0.3048 / 10;
if (maalt > 0) if (maalt > 0)
{ {
@ -40,17 +41,23 @@ void TinyEurocat::OnGetTagItem( CFlightPlan FlightPlan,
strcpy(sItemString, " "); strcpy(sItemString, " ");
} }
break; break;
case TAG_ITEM_MET_CURR_ALT: case ITEM_MET_AFL:
mcalt = RadarTarget.GetPosition().GetPressureAltitude() * 0.3048 / 10; mcalt = RadarTarget.GetPosition().GetPressureAltitude() * 0.3048 / 10;
itoa(mcalt, tmpstr, 10); itoa(mcalt, tmpstr, 10);
sprintf(sItemString, "%04s", tmpstr); sprintf(sItemString, "%04s", tmpstr);
break; break;
case TAG_ITEM_MET_CURR_SPD: case ITEM_MET_GS_R:
mcspd = RadarTarget.GetPosition().GetReportedGS() * 1.852; mcspd = RadarTarget.GetPosition().GetReportedGS() * 1.852;
mcspd /= 10; mcspd /= 10;
itoa(mcspd, tmpstr, 10); itoa(mcspd, tmpstr, 10);
sprintf(sItemString, "%03s", tmpstr); sprintf(sItemString, "%03s", tmpstr);
break; break;
case ITEM_MET_GS_C:
mcspd = RadarTarget.GetGS() * 1.852;
mcspd /= 10;
itoa(mcspd, tmpstr, 10);
sprintf(sItemString, "%03s", tmpstr);
break;
} }
} }

@ -3,9 +3,10 @@
using namespace EuroScopePlugIn; using namespace EuroScopePlugIn;
const int TAG_ITEM_MET_CURR_ALT = 1; const int ITEM_MET_AFL = 1; // AFL in metric
const int TAG_ITEM_MET_ASS_ALT = 2; const int ITEM_MET_CFL = 2; // CFL in metric
const int TAG_ITEM_MET_CURR_SPD = 3; const int ITEM_MET_GS_R = 3; // Reported GS in metric
const int ITEM_MET_GS_C = 4; // Calculated GS in metric
class TinyEurocat : public CPlugIn class TinyEurocat : public CPlugIn
{ {
@ -13,13 +14,13 @@ class TinyEurocat : public CPlugIn
TinyEurocat(void); TinyEurocat(void);
~TinyEurocat(void); ~TinyEurocat(void);
void OnGetTagItem( CFlightPlan FlightPlan, void OnGetTagItem( CFlightPlan FlightPlan,
CRadarTarget RadarTarget, CRadarTarget RadarTarget,
int ItemCode, int ItemCode,
int TagData, int TagData,
char sItemString [ 16 ], char sItemString [ 16 ],
int *pColorCode, int *pColorCode,
COLORREF *pRGB, COLORREF *pRGB,
double *pFontSize ); double *pFontSize );
}; };

@ -14,6 +14,7 @@
<ProjectGuid>{E1145C92-0713-4553-85D3-1D20417C2989}</ProjectGuid> <ProjectGuid>{E1145C92-0713-4553-85D3-1D20417C2989}</ProjectGuid>
<RootNamespace>TinyEurocat</RootNamespace> <RootNamespace>TinyEurocat</RootNamespace>
<Keyword>MFCDLLProj</Keyword> <Keyword>MFCDLLProj</Keyword>
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
</PropertyGroup> </PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">