Merge branch 'master' into bug3985

Conflicts:
	java/com.sap.sailing.gwt.ui/src/main/resources/com/sap/sailing/gwt/home/solutions/SailingAnalyticsNotes.html
This commit is contained in:
Kai Boernert committed 2017-03-07 08:40:25 +01:00
commit 4ba9ed37ac
256 files changed
+44561 -1973

No files matched your search

@@ -1,14 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
<file datatype="javapropertyresourcebundle" original="/usr/sap/ljs/app/Converter_5695884392650631812/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.properties" source-language="en">
<file datatype="javapropertyresourcebundle" original="/usr/sap/ljs/app/Converter_3649715102646741138/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.properties" source-language="en">
<header>
<skl>
<internal-file crc="6ffb700eb4d51087550bf42ca10ed30d" form="base64">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 truncated
<internal-file crc="be74907111a4251aa98de3b49efe8644" form="base64">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 truncated
</skl>
<phase-group>
<phase company-name="SAP AG" date="2017-01-05T16:37:33Z" phase-name="file-creation" process-name="file-creation" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter"/>
<phase company-name="SAP AG" date="2017-03-03T17:04:43Z" phase-name="file-creation" process-name="file-creation" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter"/>
</phase-group>
<tool tool-company="SAP AG" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter" tool-name="TEW: Javascript .properties Flexible File Converter" tool-version="1.1.0"/>
<tool tool-company="SAP AG" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter" tool-name="TEW: Java properties Flexible File Converter" tool-version="1.1.0"/>
</header>
<body>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="manage2Sail" resname="manage2Sail">
@@ -941,6 +941,9 @@
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="combinedWindSourceTypeName" resname="combinedWindSourceTypeName">
<source>Combined</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="legMiddleWindSourceTypeName" resname="legMiddleWindSourceTypeName">
<source>Middle of Leg</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="courseBasedWindSourceTypeName" resname="courseBasedWindSourceTypeName">
<source>Course Layout</source>
</trans-unit>
@@ -2690,6 +2693,9 @@
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="windImport_ResultError" resname="windImport_ResultError">
<source>Error: <ph id="1">{0}</ph></source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="gribWindImport_Title" resname="gribWindImport_Title">
<source>Import wind from GRIB files</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="showWindSpeedSeriesTooltip" resname="showWindSpeedSeriesTooltip">
<source>Toggles the visibility of the wind speed for all data sources</source>
</trans-unit>
@@ -2699,6 +2705,9 @@
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="combinedWindSourceTypeTooltip" resname="combinedWindSourceTypeTooltip">
<source>Combines all other wind sources to one data set</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="legMiddleWindSourceTypeTooltip" resname="legMiddleWindSourceTypeTooltip">
<source>Combined wind at the mid point of a leg''s rhumb line</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="courseBasedWindSourceTypeTooltip" resname="courseBasedWindSourceTypeTooltip">
<source>A value based on the course layout (under the assumption, that the race starts with an upwind leg)</source>
</trans-unit>
@@ -4683,6 +4692,9 @@
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="importWindTracks" resname="importWindTracks">
<source>Importing wind tracks</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="importSensorFixes" resname="importSensorFixes">
<source>Importing sensor fixes</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="updateEventLeaderboardGroupLinks" resname="updateEventLeaderboardGroupLinks">
<source>Updating Event-LeaderboardGroup links</source>
</trans-unit>
@@ -5083,10 +5095,10 @@
<source>Official Technical Partner of the Extreme Sailing Series</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="contentSapInSailing10" resname="contentSapInSailing10">
<source>Premium Partner of Germany’s national sailing team, Audi Sailing Team Germany</source>
<source>Partner of the world’s largest regatta, Kieler Woche (Kiel Week)</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="contentSapInSailing11" resname="contentSapInSailing11">
<source>Premium Partner of the world’s largest regatta, Kieler Woche (Kiel Week)</source>
<source>Technical Partner of the Sailing Champions League</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="contentSapInSailing12" resname="contentSapInSailing12">
<source>Title sponsor of the SAP 5O5 World Championships</source>
@@ -5202,6 +5214,90 @@
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="replicables" resname="replicables">
<source>Replicating objects</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="set" resname="set">
<source>Set</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaRacesLegendWind" resname="eventRegattaRacesLegendWind">
<source># Wind sensors</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaRacesLegendVideo" resname="eventRegattaRacesLegendVideo">
<source># Video streams</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaRacesLegendAudio" resname="eventRegattaRacesLegendAudio">
<source># Audio Streams</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaHeaderLegendGps" resname="eventRegattaHeaderLegendGps">
<source>Has tracking data</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaHeaderLegendWind" resname="eventRegattaHeaderLegendWind">
<source>Has wind data</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaHeaderLegendVideo" resname="eventRegattaHeaderLegendVideo">
<source>Has video streams</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaHeaderLegendAudio" resname="eventRegattaHeaderLegendAudio">
<source>Has audio streams</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaHeaderLegendGpsNo" resname="eventRegattaHeaderLegendGpsNo">
<source>No tracking data</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaHeaderLegendWindNo" resname="eventRegattaHeaderLegendWindNo">
<source>No wind data</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaHeaderLegendVideoNo" resname="eventRegattaHeaderLegendVideoNo">
<source>No video streams</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaHeaderLegendAudioNo" resname="eventRegattaHeaderLegendAudioNo">
<source>No audio streams</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="angleInDegree" resname="angleInDegree">
<source>Angle in degree</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="angleInRadian" resname="angleInRadian">
<source>Angle in radian</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="centralAngleInRadian" resname="centralAngleInRadian">
<source>Central angle in radian</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="centralAngleInDegree" resname="centralAngleInDegree">
<source>Central angle in degree</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="kilometers" resname="kilometers">
<source>Kilometers</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="meters" resname="meters">
<source>Meters</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="nauticalMiles" resname="nauticalMiles">
<source>Nautical Miles</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="seaMiles" resname="seaMiles">
<source>Sea Miles</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="geographicalMiles" resname="geographicalMiles">
<source>Geographical Miles</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="days" resname="days">
<source>Days</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="hours" resname="hours">
<source>Hours</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="minutes" resname="minutes">
<source>Minutes</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="seconds" resname="seconds">
<source>Seconds</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="milliseconds" resname="milliseconds">
<source>Milliseconds</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="floatNumber" resname="floatNumber">
<source>Float</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="integer" resname="integer">
<source>Integer</source>
</trans-unit>
</body>
</file>
</xliff>
@@ -1,14 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
<file datatype="javapropertyresourcebundle" date="2017-01-12T14:30:30Z" original="/usr/sap/ljs/app/Converter_5695884392650631812/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.properties" source-language="en" target-language="ja">
<file datatype="javapropertyresourcebundle" date="2017-03-03T15:29:28Z" original="/usr/sap/ljs/app/Converter_7519916557605079548/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.properties" source-language="en" target-language="ja">
<header>
<skl>
<internal-file crc="6ffb700eb4d51087550bf42ca10ed30d" form="base64">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 truncated
<internal-file crc="04cc06c51aa8cec2b9e9ca848362f6bf" form="base64">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 truncated
</skl>
<phase-group>
<phase company-name="SAP AG" date="2017-01-05T16:37:33Z" phase-name="file-creation" process-name="file-creation" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter"/>
<phase company-name="SAP AG" date="2017-02-23T16:17:36Z" phase-name="file-creation" process-name="file-creation" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter"/>
</phase-group>
<tool tool-company="SAP AG" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter" tool-name="TEW: Javascript .properties Flexible File Converter" tool-version="1.1.0"/>
<tool tool-company="SAP AG" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter" tool-name="TEW: Java properties Flexible File Converter" tool-version="1.1.0"/>
</header>
<body>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="manage2Sail" resname="manage2Sail">
@@ -1251,6 +1251,10 @@
<source>Combined</source>
<target state="signed-off">複合</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="legMiddleWindSourceTypeName" resname="legMiddleWindSourceTypeName">
<source>Middle of Leg</source>
<target>レグの中間</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="courseBasedWindSourceTypeName" resname="courseBasedWindSourceTypeName">
<source>Course Layout</source>
<target state="signed-off">コースレイアウト</target>
@@ -1397,7 +1401,7 @@
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="replicatingFromMaster" resname="replicatingFromMaster">
<source>Replicating from master <ph id="1">{0}</ph>:<ph id="2">{2}</ph>, messaging port <ph id="3">{3}</ph>:<ph id="4">{1}</ph>, exchange <ph id="5">{4}</ph>, replicating <ph id="6">{5}</ph></source>
<target state="translated">マスタ <ph id="1">{0}</ph>:<ph id="2">{2}</ph>、メッセージングポート <ph id="3">{3}</ph>:<ph id="4">{1}</ph>、エクスチェンジ <ph id="5">{4}</ph> から複製、<ph id="6">{5}</ph> を複製</target>
<target state="signed-off">マスタ <ph id="1">{0}</ph>:<ph id="2">{2}</ph>、メッセージングポート <ph id="3">{3}</ph>:<ph id="4">{1}</ph>、エクスチェンジ <ph id="5">{4}</ph> から複製、<ph id="6">{5}</ph> を複製</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="showWindSpeedSeries" resname="showWindSpeedSeries">
<source>Show wind speed data</source>
@@ -2617,11 +2621,11 @@
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="distanceToLineAtRaceStartTooltip" resname="distanceToLineAtRaceStartTooltip">
<source>Distance to start line at race start time; distance to nearest line end in case the competitor projects beyond the line''s ends</source>
<target state="translated">レーススタート時刻のスタートラインまでの距離 (競技者がスタートラインの各エンドより外側に位置している場合は近い方のエンドまでの距離)</target>
<target state="signed-off">レーススタート時刻のスタートラインまでの距離 (競技者がスタートラインの各エンドより外側に位置している場合は近い方のエンドまでの距離)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="distanceToLineFiveSecondsBeforeStartTooltip" resname="distanceToLineFiveSecondsBeforeStartTooltip">
<source>Distance to start line five seconds before the start; distance to nearest line end in case the competitor projects beyond the line''s ends</source>
<target state="translated">スタート 5 秒前のスタートラインまでの距離 (競技者がスタートラインの各エンドより外側に位置している場合は近い方のエンドまでの距離)</target>
<target state="signed-off">スタート 5 秒前のスタートラインまでの距離 (競技者がスタートラインの各エンドより外側に位置している場合は近い方のエンドまでの距離)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="speedOverGroundAtRaceStartTooltip" resname="speedOverGroundAtRaceStartTooltip">
<source>Speed over ground at race start time</source>
@@ -3583,6 +3587,10 @@
<source>Error: <ph id="1">{0}</ph></source>
<target state="signed-off">エラー: <ph id="1">{0}</ph></target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="gribWindImport_Title" resname="gribWindImport_Title">
<source>Import wind from GRIB files</source>
<target>風を GRIB ファイルからインポート</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="showWindSpeedSeriesTooltip" resname="showWindSpeedSeriesTooltip">
<source>Toggles the visibility of the wind speed for all data sources</source>
<target state="signed-off">すべてのデータソースに対する風速の表示を切替</target>
@@ -3595,6 +3603,10 @@
<source>Combines all other wind sources to one data set</source>
<target state="signed-off">他のすべての風源を 1 つのデータセットに結合</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="legMiddleWindSourceTypeTooltip" resname="legMiddleWindSourceTypeTooltip">
<source>Combined wind at the mid point of a leg''s rhumb line</source>
<target>レグの航程線の中間点での見かけの風</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="courseBasedWindSourceTypeTooltip" resname="courseBasedWindSourceTypeTooltip">
<source>A value based on the course layout (under the assumption, that the race starts with an upwind leg)</source>
<target state="signed-off">コースレイアウトに基づく値 (アップウィンドレグでレースがスタートするという想定)</target>
@@ -6085,7 +6097,7 @@
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="playstoreBadge" resname="playstoreBadge">
<source>https://play.google.com/intl/en/badges/images/badge_new.png</source>
<target state="translated">https://play.google.com/intl/en/badges/images/badge_new.png</target>
<target state="signed-off">https://play.google.com/intl/en/badges/images/badge_new.png</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="appstoreSapSailInsight" resname="appstoreSapSailInsight">
<source>http://appstore.com/sapsailinsight</source>
@@ -6145,7 +6157,7 @@
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="selectCompetitorImportProvider" resname="selectCompetitorImportProvider">
<source>Please select a competitor import provider...</source>
<target>競技者インポートプロバイダを選択してください...</target>
<target state="signed-off">競技者インポートプロバイダを選択してください...</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="selectResultImportProvider" resname="selectResultImportProvider">
<source>Please select a result import provider...</source>
@@ -6239,6 +6251,10 @@
<source>Importing wind tracks</source>
<target state="signed-off">風追跡のインポート</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="importSensorFixes" resname="importSensorFixes">
<source>Importing sensor fixes</source>
<target state="signed-off">センサーフィックスのインポート</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="updateEventLeaderboardGroupLinks" resname="updateEventLeaderboardGroupLinks">
<source>Updating Event-LeaderboardGroup links</source>
<target state="signed-off">イベント/リーダーボードグループのリンク更新</target>
@@ -6637,7 +6653,7 @@
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="footerCopyright" resname="footerCopyright">
<source>© 2011-2017 SAP Sailing Analytics</source>
<target state="needs-review-translation">© 2011-2017 SAP Sailing Analytics</target>
<target state="signed-off">© 2011-2017 SAP Sailing Analytics</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="footerLanguage" resname="footerLanguage">
<source>SAP Sailing in</source>
@@ -6772,12 +6788,12 @@
<target state="signed-off">Extreme Sailing Series の公式テクニカルパートナー</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="contentSapInSailing10" resname="contentSapInSailing10">
<source>Premium Partner of Germany’s national sailing team, Audi Sailing Team Germany</source>
<target state="signed-off">ドイツ代表セーリングチームである Audi Sailing Team Germany のプレミアムパートナー</target>
<source>Partner of the world’s largest regatta, Kieler Woche (Kiel Week)</source>
<target state="translated">世界最大のレガッタである Kieler Woche (Kiel Week) のパートナー</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="contentSapInSailing11" resname="contentSapInSailing11">
<source>Premium Partner of the world’s largest regatta, Kieler Woche (Kiel Week)</source>
<target state="signed-off">世界最大のレガッタである Kieler Woche (Kiel Week) のプレミアムパートナー</target>
<source>Technical Partner of the Sailing Champions League</source>
<target state="translated">セーリングチャンピオンズリーグのテクニカルパートナー</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="contentSapInSailing12" resname="contentSapInSailing12">
<source>Title sponsor of the SAP 5O5 World Championships</source>
@@ -6885,51 +6901,99 @@
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="importCompetitors" resname="importCompetitors">
<source>Import Competitors</source>
<target>競技者のインポート</target>
<target state="signed-off">競技者のインポート</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="chooseWhichCompetitorsShouldBeImported" resname="chooseWhichCompetitorsShouldBeImported">
<source>Select competitors to be imported on the left. Selecting a single competitor shows any existing competitors that may represent the same entity on the right. To use an existing one, select it. When done mapping, select all competitors you want to import in the table on the left and press OK. Note that the tables can be sorted by clicking or tapping on the column headers.</source>
<target>インポートする競技者を左側で選択します。単一の競技者を選択しても、同一の対象を表す既存の競技者が複数あればそれらが右側に表示されます。既存の競技者を使用するには、その競技者を選択します。マッピングが終了したら、テーブルにインポートするすべての競技者を左側で選択して、OK を押します。テーブルは、列ヘッダをクリックするかタップしてソートが可能であることに注意してください。</target>
<target state="signed-off">インポートする競技者を左側で選択します。単一の競技者を選択しても、同一の対象を表す既存の競技者が複数あればそれらが右側に表示されます。既存の競技者を使用するには、その競技者を選択します。マッピングが終了したら、テーブルにインポートするすべての競技者を左側で選択して、OK を押します。テーブルは、列ヘッダをクリックするかタップしてソートが可能であることに注意してください。</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="existingCompetitors" resname="existingCompetitors">
<source>Existing Competitors</source>
<target>既存の競技者</target>
<target state="signed-off">既存の競技者</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="importedCompetitors" resname="importedCompetitors">
<source>Competitors to Import</source>
<target>インポートする競技者</target>
<target state="signed-off">インポートする競技者</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="hasMatches" resname="hasMatches">
<source>Has matches</source>
<target>一致あり</target>
<target state="signed-off">一致あり</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="filterImportedCompetitorsByNameSailRaceFleet" resname="filterImportedCompetitorsByNameSailRaceFleet">
<source>Filter competitors to import by name, sail number, race or fleet</source>
<target>インポートする競技者を名前、セールナンバー、レース、またはフリートでフィルタリング</target>
<target state="signed-off">インポートする競技者を名前、セールナンバー、レース、またはフリートでフィルタリング</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="errorLoadingCompetitorImportProviders" resname="errorLoadingCompetitorImportProviders">
<source>Error loading competitor import providers: <ph id="1">{0}</ph></source>
<target>競技者インポートプロバイダのロードでエラーが発生: <ph id="1">{0}</ph></target>
<target state="signed-off">競技者インポートプロバイダのロードでエラーが発生: <ph id="1">{0}</ph></target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="errorLoadingCompetitorImportDescriptors" resname="errorLoadingCompetitorImportDescriptors">
<source>Error loading competitor import descriptors: <ph id="1">{0}</ph></source>
<target>競技者インポート記述子のロードでエラーが発生: <ph id="1">{0}</ph></target>
<target state="signed-off">競技者インポート記述子のロードでエラーが発生: <ph id="1">{0}</ph></target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="couldNotSaveCompetitorRegistrations" resname="couldNotSaveCompetitorRegistrations">
<source>Could not save competitor registrations: <ph id="1">{0}</ph></source>
<target>競技者登録を保存できませんでした: <ph id="1">{0}</ph></target>
<target state="signed-off">競技者登録を保存できませんでした: <ph id="1">{0}</ph></target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="searchTagForImportedCompetitorPlaceholder" resname="searchTagForImportedCompetitorPlaceholder">
<source>Use, e.g., the race+fleet name</source>
<target>たとえば、レース+フリート名を使用</target>
<target state="signed-off">たとえば、レース+フリート名を使用</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="version" resname="version">
<source>Version: <ph id="1">{0}</ph></source>
<target>バージョン: <ph id="1">{0}</ph></target>
<target state="signed-off">バージョン: <ph id="1">{0}</ph></target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="replicables" resname="replicables">
<source>Replicating objects</source>
<target>オブジェクトの複製</target>
<target state="signed-off">オブジェクトの複製</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="set" resname="set">
<source>Set</source>
<target state="signed-off">セット</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaRacesLegendWind" resname="eventRegattaRacesLegendWind">
<source># Wind sensors</source>
<target>風向風速センサー数</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaRacesLegendVideo" resname="eventRegattaRacesLegendVideo">
<source># Video streams</source>
<target>動画ストリーム数</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaRacesLegendAudio" resname="eventRegattaRacesLegendAudio">
<source># Audio Streams</source>
<target>音声ストリーム数</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaHeaderLegendGps" resname="eventRegattaHeaderLegendGps">
<source>Has tracking data</source>
<target>航跡データあり</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaHeaderLegendWind" resname="eventRegattaHeaderLegendWind">
<source>Has wind data</source>
<target>風向風速データあり</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaHeaderLegendVideo" resname="eventRegattaHeaderLegendVideo">
<source>Has video streams</source>
<target>動画ストリームあり</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaHeaderLegendAudio" resname="eventRegattaHeaderLegendAudio">
<source>Has audio streams</source>
<target>音声ストリームあり</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaHeaderLegendGpsNo" resname="eventRegattaHeaderLegendGpsNo">
<source>No tracking data</source>
<target>航跡データなし</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaHeaderLegendWindNo" resname="eventRegattaHeaderLegendWindNo">
<source>No wind data</source>
<target>風向風速データなし</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaHeaderLegendVideoNo" resname="eventRegattaHeaderLegendVideoNo">
<source>No video streams</source>
<target>動画ストリームなし</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaHeaderLegendAudioNo" resname="eventRegattaHeaderLegendAudioNo">
<source>No audio streams</source>
<target>音声ストリームなし</target>
</trans-unit>
</body>
</file>
@@ -1,14 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
<file datatype="javapropertyresourcebundle" date="2017-01-12T14:32:29Z" original="/usr/sap/ljs/app/Converter_5695884392650631812/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.properties" source-language="en" target-language="ru">
<file datatype="javapropertyresourcebundle" date="2017-03-03T15:29:18Z" original="/usr/sap/ljs/app/Converter_7519916557605079548/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.properties" source-language="en" target-language="ru">
<header>
<skl>
<internal-file crc="6ffb700eb4d51087550bf42ca10ed30d" form="base64">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 truncated
<internal-file crc="04cc06c51aa8cec2b9e9ca848362f6bf" form="base64">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 truncated
</skl>
<phase-group>
<phase company-name="SAP AG" date="2017-01-05T16:37:33Z" phase-name="file-creation" process-name="file-creation" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter"/>
<phase company-name="SAP AG" date="2017-02-23T16:17:36Z" phase-name="file-creation" process-name="file-creation" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter"/>
</phase-group>
<tool tool-company="SAP AG" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter" tool-name="TEW: Javascript .properties Flexible File Converter" tool-version="1.1.0"/>
<tool tool-company="SAP AG" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter" tool-name="TEW: Java properties Flexible File Converter" tool-version="1.1.0"/>
</header>
<body>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="manage2Sail" resname="manage2Sail">
@@ -109,7 +109,7 @@
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="timeTooltip" resname="timeTooltip">
<source>Time the competitor sailed on this leg. For the first leg this is counted from when the competitor passed the start line.</source>
<target state="signed-off">Время плавания данного участника на данном этапе. Для первого этапа отсчитывается от момента пересечения участником стартовой линии.</target>
<target state="translated">Время плавания данного участника на данном отрезке. Для первого отрезка отсчитывается от момента пересечения участником стартовой линии.</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="playSpeed" resname="playSpeed">
<source>Play speed</source>
@@ -325,7 +325,7 @@
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="averageSpeedInKnotsTooltip" resname="averageSpeedInKnotsTooltip">
<source>The average speed over ground during this leg,\ncalculated with the division of the distance traveled by the time needed.</source>
<target state="signed-off">Средняя скорость относительно грунта на данном этапе:\nотношение пройденного расстояния к затраченному времени.</target>
<target state="translated">Средняя скорость относительно грунта на данном отрезке:\nотношение пройденного расстояния к затраченному времени.</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="raceAverageSpeedInKnotsTooltip" resname="raceAverageSpeedInKnotsTooltip">
<source>The average speed over ground during this race,\ncalculated with the division of the distance traveled by the time needed.</source>
@@ -337,7 +337,7 @@
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="rankGainTooltip" resname="rankGainTooltip">
<source>The difference of the position from the current and the previous leg.</source>
<target state="signed-off">Разница в положении между текущим и предыдущим этапами.</target>
<target state="translated">Разница в положении между текущим и предыдущим отрезками.</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="sapSailingAnalytics" resname="sapSailingAnalytics">
<source>Sailing Analytics</source>
@@ -361,7 +361,7 @@
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="selectAtLeastOneLegDetail" resname="selectAtLeastOneLegDetail">
<source>Select at least one leg detail</source>
<target state="signed-off">Выберите подробности минимум одного этапа</target>
<target state="translated">Выберите подробности минимум одного отрезка</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="currentSpeedOverGroundInKnots" resname="currentSpeedOverGroundInKnots">
<source>SOG</source>
@@ -385,7 +385,7 @@
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="gapToLeaderInSecondsTooltip" resname="gapToLeaderInSecondsTooltip">
<source>Estimates the (calculated) arrival time at the current position of the boat that is farthest ahead,\nbased on average VMG for the current leg and with performance equal to that of the race leader for subsequent legs.\nThe gap tells how much earlier the competitor would have had to be where she currently is\nin order to rank equal to the race leader at the projected arrival at the current position of the boat farthest ahead.</source>
<target state="signed-off">Оценивает самое ранее (расчетное) время прибытия лодки в текущую позицию,\nисходя из среднего значения VMG для текущего этапа и эффективности, равной эффективности лидера гонки, для последующих этапов.\nПоказывает, насколько раньше нужно было прийти в текущую позицию,\nчтобы иметь ранг лидера гонки в расчетное время прибытия в текущую позицию лидирующей лодки.</target>
<target state="translated">Оценивает самое ранее (расчетное) время прибытия лодки в текущую позицию,\nисходя из среднего значения VMG для текущего отрезка и эффективности, равной эффективности лидера гонки, для последующих отрезков.\nПоказывает, насколько раньше нужно было прийти в текущую позицию,\nчтобы иметь ранг лидера гонки в расчетное время прибытия в текущую позицию лидирующей лодки.</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="velocityMadeGoodInKnots" resname="velocityMadeGoodInKnots">
<source>VMG</source>
@@ -393,7 +393,7 @@
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="velocityMadeGoodInKnotsTooltip" resname="velocityMadeGoodInKnotsTooltip">
<source>The velocity made good, which is the windward/leeward speed for upwind/downwind legs, respectively, or the along-track speed for reaching legs.</source>
<target state="signed-off">Эффективная скорость лавирования, то есть скорость хода переменными галсами или полным ветром на этапах с соответствующими условиями.</target>
<target state="translated">Эффективная скорость лавирования, то есть скорость хода переменными галсами или полным ветром на отрезках с соответствующими условиями.</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="windwardDistanceToGoInMeters" resname="windwardDistanceToGoInMeters">
<source>Windward distance to go</source>
@@ -401,7 +401,7 @@
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="windwardDistanceToGoInMetersTooltip" resname="windwardDistanceToGoInMetersTooltip">
<source>Windward/leeward distance from the competitor''s current position to the end of the leg for upwind/downwind legs, respectively, or the along-track distance for reaching legs.</source>
<target state="signed-off">Расстояние от текущей позиции участника до конца этапа с учетом направления ветра.</target>
<target state="translated">Расстояние от текущей позиции участника до конца отрезка с учетом направления ветра.</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="windwardDistanceToCompetitorFarthestAheadInMeters" resname="windwardDistanceToCompetitorFarthestAheadInMeters">
<source>Gap</source>
@@ -661,7 +661,7 @@
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="numberOfManeuversTooltip" resname="numberOfManeuversTooltip">
<source>The number of the maneuvers sailed in this leg.</source>
<target state="signed-off">Число совершенных маневров на данном этапе.</target>
<target state="translated">Число совершенных маневров на данном отрезке.</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="numberOfManeuversInRaceTooltip" resname="numberOfManeuversInRaceTooltip">
<source>The number of maneuvers sailed in this race.</source>
@@ -701,7 +701,7 @@
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="distanceTraveledTooltip" resname="distanceTraveledTooltip">
<source>The distance traveled from the leg start to the end\nor to the current time point, if the leg isn''t finished.</source>
<target state="signed-off">Расстояние, пройденное от старта этапа до конца\nили до текущего момента, если этап не завершен.</target>
<target state="translated">Расстояние, пройденное от старта отрезка до конца\nили до текущего момента, если отрезок не завершен.</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="raceDistanceTraveledTooltip" resname="raceDistanceTraveledTooltip">
<source>The distance traveled from the race start to the end\nor to the current time point, if the race isn''t finished.</source>
@@ -1251,6 +1251,10 @@
<source>Combined</source>
<target state="signed-off">Объединено</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="legMiddleWindSourceTypeName" resname="legMiddleWindSourceTypeName">
<source>Middle of Leg</source>
<target state="translated">Середина отрезка</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="courseBasedWindSourceTypeName" resname="courseBasedWindSourceTypeName">
<source>Course Layout</source>
<target state="signed-off">Схема курса</target>
@@ -1397,7 +1401,7 @@
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="replicatingFromMaster" resname="replicatingFromMaster">
<source>Replicating from master <ph id="1">{0}</ph>:<ph id="2">{2}</ph>, messaging port <ph id="3">{3}</ph>:<ph id="4">{1}</ph>, exchange <ph id="5">{4}</ph>, replicating <ph id="6">{5}</ph></source>
<target state="translated">Репликация с главного экземпляра <ph id="1">{0}</ph>:<ph id="2">{2}</ph>, порт обмена сообщениями <ph id="3">{3}</ph>:<ph id="4">{1}</ph>, Exchange <ph id="5">{4}</ph>, репликация <ph id="6">{5}</ph></target>
<target state="signed-off">Репликация с главного экземпляра <ph id="1">{0}</ph>:<ph id="2">{2}</ph>, порт обмена сообщениями <ph id="3">{3}</ph>:<ph id="4">{1}</ph>, Exchange <ph id="5">{4}</ph>, репликация <ph id="6">{5}</ph></target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="showWindSpeedSeries" resname="showWindSpeedSeries">
<source>Show wind speed data</source>
@@ -2617,11 +2621,11 @@
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="distanceToLineAtRaceStartTooltip" resname="distanceToLineAtRaceStartTooltip">
<source>Distance to start line at race start time; distance to nearest line end in case the competitor projects beyond the line''s ends</source>
<target state="translated">Дистанция до линии старта во время старта гонки; в случае проецирования участника за концы линии — дистанция до ближайшего конца линии</target>
<target state="signed-off">Дистанция до линии старта во время старта гонки; в случае проецирования участника за концы линии — дистанция до ближайшего конца линии</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="distanceToLineFiveSecondsBeforeStartTooltip" resname="distanceToLineFiveSecondsBeforeStartTooltip">
<source>Distance to start line five seconds before the start; distance to nearest line end in case the competitor projects beyond the line''s ends</source>
<target state="translated">Дистанция до линии старта за пять секунд до старта гонки; в случае проецирования участника за концы линии — дистанция до ближайшего конца линии</target>
<target state="signed-off">Дистанция до линии старта за пять секунд до старта гонки; в случае проецирования участника за концы линии — дистанция до ближайшего конца линии</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="speedOverGroundAtRaceStartTooltip" resname="speedOverGroundAtRaceStartTooltip">
<source>Speed over ground at race start time</source>
@@ -2925,7 +2929,7 @@
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="legLabel" resname="legLabel">
<source>Leg</source>
<target state="signed-off">Этап</target>
<target state="translated">Отрезок</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="raceLabel" resname="raceLabel">
<source>Race</source>
@@ -3583,6 +3587,10 @@
<source>Error: <ph id="1">{0}</ph></source>
<target state="signed-off">Ошибка: <ph id="1">{0}</ph></target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="gribWindImport_Title" resname="gribWindImport_Title">
<source>Import wind from GRIB files</source>
<target state="signed-off">Импорт ветра из файлов GRIB</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="showWindSpeedSeriesTooltip" resname="showWindSpeedSeriesTooltip">
<source>Toggles the visibility of the wind speed for all data sources</source>
<target state="signed-off">Переключает видимость скорости ветра для всех источников данных</target>
@@ -3595,6 +3603,10 @@
<source>Combines all other wind sources to one data set</source>
<target state="signed-off">Объединяет все другие источники ветра в один набор данных</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="legMiddleWindSourceTypeTooltip" resname="legMiddleWindSourceTypeTooltip">
<source>Combined wind at the mid point of a leg''s rhumb line</source>
<target state="translated">Комбинированный ветер в средней точке генерального курса отрезка</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="courseBasedWindSourceTypeTooltip" resname="courseBasedWindSourceTypeTooltip">
<source>A value based on the course layout (under the assumption, that the race starts with an upwind leg)</source>
<target state="signed-off">Значение, основанное на схеме курса (предполагается, что гонка начинается против ветра)</target>
@@ -5825,7 +5837,7 @@
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="addStageImage" resname="addStageImage">
<source>Add stage image</source>
<target state="signed-off">Добавить изображение этапа</target>
<target state="translated">Добавить изображение этапа</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="addTeaserImage" resname="addTeaserImage">
<source>Add teaser image</source>
@@ -6085,7 +6097,7 @@
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="playstoreBadge" resname="playstoreBadge">
<source>https://play.google.com/intl/en/badges/images/badge_new.png</source>
<target state="translated">https://play.google.com/intl/en/badges/images/badge_new.png</target>
<target state="signed-off">https://play.google.com/intl/en/badges/images/badge_new.png</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="appstoreSapSailInsight" resname="appstoreSapSailInsight">
<source>http://appstore.com/sapsailinsight</source>
@@ -6145,7 +6157,7 @@
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="selectCompetitorImportProvider" resname="selectCompetitorImportProvider">
<source>Please select a competitor import provider...</source>
<target>Выберите поставщика импорта участников...</target>
<target state="signed-off">Выберите поставщика импорта участников...</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="selectResultImportProvider" resname="selectResultImportProvider">
<source>Please select a result import provider...</source>
@@ -6239,6 +6251,10 @@
<source>Importing wind tracks</source>
<target state="signed-off">Импорт данных отслеживания ветра</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="importSensorFixes" resname="importSensorFixes">
<source>Importing sensor fixes</source>
<target state="signed-off">Импорт замеров датчика</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="updateEventLeaderboardGroupLinks" resname="updateEventLeaderboardGroupLinks">
<source>Updating Event-LeaderboardGroup links</source>
<target state="signed-off">Обновление ссылок на группы таблиц лидеров событий</target>
@@ -6457,7 +6473,7 @@
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="currentOrAverageRideHeightInMetersTooltip" resname="currentOrAverageRideHeightInMetersTooltip">
<source>Current Foiling ride height in meters while leg is still running; average ride height when leg is completed.</source>
<target state="signed-off">Текущая высота подъема на подводных крыльях в метрах при прохождении этапа; средняя высота по завершении этапа.</target>
<target state="translated">Текущая высота подъема на подводных крыльях в метрах при прохождении отрезка; средняя высота по завершении отрезка.</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="pleaseCreateAtLeastOneMappingForCompetitor" resname="pleaseCreateAtLeastOneMappingForCompetitor">
<source>Please create at least one mapping by first selecting a track on the left hand side and then selecting a competitor on the right hand side</source>
@@ -6637,7 +6653,7 @@
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="footerCopyright" resname="footerCopyright">
<source>© 2011-2017 SAP Sailing Analytics</source>
<target state="needs-review-translation">© SAP Sailing Analytics, 2011-2017.</target>
<target state="signed-off">© SAP Sailing Analytics, 2011-2017.</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="footerLanguage" resname="footerLanguage">
<source>SAP Sailing in</source>
@@ -6772,12 +6788,12 @@
<target state="signed-off">Официальный технический партнер серии Extreme Sailing Series</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="contentSapInSailing10" resname="contentSapInSailing10">
<source>Premium Partner of Germany’s national sailing team, Audi Sailing Team Germany</source>
<target state="signed-off">Премиальный партнер национальной команды Германии по парусному спорту, Audi Sailing Team Germany</target>
<source>Partner of the world’s largest regatta, Kieler Woche (Kiel Week)</source>
<target state="signed-off">Партнер крупнейшей в мире регаты Kieler Woche (Кильская неделя)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="contentSapInSailing11" resname="contentSapInSailing11">
<source>Premium Partner of the world’s largest regatta, Kieler Woche (Kiel Week)</source>
<target state="signed-off">Премиальный партнер крупнейшей в мире регаты Kieler Woche (Кильская неделя)</target>
<source>Technical Partner of the Sailing Champions League</source>
<target state="signed-off">Технический партнер Парусной Лиги Чемпионов</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="contentSapInSailing12" resname="contentSapInSailing12">
<source>Title sponsor of the SAP 5O5 World Championships</source>
@@ -6885,51 +6901,99 @@
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="importCompetitors" resname="importCompetitors">
<source>Import Competitors</source>
<target>Импорт участников</target>
<target state="signed-off">Импорт участников</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="chooseWhichCompetitorsShouldBeImported" resname="chooseWhichCompetitorsShouldBeImported">
<source>Select competitors to be imported on the left. Selecting a single competitor shows any existing competitors that may represent the same entity on the right. To use an existing one, select it. When done mapping, select all competitors you want to import in the table on the left and press OK. Note that the tables can be sorted by clicking or tapping on the column headers.</source>
<target>Слева выберите участников для импорта. При выборе одного участника справа отображаются все существующие участники, которые могут представлять одну и ту же организацию. Чтобы использовать существующего участника, выберите его. По завершении сопоставления выберите всех участников, которых требуется импортировать, в таблице слева и нажмите кнопку "ОК". Таблица можно сортировать щелчком или касанием заголовков столбцов.</target>
<target state="signed-off">Слева выберите участников для импорта. При выборе одного участника справа отображаются все существующие участники, которые могут представлять одну и ту же организацию. Чтобы использовать существующего участника, выберите его. По завершении сопоставления выберите всех участников, которых требуется импортировать, в таблице слева и нажмите кнопку "ОК". Таблица можно сортировать щелчком или касанием заголовков столбцов.</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="existingCompetitors" resname="existingCompetitors">
<source>Existing Competitors</source>
<target>Существующие участники</target>
<target state="signed-off">Существующие участники</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="importedCompetitors" resname="importedCompetitors">
<source>Competitors to Import</source>
<target>Участники для импорта</target>
<target state="signed-off">Участники для импорта</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="hasMatches" resname="hasMatches">
<source>Has matches</source>
<target>Есть соответствия</target>
<target state="signed-off">Есть соответствия</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="filterImportedCompetitorsByNameSailRaceFleet" resname="filterImportedCompetitorsByNameSailRaceFleet">
<source>Filter competitors to import by name, sail number, race or fleet</source>
<target>Отфильтруйте участников для импорта по названию, номеру на парусе, гонке или флоту</target>
<target state="signed-off">Отфильтруйте участников для импорта по названию, номеру на парусе, гонке или флоту</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="errorLoadingCompetitorImportProviders" resname="errorLoadingCompetitorImportProviders">
<source>Error loading competitor import providers: <ph id="1">{0}</ph></source>
<target>Ошибка при загрузке поставщиков импорта участников: <ph id="1">{0}</ph></target>
<target state="signed-off">Ошибка при загрузке поставщиков импорта участников: <ph id="1">{0}</ph></target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="errorLoadingCompetitorImportDescriptors" resname="errorLoadingCompetitorImportDescriptors">
<source>Error loading competitor import descriptors: <ph id="1">{0}</ph></source>
<target>Ошибка при загрузке дескрипторов импорта участников: <ph id="1">{0}</ph></target>
<target state="signed-off">Ошибка при загрузке дескрипторов импорта участников: <ph id="1">{0}</ph></target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="couldNotSaveCompetitorRegistrations" resname="couldNotSaveCompetitorRegistrations">
<source>Could not save competitor registrations: <ph id="1">{0}</ph></source>
<target>Не удалось сохранить регистрации участников: <ph id="1">{0}</ph></target>
<target state="signed-off">Не удалось сохранить регистрации участников: <ph id="1">{0}</ph></target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="searchTagForImportedCompetitorPlaceholder" resname="searchTagForImportedCompetitorPlaceholder">
<source>Use, e.g., the race+fleet name</source>
<target>Используйте, например, гонку + название флота</target>
<target state="signed-off">Используйте, например, гонку + название флота</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="version" resname="version">
<source>Version: <ph id="1">{0}</ph></source>
<target>Версия: <ph id="1">{0}</ph></target>
<target state="signed-off">Версия: <ph id="1">{0}</ph></target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="replicables" resname="replicables">
<source>Replicating objects</source>
<target>Репликация объектов</target>
<target state="signed-off">Репликация объектов</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="set" resname="set">
<source>Set</source>
<target state="signed-off">Набор</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaRacesLegendWind" resname="eventRegattaRacesLegendWind">
<source># Wind sensors</source>
<target state="signed-off">Датчиков ветра</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaRacesLegendVideo" resname="eventRegattaRacesLegendVideo">
<source># Video streams</source>
<target state="signed-off">Видеопотоков</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaRacesLegendAudio" resname="eventRegattaRacesLegendAudio">
<source># Audio Streams</source>
<target state="signed-off">Аудиопотоков</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaHeaderLegendGps" resname="eventRegattaHeaderLegendGps">
<source>Has tracking data</source>
<target state="signed-off">Есть данные отслеживания</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaHeaderLegendWind" resname="eventRegattaHeaderLegendWind">
<source>Has wind data</source>
<target state="signed-off">Есть данные о ветре</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaHeaderLegendVideo" resname="eventRegattaHeaderLegendVideo">
<source>Has video streams</source>
<target state="signed-off">Есть видеопотоки</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaHeaderLegendAudio" resname="eventRegattaHeaderLegendAudio">
<source>Has audio streams</source>
<target state="signed-off">Есть аудиопотоки</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaHeaderLegendGpsNo" resname="eventRegattaHeaderLegendGpsNo">
<source>No tracking data</source>
<target state="signed-off">Нет данных отслеживания</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaHeaderLegendWindNo" resname="eventRegattaHeaderLegendWindNo">
<source>No wind data</source>
<target state="signed-off">Нет данных о ветре</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaHeaderLegendVideoNo" resname="eventRegattaHeaderLegendVideoNo">
<source>No video streams</source>
<target state="signed-off">Нет видеопотоков</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="eventRegattaHeaderLegendAudioNo" resname="eventRegattaHeaderLegendAudioNo">
<source>No audio streams</source>
<target state="signed-off">Нет аудиопотоков</target>
</trans-unit>
</body>
</file>
+1 -1
View File
@@ -76,7 +76,7 @@ GWT_WORKERS=2
MAVEN_SETTINGS="$PROJECT_HOME/configuration/maven-settings.xml"
MAVEN_SETTINGS_PROXY="$PROJECT_HOME/configuration/maven-settings-proxy.xml"
p2PluginRepository=$PROJECT_HOME/java/com.sap.$PROJECT_TYPE.feature.p2build/bin/products/raceanalysis.product.id/linux/gtk/$ARCH
p2PluginRepository=$PROJECT_HOME/java/com.sap.$PROJECT_TYPE.feature.p2build/target/products/raceanalysis.product.id/linux/gtk/$ARCH
HAS_OVERWRITTEN_TARGET=0
TARGET_SERVER_NAME=$active_branch
@@ -51,4 +51,7 @@ updatePlugins http://download.eclipse.org/egit/updates org.eclipse.jgit.feature.
echo "Installing latest version of Mylyn ..."
updatePlugins http://download.eclipse.org/mylyn/releases/latest org.eclipse.mylyn_feature.feature.group,org.eclipse.mylyn.bugzilla_feature.feature.group,org.eclipse.mylyn.builds.feature.group,org.eclipse.mylyn.commons.feature.group,org.eclipse.mylyn.commons.identity.feature.group,org.eclipse.mylyn.commons.notifications.feature.group,org.eclipse.mylyn.commons.repositories.feature.group,org.eclipse.mylyn.commons.repositories.http.feature.group,org.eclipse.mylyn.context_feature.feature.group,org.eclipse.mylyn.discovery.feature.group,org.eclipse.mylyn.gerrit.feature.feature.group,org.eclipse.mylyn.git.feature.group,org.eclipse.mylyn.hudson.feature.group,org.eclipse.mylyn.java_feature.feature.group,org.eclipse.mylyn.monitor.feature.group,org.eclipse.mylyn.reviews.feature.feature.group,org.eclipse.mylyn.team_feature.feature.group,org.eclipse.mylyn.versions.feature.group,org.eclipse.mylyn.wikitext_feature.feature.group
echo "Installing SAP JVM Tools (profiler) ..."
installPlugins https://tools.hana.ondemand.com/neon com.sap.jvm.profiling.feature.group
echo "Installation completed!"
+1 -1
View File
@@ -30,7 +30,7 @@
</parameters.proxy>
<!-- Change the configuration file to the one you like to use for the tests. -->
<parameters.integration-tests>
-Dselenium.test.environment.configuration=ci-test-environment.xml
-Dselenium.test.environment.configuration=ci-test-environment.xml -Dmongo.dbName=winddbTest -DspatialWind=true
</parameters.integration-tests>
</properties>
</profile>
+7 -4
View File
@@ -3,6 +3,8 @@ ANDROID_RELEASE_BRANCH=android-xmake-release
RELEASE_BRANCH=rel-1.4
APP_MANIFESTS="mobile/com.sap.sailing.android.tracking.app/AndroidManifest.xml mobile/com.sap.sailing.buoy.positioning/AndroidManifest.xml mobile/com.sap.sailing.racecommittee.app/AndroidManifest.xml"
GIT_REMOTE=origin
# proxy can be requested with -x
PROXY_SETTINGS=
UPDATE_ANDROID_MANIFEST_VERSIONS=1
UPDATE_POM_VERSIONS=1
PERFORM_GIT_OPERATIONS=1
@@ -33,15 +35,15 @@ upgrade_pom_and_manifest_versions() {
sed -e "$snip_area_start_line,$snip_area_end_line d" <"$POM" >"$POM_WITH_PARENT_SPEC_REMOVED"
sed -e "1,$((snip_area_start_line - 1)) d" -e "$((snip_area_end_line + 1)),$ d" <"$POM" >"$PARENT_SPEC"
cp "$POM_WITH_PARENT_SPEC_REMOVED" "$POM"
echo mvn -Dtycho.mode=maven org.eclipse.tycho:tycho-versions-plugin:set-version -DnewVersion=$NEW_POM_VERSION
mvn -Dtycho.mode=maven org.eclipse.tycho:tycho-versions-plugin:set-version -DnewVersion=$NEW_POM_VERSION
echo mvn $PROXY_SETTINGS -Dtycho.mode=maven org.eclipse.tycho:tycho-versions-plugin:set-version -DnewVersion=$NEW_POM_VERSION
mvn $PROXY_SETTINGS -Dldi.releaseBuild=true -Dtycho.mode=maven org.eclipse.tycho:tycho-versions-plugin:set-version -DnewVersion=$NEW_POM_VERSION
sed --in-place -e 's/$/\\/' "$PARENT_SPEC"
cat "$POM" | sed -e "$snip_area_start_line i \\`cat "$PARENT_SPEC"`" | sed -e "$snip_area_start_line,$snip_area_end_line s/\\\\$//" >"$RESTORED_POM_WITH_NEW_VERSION_AND_PARENT_SPEC"
cp "$RESTORED_POM_WITH_NEW_VERSION_AND_PARENT_SPEC" "$POM"
}
if [ $# -eq 0 ]; then
echo "buildAndUpdateProduct [-m -p -g -r <git-remote>] CR-Id: <TheJCWBCRId>"
echo "$0 [-m -p -g -r <git-remote>] CR-Id: <TheJCWBCRId>"
echo ""
echo "Request a new Java Correction Workbench (JCWB) Correction Request ID at:"
echo " https://css.wdf.sap.corp/sap(bD1lbiZjPTAwMQ==)/bc/bsp/spn/jcwb/default.htm?newCMForProject=sapsailingcapture#"
@@ -56,7 +58,7 @@ if [ $# -eq 0 ]; then
exit 2
fi
options='mpgr:'
options='mpgrx:'
while getopts $options option
do
case $option in
@@ -64,6 +66,7 @@ do
p) UPDATE_POM_VERSIONS=0;;
g) PERFORM_GIT_OPERATIONS=0;;
r) GIT_REMOTE=$OPTARG;;
x) PROXY_SETTINGS="-s configuration/maven-settings-proxy.xml -Dhttp.proxyHost=proxy.wdf.sap.corp -Dhttp.proxyPort=8080";;
\?) echo "Invalid option"
exit 4;;
esac
@@ -16,7 +16,7 @@ Race=Race
Competitor=Competitor
Boat=Boat
Team=Team
CompetitorSearchTag=Competitor Search Tag
SearchTag=Search Tag
LeaderboardSailingDomainRetrieverChain=Leaderboards
RaceSailingDomainRetrieverChain=Races
LegSailingDomainRetrieverChain=Legs
@@ -102,7 +102,7 @@ WindTrack=Wind Track
timeSpentFoiling=Time spent foiling
yaw=Yaw
pitch=Pitch
roll=Heel
heel=Heel
rideHeight=Ride Height
rideHeightPort=Ride Height Port Hull
rideHeightStarboard=Ride Height Starboard Hull
@@ -122,4 +122,5 @@ EndsOnLegType=Type of leg at landing
FoilingSegments=Foiled Segments
AverageAbsoluteTrueWindAngle=Average absolute true wind angle
AbsoluteTrueWindAngle=Absolute true wind angle (TWA)
Wind=Wind
Wind=Wind
VMG=Velocity Made Good
@@ -3,7 +3,7 @@ DistanceTraveled=zur
Boat=Boot
Team=Team
Name=Name
CompetitorSearchTag=Teilnehmer Such-Tag
SearchTag=Such-Tag
Nationality=Nationalitäts
Acronym=Abkürzung
SailID=Segelnummer
@@ -102,7 +102,7 @@ WindTrack=Windmessreihe
timeSpentFoiling=Zeit auf Foils
yaw=Gierung
pitch=Neigung
roll=Krängung
heel=Krängung
rideHeight=Foiling-Höhe
rideHeightPort=Foiling-Höhe Backbord-Rumpf
rideHeightStarboard=Foiling-Höhe Steuerbord-Rumpf
@@ -122,4 +122,5 @@ EndsOnLegType=Bahnschenkeltyp beim Landen
FoilingSegments=Gefoilte Abschnitte
AverageAbsoluteTrueWindAngle=Durchschnittlicher absoluter Winkel zum wahren Wind (TWA)
AbsoluteTrueWindAngle=Absoluter Winkel zum wahren Wind (TWA)
Wind=Wind
Wind=Wind
VMG=Luv-/Leegeschwindigkeit (VMG)
@@ -0,0 +1,126 @@
Speed=Velocidad
SpeedTenSecondsBefore=Velocidad 10 s antes
DistanceTraveled=Distancia viajada
Name=Nombre
LegType=Tipo de tramo
SailID=Número de navegación
Year=Año
LegNumber=Número de tramo
Nationality=Nacionalidad
Acronym=Siglas
Regatta=Regata
CourseArea=Campo de regatas
BoatClass=Clase de bote
Fleet=Flota
Race=Carrera
Competitor=Competidor
Boat=Bote
Team=Equipo
SearchTag=Etiqueta de búsqueda
LeaderboardSailingDomainRetrieverChain=Clasificaciones
RaceSailingDomainRetrieverChain=Carreras
LegSailingDomainRetrieverChain=Tramos
GPSFixSailingDomainRetrieverChain=Puntos de GPS
BravoFixSailingDomainRetrieverChain=Puntos de Bravo
BravoFixTrackSailingDomainRetrieverChain=Seguimientos Bravo
FoilingSegmentsSailingDomainRetrieverChain=Segmentos laminados
WindFixSailingDomainRetrieverChain=Puntos de viento
MarkPassingSailingDomainRetrieverChain=Superaciones de marca
RaceResultSailingDomainRetrieverChain=Resultados de la carrera
RaceOfCompetitorSailingDomainRetrieverChain=Carreras de los competidores
ManeuverSailingDomainRetrieverChain=Maniobra
LeaderboardGroup=Grupo de clasificación
Leaderboard=Clasificación
Leg=Tramo
MarkPassing=Superación de marca
LegOfCompetitor=Tramo del competidor
GpsFix=Punto de GPS
BravoFix=Punto de Bravo
BravoFixTrack=Seguimiento de punto Bravo
WindFix=Punto de viento
Maneuver=Maniobra
WindStrengthInBeaufort=Fuerza del viento en Beaufort
Bft0=Calma
Bft1=Ventolina
Bft2=Brisa débil
Bft3=Brisa suave
Bft4=Brisa moderada
Bft5=Brisa fresca
Bft6=Brisa fuerte
Bft7=Viento fuerte
Bft8=Viento duro
Bft9=Viento muy duro
Bft10=Temporal
Bft11=Temporal duro
Bft12=Huracán
RelativeScore=Puntuación relativa (0 mejor; 1 peor)
RelativeScoreInPercent=Puntuación relativa en %
RelativeScoreInRaceInPercent=Puntuación relativa en carrera en %
AbsoluteRank=Categoría absoluta
WindSpeedInBeaufort=Velocidad del viento en Bft
DistanceAtStart=Distancia al inicio en el inicio
SpeedWhenStarting=Velocidad al inicio
SpeedTenSecondsBeforeStart=Velocidad 10 s antes del inicio
RankAtFirstMark=Categoría en la primera marca
NumberOfManeuvers=Número de maniobras
NumberOfTacks=Número de amuras
NumberOfJibes=Número de viradas en redondo
NumberOfPenaltyCircles=Número de círculos de sanción
RankGainsOrLosses=Aumentos y pérdidas de categoría
DistanceToStarboardSideAtStart=Distancia a estribor (% de longitud)
NumberOfPodiumFinish=Número de puestos de podio
NumberOfWins=Número de victorias
RankGainsOrLossesBetweenFirstMarkAndFinish=Aumentos o pérdidas de categoría (1º marca -> Final)
IsTracked=Se le hace el seguimiento
NumberOfCompetitorFixes=Número de puntos del competidor
NumberOfMarkFixes=Número de puntos de la marca
ManeuverType=Tipo de maniobra
Tack=Amura
SpeedBefore=Velocidad antes de maniobra
SpeedAfter=Velocidad después de maniobra
DirectionChange=Cambio de dirección en grados
AbsoluteDirectionChange=Cambio absoluto de dirección en grados (positivo)
ToSide=Al lado (babor / estribor)
ManeuverLoss=Pérdida en maniobra
Waypoint=Punto de ruta
PassingSide=Vía de paso
TackAtStart=Amura al inicio
SpeedTenSecondsAfterStart=Velocidad 10 s después del inicio
RankThirtySecondsAfterStart=Categoría 30 s después del inicio
WindwardDistanceToAdvantageousEndOfLine=Distancia a barlovento a extremo favorable
RankAfterHalfOfTheFirstLeg=Categoría tras la mitad del primer tramo
AdvantageousEndOfLine=Extremo favorable
TimeSpentInSeconds=Tiempo empleado en segundos
MedalRace=Medal Race
WindSourceType=Tipo de fuente de viento
WindSourceName=Nombre de fuente de viento
windFrom=Dirección del viento real (TWD)
windSpeedKnots=Velocidad del viento real (nudos)
speedInKnots=Velocidad (nudos)
bearing=Dirección (�T)
WindTrack=Seguimiento del viento
timeSpentFoiling=Tiempo empleado en laminado
yaw=Guiñada
pitch=Paso
heel=Escora
rideHeight=Altura de circulación
rideHeightPort=Altura de circulación del casco a babor
rideHeightStarboard=Altura de circulación del casco a estribor
IsFoiling=Se está laminando
FoilingDuration=Duración del laminado
FoilingDistance=Distancia laminada
TakeoffSpeedInKnotsInKnots=Velocidad de despegue en nudos
LandingSpeedInKnots=Velocidad de aterrizaje en nudos
AbsoluteTrueWindAngleAtTakeoff=Ángulo absoluto del viento real (TWA) en despegue
AbsoluteTrueWindAngleAtLanding=Ángulo absoluto del viento real (TWA) en aterrizaje
WindStrengthInBeaufortAtTakeoff=Fuerza del viento en Beaufort en despegue
WindStrengthInBeaufortAtLanding=Fuerza del viento en Beaufort en aterrizaje
WindAtTakeoff=Viento en despegue
WindAtLanding=Viento en aterrizaje
StartsOnLegType=Tipo de tramo en despegue
EndsOnLegType=Tipo de tramo en aterrizaje
FoilingSegments=Segmentos frustrados
AverageAbsoluteTrueWindAngle=Promedio del ángulo absoluto de viento real
AbsoluteTrueWindAngle=Ángulo absoluto del viento real (TWA)
Wind=Viento
VMG=Velocity Made Good
@@ -0,0 +1,126 @@
Speed=Vitesse
SpeedTenSecondsBefore=Vitesse 10 s avant
DistanceTraveled=Distance parcourue
Name=Nom
LegType=Type de portion de parcours
SailID=Numéro de voile
Year=Année
LegNumber=N° de portion de parcours
Nationality=Nationalité
Acronym=Acronyme
Regatta=Régate
CourseArea=Zone de course
BoatClass=Catégorie de bateau
Fleet=Flotte
Race=Course
Competitor=Concurrent
Boat=Bateau
Team=Équipe
SearchTag=Balise de recherche
LeaderboardSailingDomainRetrieverChain=Palmarès
RaceSailingDomainRetrieverChain=Courses
LegSailingDomainRetrieverChain=Portions de parcours
GPSFixSailingDomainRetrieverChain=Positions GPS
BravoFixSailingDomainRetrieverChain=Positions Bravo
BravoFixTrackSailingDomainRetrieverChain=Suivis Bravo
FoilingSegmentsSailingDomainRetrieverChain=Tronçons en planing
WindFixSailingDomainRetrieverChain=Points vent
MarkPassingSailingDomainRetrieverChain=Passages des marques
RaceResultSailingDomainRetrieverChain=Résultats de course
RaceOfCompetitorSailingDomainRetrieverChain=Courses des concurrents
ManeuverSailingDomainRetrieverChain=Manœuvre
LeaderboardGroup=Groupe de palmarès
Leaderboard=Palmarès
Leg=Portion de parcours
MarkPassing=Passage de marque
LegOfCompetitor=Portion de parcours de concurrent
GpsFix=Position GPS
BravoFix=Position Bravo
BravoFixTrack=Suivi de positions Bravo
WindFix=Point vent
Maneuver=Manœuvre
WindStrengthInBeaufort=Force du vent sur l''échelle de Beaufort
Bft0=Calme
Bft1=Très légère brise
Bft2=Légère brise
Bft3=Petite brise
Bft4=Jolie brise
Bft5=Bonne brise
Bft6=Vent frais
Bft7=Grand frais
Bft8=Coup de vent
Bft9=Fort coup de vent
Bft10=Tempête
Bft11=Violente tempête
Bft12=Ouragan
RelativeScore=Résultat relatif (0 = meilleur, 1 = pire)
RelativeScoreInPercent=Résultat relatif en %
RelativeScoreInRaceInPercent=Résultat relatif dans la course en %
AbsoluteRank=Place réelle
WindSpeedInBeaufort=Vitesse du vent en Bft
DistanceAtStart=Distance du point de départ au départ
SpeedWhenStarting=Vitesse au départ
SpeedTenSecondsBeforeStart=Vitesse 10 s avant le départ
RankAtFirstMark=Place à la première marque
NumberOfManeuvers=Nombre de manœuvres
NumberOfTacks=Nombre de bords longs
NumberOfJibes=Nombre de changements d''amure
NumberOfPenaltyCircles=Nombre de tours de pénalité
RankGainsOrLosses=Pertes ou gains de place
DistanceToStarboardSideAtStart=Distance à tribord (% de la longueur)
NumberOfPodiumFinish=Nombre de podiums
NumberOfWins=Nombre de victoires
RankGainsOrLossesBetweenFirstMarkAndFinish=Pertes ou gains de place (1ère marque -> Arrivée)
IsTracked=Est suivi
NumberOfCompetitorFixes=Nombre de positions de concurrents
NumberOfMarkFixes=Nombre de positions de marques
ManeuverType=Type de manœuvre
Tack=Virement
SpeedBefore=Vitesse avant la manœuvre
SpeedAfter=Vitesse après la manœuvre
DirectionChange=Changement de cap en degrés
AbsoluteDirectionChange=Changement de cap absolu en degrés (positif)
ToSide=À bâbord/À tribord
ManeuverLoss=Perte suite à manœuvre
Waypoint=Point de cheminement
PassingSide=Côté de passage
TackAtStart=Virement au départ
SpeedTenSecondsAfterStart=Vitesse 10 s après le départ
RankThirtySecondsAfterStart=Place 30 s après le départ
WindwardDistanceToAdvantageousEndOfLine=Distance au vent jusqu''au côté avantageux de la ligne
RankAfterHalfOfTheFirstLeg=Place après la première moitié de la première portion de parcours
AdvantageousEndOfLine=Côté avantageux de la ligne
TimeSpentInSeconds=Temps mis en secondes
MedalRace=Course médaillée
WindSourceType=Type de source de vent
WindSourceName=Nom de la source du vent
windFrom=Direction réelle du vent (TWD)
windSpeedKnots=Vitesse réelle du vent (en nds)
speedInKnots=Vitesse (nds)
bearing=Direction (�T)
WindTrack=Suivi du vent
timeSpentFoiling=Temps passé en planing
yaw=Dévier
pitch=Embarder
heel=Talonner
rideHeight=Hauteur pendant le planing
rideHeightPort=Hauteur pendant le planing - coque bâbord
rideHeightStarboard=Hauteur pendant le planing - coque tribord
IsFoiling=Planing en cours
FoilingDuration=Durée du planing
FoilingDistance=Distance parcourue en planing
TakeoffSpeedInKnotsInKnots=Vitesse porteuse au déjaugeage en nœuds
LandingSpeedInKnots=Vitesse à la fin du planing en nœuds
AbsoluteTrueWindAngleAtTakeoff=Angle du vent apparent réel au déjaugeage (TWA)
AbsoluteTrueWindAngleAtLanding=Angle du vent apparent réel à la fin du planing (TWA)
WindStrengthInBeaufortAtTakeoff=Force du vent en Beaufort au déjaugeage
WindStrengthInBeaufortAtLanding=Force du vent en Beaufort à la fin du planing
WindAtTakeoff=Vent au déjaugeage
WindAtLanding=Vent à la fin du planing
StartsOnLegType=Type de portion de parcours au déjaugeage
EndsOnLegType=Type de portion de parcours à la fin du planing
FoilingSegments=Tronçons en planing
AverageAbsoluteTrueWindAngle=Angle du vent apparent réel moyen
AbsoluteTrueWindAngle=Angle du vent apparent réel (TWA)
Wind=Vent
VMG=Compromis Cap/Vitesse (VMG)
@@ -16,11 +16,15 @@ Race=レース
Competitor=競技者
Boat=艇
Team=チーム
CompetitorSearchTag=競技者検索タグ
SearchTag=検索タグ
LeaderboardSailingDomainRetrieverChain=リーダーボード
RaceSailingDomainRetrieverChain=レース
LegSailingDomainRetrieverChain=レグ
GPSFixSailingDomainRetrieverChain=GPS フィックス
BravoFixSailingDomainRetrieverChain=Bravo フィックス
BravoFixTrackSailingDomainRetrieverChain=Bravo トラック
FoilingSegmentsSailingDomainRetrieverChain=フォイリングしたセグメント
WindFixSailingDomainRetrieverChain=風フィックス
MarkPassingSailingDomainRetrieverChain=マーク通過
RaceResultSailingDomainRetrieverChain=レース結果
RaceOfCompetitorSailingDomainRetrieverChain=競技者のレース
@@ -31,6 +35,9 @@ Leg=レグ
MarkPassing=マーク通過
LegOfCompetitor=競技者のレグ
GpsFix=GPS フィックス
BravoFix=Bravo フィックス
BravoFixTrack=Bravo フィックス/トラック
WindFix=風フィックス
Maneuver=マニューバー
WindStrengthInBeaufort=ビューフォート風力
Bft0=平穏
@@ -72,6 +79,8 @@ Tack=タック
SpeedBefore=マニューバー前の艇速
SpeedAfter=マニューバー後の艇速
DirectionChange=方向転換 (度)
AbsoluteDirectionChange=方向転換 (度) の絶対値
ToSide=方向転換する側 (ポート/スターボード)
ManeuverLoss=マニューバーロス
Waypoint=変針点
PassingSide=通過サイド
@@ -83,3 +92,35 @@ RankAfterHalfOfTheFirstLeg=第一レグ中間点の順位
AdvantageousEndOfLine=ラインの有利な端
TimeSpentInSeconds=所要時間 (秒)
MedalRace=メダルレース
WindSourceType=風源タイプ
WindSourceName=風源名
windFrom=真風向 (TWD)
windSpeedKnots=真風速 (kt)
speedInKnots=速度 (kt)
bearing=方向 (�T)
WindTrack=風追跡
timeSpentFoiling=フォイリング時間
yaw=ヨー
pitch=ピッチング
heel=ヒール
rideHeight=浮上高さ
rideHeightPort=左舷艇体浮上高さ
rideHeightStarboard=右舷艇体浮上高さ
IsFoiling=フォイリング中
FoilingDuration=フォイリング持続時間
FoilingDistance=フォイリング距離
TakeoffSpeedInKnotsInKnots=離水速度 (kt)
LandingSpeedInKnots=着水速度 (kt)
AbsoluteTrueWindAngleAtTakeoff=離水時の絶対真風角度 (TWA)
AbsoluteTrueWindAngleAtLanding=着水時の絶対真風角度 (TWA)
WindStrengthInBeaufortAtTakeoff=離水時のビューフォート風力
WindStrengthInBeaufortAtLanding=着水時のビューフォート風力
WindAtTakeoff=離水時の風
WindAtLanding=着水時の風
StartsOnLegType=離水時のレグのタイプ
EndsOnLegType=着水時のレグのタイプ
FoilingSegments=フォイリングしたセグメント
AverageAbsoluteTrueWindAngle=平均絶対真風角度
AbsoluteTrueWindAngle=絶対真風角度 (TWA)
Wind=風
VMG=VMG (有効速度)
@@ -0,0 +1,126 @@
Speed=Velocidade
SpeedTenSecondsBefore=Velocidade 10s antes
DistanceTraveled=Distância viajada
Name=Nome
LegType=Tipo de perna
SailID=Número da vela
Year=Ano
LegNumber=Número da perna
Nationality=Nacionalidade
Acronym=Acrônimo
Regatta=Regata
CourseArea=Área do percurso
BoatClass=Classe de barcos
Fleet=Frota
Race=Corrida
Competitor=Competidor
Boat=Barco
Team=Equipe
SearchTag=Etiqueta de pesquisa
LeaderboardSailingDomainRetrieverChain=Painéis de classificação
RaceSailingDomainRetrieverChain=Corridas
LegSailingDomainRetrieverChain=Pernas
GPSFixSailingDomainRetrieverChain=Pontos fixos de GPS
BravoFixSailingDomainRetrieverChain=Pontos fixos Bravo
BravoFixTrackSailingDomainRetrieverChain=Pistas Bravo
FoilingSegmentsSailingDomainRetrieverChain=Segmentos com hidrofólio
WindFixSailingDomainRetrieverChain=Pontos fixos de vento
MarkPassingSailingDomainRetrieverChain=Passagens na marca
RaceResultSailingDomainRetrieverChain=Resultados da corrida
RaceOfCompetitorSailingDomainRetrieverChain=Corridas de competidores
ManeuverSailingDomainRetrieverChain=Manobra
LeaderboardGroup=Grupo de painéis de classificação
Leaderboard=Painel de classificação
Leg=Perna
MarkPassing=Passagem na marca
LegOfCompetitor=Perna de competidor
GpsFix=Ponto fixo de GPS
BravoFix=Ponto fixo Bravo
BravoFixTrack=Pista de ponto fixo Bravo
WindFix=Ponto fixo de vento
Maneuver=Manobra
WindStrengthInBeaufort=Intensidade do vento na escala de Beaufort
Bft0=Calmaria
Bft1=Bafagem
Bft2=Aragem
Bft3=Fraco
Bft4=Moderado
Bft5=Fresco
Bft6=Muito fresco
Bft7=Forte
Bft8=Muito forte
Bft9=Duro
Bft10=Muito duro
Bft11=Tempestuoso
Bft12=Furacão
RelativeScore=Pontuação relativa (0 melhor; 1 pior)
RelativeScoreInPercent=Pontuação relativa em %
RelativeScoreInRaceInPercent=Pontuação relativa na corrida em %
AbsoluteRank=Posição absoluta
WindSpeedInBeaufort=Velocidade do vento na escala de Beaufort
DistanceAtStart=Distância até partida na partida
SpeedWhenStarting=Velocidade na partida
SpeedTenSecondsBeforeStart=Velocidade 10s antes da partida
RankAtFirstMark=Posição na primeira marca
NumberOfManeuvers=Número de manobras
NumberOfTacks=Número de cambadas
NumberOfJibes=Número de jaibes
NumberOfPenaltyCircles=Número de voltas de punição
RankGainsOrLosses=Ganhos ou perdas de posição
DistanceToStarboardSideAtStart=Distância até lado do boreste (% do comprimento)
NumberOfPodiumFinish=Número de lugares no pódio
NumberOfWins=Número de vitórias
RankGainsOrLossesBetweenFirstMarkAndFinish=Ganhos ou perdas de posição (1ª marca -> chegada)
IsTracked=Está rastreado
NumberOfCompetitorFixes=Número de pontos fixos dos competidores
NumberOfMarkFixes=Número de pontos fixos de marca
ManeuverType=Tipo de manobra
Tack=Cambar
SpeedBefore=Velocidade antes de manobra
SpeedAfter=Velocidade depois de manobra
DirectionChange=Mudança de direção em graus
AbsoluteDirectionChange=Mudança absoluta de direção em graus (positiva)
ToSide=Até lado (bombordo/boreste)
ManeuverLoss=Perda de manobra
Waypoint=Waypoint
PassingSide=Lado de passagem
TackAtStart=Cambar na partida
SpeedTenSecondsAfterStart=Velocidade 10s depois da partida
RankThirtySecondsAfterStart=Posição 30s depois da partida
WindwardDistanceToAdvantageousEndOfLine=Distância a barlavento para fim de linha favorável
RankAfterHalfOfTheFirstLeg=Posição depois de metade da primeira perna
AdvantageousEndOfLine=Fim de linha favorável
TimeSpentInSeconds=Tempo gasto em segundos
MedalRace=Corrida para medalha
WindSourceType=Tipo de origem do vento
WindSourceName=Nome da origem do vento
windFrom=Direção do vento verdadeiro (TWD)
windSpeedKnots=Velocidade do vento verdadeiro (nós)
speedInKnots=Velocidade (nós)
bearing=Direção(�T)
WindTrack=Pista de vento
timeSpentFoiling=Tempo gasto em navegação com hidrofólio
yaw=Guinar
pitch=Caturrar
heel=Adernar
rideHeight=Altura de flutuação
rideHeightPort=Altura de flutuação casco de bombordo
rideHeightStarboard=Altura de flutuação casco de boreste
IsFoiling=Navegando com hidrofólio
FoilingDuration=Duração de navegação com hidrofólio
FoilingDistance=Distância com hidrofólio
TakeoffSpeedInKnotsInKnots=Velocidade de desatracação em nós
LandingSpeedInKnots=Velocidade de atracação em nós
AbsoluteTrueWindAngleAtTakeoff=Ângulo de vento verdadeiro absoluto (TWA) na desatracação
AbsoluteTrueWindAngleAtLanding=Ângulo de vento verdadeiro absoluto (TWA) na atracação
WindStrengthInBeaufortAtTakeoff=Intensidade do vento na escala de Beaufort na desatracação
WindStrengthInBeaufortAtLanding=Intensidade do vento na escala de Beaufort na atracação
WindAtTakeoff=Vento na desatracação
WindAtLanding=Vento na atracação
StartsOnLegType=Tipo de perna na desatracação
EndsOnLegType=Tipo de perna na atracação
FoilingSegments=Segmentos com hidrofólio
AverageAbsoluteTrueWindAngle=Ângulo de vento verdadeiro absoluto médio
AbsoluteTrueWindAngle=Ângulo de vento verdadeiro absoluto (TWA)
Wind=Vento
VMG=Velocidade diretamente na linha do vento real (VMG)
@@ -16,11 +16,15 @@ Race=Гонка
Competitor=Участник
Boat=Лодка
Team=Команда
CompetitorSearchTag=Тег поиска участника
SearchTag=Тег поиска
LeaderboardSailingDomainRetrieverChain=Таблицы лидеров
RaceSailingDomainRetrieverChain=Гонки
LegSailingDomainRetrieverChain=Отрезки
GPSFixSailingDomainRetrieverChain=Замеры GPS
BravoFixSailingDomainRetrieverChain=Замеры Bravo
BravoFixTrackSailingDomainRetrieverChain=Отслеживания Bravo
FoilingSegmentsSailingDomainRetrieverChain=Сегменты в крыльевом режиме
WindFixSailingDomainRetrieverChain=Замеры ветра
MarkPassingSailingDomainRetrieverChain=Прохождения отметок
RaceResultSailingDomainRetrieverChain=Результаты гонки
RaceOfCompetitorSailingDomainRetrieverChain=Гонки участников
@@ -31,6 +35,9 @@ Leg=Отрезок
MarkPassing=Прохождение отметки
LegOfCompetitor=Отрезок участника
GpsFix=Замер GPS
BravoFix=Замер Bravo
BravoFixTrack=Отслеживание замеров Bravo
WindFix=Замер ветра
Maneuver=Маневр
WindStrengthInBeaufort=Сила ветра по шкале Бофорта
Bft0=Штиль
@@ -72,6 +79,8 @@ Tack=Оверштаг
SpeedBefore=Скорость до маневра
SpeedAfter=Скорость после маневра
DirectionChange=Изменение направления в градусах
AbsoluteDirectionChange=Абсолютное изменение направления в градусах (положительное)
ToSide=Борт (левый/правый)
ManeuverLoss=Потеря маневра
Waypoint=Путевая точка
PassingSide=Сторона прохождения
@@ -79,7 +88,39 @@ TackAtStart=Оверштаг при старте
SpeedTenSecondsAfterStart=Скорость через 10 с после старта
RankThirtySecondsAfterStart=Ранг через 30 с после старта
WindwardDistanceToAdvantageousEndOfLine=Дистанция по ветру до выгодного конца линии
RankAfterHalfOfTheFirstLeg=Ранг после половины первого этапа
RankAfterHalfOfTheFirstLeg=Ранг после половины первого отрезка
AdvantageousEndOfLine=Выгодный конец линии
TimeSpentInSeconds=Затраченное время в секундах
MedalRace=Гонка на медали
WindSourceType=Тип источника ветра
WindSourceName=Название источника ветра
windFrom=Направление истинного ветра (НИВ)
windSpeedKnots=Скорость истинного ветра (уз)
speedInKnots=Скорость (уз)
bearing=Направление (�T)
WindTrack=Отслеживание ветра
timeSpentFoiling=Время в крыльевом режиме
yaw=Рыскание
pitch=Инкремент
heel=Крен
rideHeight=Высота хода
rideHeightPort=Высота хода левого борта
rideHeightStarboard=Высота хода правого борта
IsFoiling=Крыльевой режим
FoilingDuration=Продолжительность крыльевого режима
FoilingDistance=Пройдено в крыльевом режиме
TakeoffSpeedInKnotsInKnots=Скорость отрыва в узлах
LandingSpeedInKnots=Скорость посадки в узлах
AbsoluteTrueWindAngleAtTakeoff=Абсолютный угол истинного ветра (TWA) при отрыве
AbsoluteTrueWindAngleAtLanding=Абсолютный угол истинного ветра (TWA) при посадке
WindStrengthInBeaufortAtTakeoff=Сила ветра по шкале Бофорта при отрыве
WindStrengthInBeaufortAtLanding=Сила ветра по шкале Бофорта при посадке
WindAtTakeoff=Ветер при отрыве
WindAtLanding=Ветер при посадке
StartsOnLegType=Тип отрезка при отрыве
EndsOnLegType=Тип отрезка при посадке
FoilingSegments=Сегментов в крыльевом режиме
AverageAbsoluteTrueWindAngle=Средний абсолютный угол истинного ветра
AbsoluteTrueWindAngle=Абсолютный угол истинного ветра (TWA)
Wind=Ветер
VMG=Эффективная скорость лавирования (VMG)
@@ -16,19 +16,29 @@ Race=比赛轮次
Competitor=参赛队
Boat=船只
Team=团队
SearchTag=搜索标记
LeaderboardSailingDomainRetrieverChain=积分榜
RaceSailingDomainRetrieverChain=比赛轮次
LegSailingDomainRetrieverChain=航段
GPSFixSailingDomainRetrieverChain=GPS 修复
BravoFixSailingDomainRetrieverChain=Bravo 修复
BravoFixTrackSailingDomainRetrieverChain=Bravo 跟踪
FoilingSegmentsSailingDomainRetrieverChain=水翼腾空段
WindFixSailingDomainRetrieverChain=风力修复
MarkPassingSailingDomainRetrieverChain=绕标
RaceResultSailingDomainRetrieverChain=比赛轮次结果
RaceOfCompetitorSailingDomainRetrieverChain=参赛队的比赛轮次
ManeuverSailingDomainRetrieverChain=操作
LeaderboardGroup=积分榜分组
Leaderboard=积分榜
Leg=航段
MarkPassing=绕标
LegOfCompetitor=参赛队的航段
GpsFix=GPS 修复
BravoFix=Bravo 修复
BravoFixTrack=Bravo 修复跟踪
WindFix=风力修复
Maneuver=操作
WindStrengthInBeaufort=风力(蒲福风级)
Bft0=无风
Bft1=软风
@@ -43,7 +53,10 @@ Bft9=烈风
Bft10=暴风
Bft11=飓风
Bft12=台风
RelativeScoreInRace=比赛轮次中的相对得分(0 最佳;1 最差)
RelativeScore=相对得分(0 最佳;1 最差)
RelativeScoreInPercent=相对得分 (%)
RelativeScoreInRaceInPercent=比赛轮次中的相对得分 (%)
AbsoluteRank=绝对名次
WindSpeedInBeaufort=风速(单位:Bft)
DistanceAtStart=起航前与起航线的距离
SpeedWhenStarting=起航时的速度
@@ -61,3 +74,53 @@ RankGainsOrLossesBetweenFirstMarkAndFinish=名次进阶或落后(第一个标
IsTracked=是否跟踪
NumberOfCompetitorFixes=参赛队修复次数
NumberOfMarkFixes=标志修复次数
ManeuverType=操作类型
Tack=迎风转向
SpeedBefore=操作前的速度
SpeedAfter=操作后的速度
DirectionChange=风向变化角度
AbsoluteDirectionChange=绝对风向变化角度(正向)
ToSide=至侧(左舷/右舷)
ManeuverLoss=操作损失
Waypoint=航路点
PassingSide=绕标侧
TackAtStart=起航时迎风转向
SpeedTenSecondsAfterStart=起航后 10 秒的速度
RankThirtySecondsAfterStart=起航后 30 秒的名次
WindwardDistanceToAdvantageousEndOfLine=与有利航线终点的上风距离
RankAfterHalfOfTheFirstLeg=第一航段过半后的名次
AdvantageousEndOfLine=有利航线终点
TimeSpentInSeconds=所用时间(秒)
MedalRace=奖牌轮
WindSourceType=风源类型
WindSourceName=风源名称
windFrom=实际风向 (TWD)
windSpeedKnots=实际风速 (kts)
speedInKnots=速度 (kts)
bearing=方向 (�T)
WindTrack=风力跟踪
timeSpentFoiling=水翼腾空所用时间
yaw=偏航
pitch=纵摇
heel=侧倾
rideHeight=行驶高度
rideHeightPort=左舷船体行驶高度
rideHeightStarboard=右舷船体行驶高度
IsFoiling=水翼腾空
FoilingDuration=水翼腾空持续时间
FoilingDistance=水翼腾空距离
TakeoffSpeedInKnotsInKnots=起航速度(节)
LandingSpeedInKnots=着陆速度(节)
AbsoluteTrueWindAngleAtTakeoff=起航时的绝对实际风向角 (TWA)
AbsoluteTrueWindAngleAtLanding=着陆时的绝对实际风向角 (TWA)
WindStrengthInBeaufortAtTakeoff=起航时的风力(蒲福风级)
WindStrengthInBeaufortAtLanding=着陆时的风力(蒲福风级)
WindAtTakeoff=起航风
WindAtLanding=着陆风
StartsOnLegType=起航航段的类型
EndsOnLegType=着陆航段的类型
FoilingSegments=水翼腾空段
AverageAbsoluteTrueWindAngle=平均绝对实际风向角
AbsoluteTrueWindAngle=绝对实际风向角 (TWA)
Wind=风力
VMG=沿计划航线上的航速
@@ -1,14 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
<file datatype="javapropertyresourcebundle" original="/usr/sap/ljs/app/Converter_2566045106627533633/java/com.sap.sailing.datamining/resources/stringmessages/Sailing_StringMessages.properties" source-language="en">
<file datatype="javapropertyresourcebundle" original="/usr/sap/ljs/app/Converter_7519916557605079548/java/com.sap.sailing.datamining/resources/stringmessages/Sailing_StringMessages.properties" source-language="en">
<header>
<skl>
<internal-file crc="f38aaa3e2ebfcee22c5187ca5b77bc00" form="base64">H4sIAAAAAAAAAIVWS28jKRC+8yu4jJQcRopn9qkVKznJ2vHKeci2Ntoj7i53o7TBApys59dvVdEP7Ew8F7rq4wOKetHLHUCpljQKHldgl1A4W4Zr2DgPaU6OroJcMyBuTYjaFrDy+hUaXN0BskPEg96CokHMoVoddqDwK0kQS22a2a2ij3zYb9fgxb+gvaKB2Aljfjv9oKNxVjcmHlQmi3HhnT1sVfsVC6h0jFq1X3Hj9j7A2INWSZQki2un402jQ1AkSRbFpAGIikex0AUoGnCH7Q6iic6rQeQNeK1Ygd4qGjLmEu9R1CtdZUtkAiWieEVdgl877UvygbHVrdtqYxcQvYFX8Dc1aiqjBbboHJnmAznv/I5VENOn5cT8d46GjM9Iwf3utX95Qucg89wCosmWl0xdQNg38UcGy0RLSx43mQd/dFPpNnKgk6EW9kg5b2Xi5P6ferff5Z6WjOSUfJYcTF7MHXN0eyLkF+EkRluLIXemu4DO7ZzcWz6Y92xsuYwebBXrmb0Gvceai4pg2eHSWNnNiOtNvFI3utmSNFJzU9VRauNJ/dKqaw/wDQj5qqZgYwMZ9JO6d3hFHXPwZzXxEOoM+UXh8c5WGfSrusPt5RvaRupvaqobnvi941YtMLpCxPlk40j9Y1yDZsjQY1/U3d57U6AbsI4brPJXWBbUfjpNsiovrrANhfiHHMk3jH28PKbP7BP4Avc+XYcu+3RKpWQ6t4CzlBeO18E1+wgLbV9Up0jSUsCoRb6LFvdNCtUm9j1zHJdRI6NvmdFJRiS2IhZSF36usQ2TSjmWdjomnLbptO3QqxPariBDx3Fi0F+Ur4p02o8RSZBIvfZx0yViUAmh/O2xnrXSxUvOYL2f/dtgiLJZ1vvZJ8D+HQ83xhfNEa2dkO0MWz3F2g2Pfu5CQC7bzZDEpprA4TlydNnUWE35oadToRNDXnyiY+dcU5eDfa40++3EWBPq3DqGZcKz62Cs80uQ+t7ya4hvALaPwNiW7QHfu5K8GLVhkZ//bE+8FLOAz2vxgu/tLMhW7K0Ymg737syg7BVKbX2ItH85JfOZXfdPQefXu1PSE07RVjSkVDz6T2jzru9njI43EXtcIrA8zN8aDwW96dimbQWq12UCqIBuocKeM5hEXhpMIk0868POGaziThDdy4WBVq3MUWfru+Qg+cPCYktP6yqZP5TVqjY+Ht6v4Lh+PVlAfeEN029I2XH5qm3UFbh9+MuWj5u5saA6nsyTN6dK5HLuGuqXVN10yp1uNlibNXCe0WuVCp0tiDXIGgm0jOQN136Dz9n3bfjwuJXZAvrDxlnnKEWQZIzC1aLiHkrd8M8US9xOxf+VN8i0cAoAAA==</internal-file>
<internal-file crc="687dae536d957f976a561fc5861eb426" form="base64">H4sIAAAAAAAAAI1XS2/jNhC+81fwskB8KJrs9omCBZy4cdLmYcTGBgv0QssjmbAsGiSd1P31nRmKEu3ETi8UOfNxOJwnNd0ALNSURsHjDJopFLZZ+EsorYPIkxfnXs6ZIEbGB90UMHP6BWrcnQgyUcSDXoOiQdxBNdttQOFX0kRMtalvR4o+8mG7noMT30A7RQOhI43xLftBB2MbXZuwU9lcDAtnm91atV/xBJUOQav2K67s1nkYOtAqTiXNxaXV4arW3iuaSZ6K6xogKB7Fky5A0YAS1hsIJlin+ikL4L1iBnqtaBBT1L5YznSl4kziFG+jF+DmVrsFXdc01ciutWmeIDgDL+CulrhSGczz4afAxPdkp9MSKy/Gk+m1+ecUDBESISjvEh1nP0Az5gCPDi9WH29iGBrZMnAK1Rqa4E/tIyhGXYKKZ9MsPtCPIK1699qtJuhWOuzEDoLJFhct/wR+W4eP7C8jLG55LPvQ+NBx0payh5OiDWwRclrLiMnDaezsdpMHjmRKDsm5FC8UFLlh9m5PgPwinH6oa9FH/Xjj0bgpZroI6MNiPyh6evR+8mDnpu7u/QWJNQ0Omiosb5tL0FusNyHuSHRpGpk44rIM5+pK12uaXag7Uy2D1MbR8nO7nDuAf4EoX9QYY6mGjPSDurdoJB1y4o/q2oFfZpSfFB5vmyoj/axuULx8Rd1o+Ysa65oZvyZs1RIuzpFiXdTxQn01tkY1pO9on9XN1jlToBmwhtVY4V5gWlDpTSvJS3l2jiXYh9/khXzF6AmDffhtMwFXoOzDfWiyT4dQCsdTGzjOeeNw7m29DfCkm5VKC0mr6DBqD2+8xT2DXFWGrl8MwzRoRHTtIljJFIllmCexAz0vsQXRkqI0StoHHLaoKLbvU5Ha7iBFh+HaoL0o4hWtSR5TJJFE7DOPZQpEryKFMqCjdagZ1bIMweuO+6dBF2VcXnfcCWDvCrsr44p6D9YyZMthrceY/f7R3VnvEct6M0laJyOxb8WWLhs7jVkctXQsFYSQZ5/o2DvOqUGvn12Y7fraNMYvc+2YLCM9uw76Or8ELd9qfgnhFaDpPDCkOsAHvHcleXbRukV+93t74kDcei4i+Na49bKddlr0ZYurf6ZQz2kbQ+9ptzoE85mpf0Sn88slLeLzhbytaIihuPdGauOuq2dMHZYBa1wE8Lznj4yDgt4zWOibClS3lpFACTSCCmuO77LwcE+XkCc2y7OJ9YbyeyAwUtD9ambbMJhgzsrv++gYdJcnf/SXp5V41ruNNVgv0kSkLksy2zkLZjulMKT50RRmmxxmcDRUn8CzpXFh93YHR9CXgw1UgV7xKn1yDBcvugm6Arv1fzSLx/LONKASTuZpkkMlYjlLDFVmqiN0yo2uS6wCS+CIps4aSwprEJYglwigbTQvucrU2Hrf1+HocTOzBrRHE26ToRSRJNPIty1V3MNC1/xk5RkX7liY8c2Ll6cQjjWZ1zGKez6/1HM+v9qprV07i49btwXJ7D6+zmbPowFD2GF/NTb4DBi9eLYKfiCFj90hYjKOmOMzmep7JvbvbVmWi9mAtYuPCBYY3w8hGaR9RUZzeDZHGUlip1/VN/0qNiYUSzWhUSwBanWDg3AYlzdAjwL1RLEf5xmZciFnSU6Om22d7+0yZQ/ZV1eG3/qkJdardpqev6Ot458Y1a5lInSANhz78h1fw5hTK7BlOc1smkzbsqRPjXdFZHGnmwWlZ+6FlnYITYWEHElmHzZVjY2kFdzXmUCOJudLTQiKhuGAsjtE5DFB7bH/Q1AdkUeeg71KHBw+exfOW0iuzTEhSZ2TQnJNDs49OOJAYLaXa5J/bNKPMA2U5VgTciGY+8dBSdbBD9Sbv6QhVmqsJe96QLVMqY844H3HfeAvvjzfWXy9H6uvUNsC/82xx2FujK1diP8A9Xa4EWEQAAA=</internal-file>
</skl>
<phase-group>
<phase company-name="SAP AG" date="2016-11-04T21:01:36Z" phase-name="file-creation" process-name="file-creation" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter"/>
<phase company-name="SAP AG" date="2017-02-23T16:17:36Z" phase-name="file-creation" process-name="file-creation" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter"/>
</phase-group>
<tool tool-company="SAP AG" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter" tool-name="TEW: Javascript .properties Flexible File Converter" tool-version="1.1.0"/>
<tool tool-company="SAP AG" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter" tool-name="TEW: Java properties Flexible File Converter" tool-version="1.1.0"/>
</header>
<body>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Speed" resname="Speed">
@@ -65,8 +65,8 @@
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Team" resname="Team">
<source>Team</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="CompetitorSearchTag" resname="CompetitorSearchTag">
<source>Competitor Search Tag</source>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SearchTag" resname="SearchTag">
<source>Search Tag</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LeaderboardSailingDomainRetrieverChain" resname="LeaderboardSailingDomainRetrieverChain">
<source>Leaderboards</source>
@@ -78,7 +78,19 @@
<source>Legs</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="GPSFixSailingDomainRetrieverChain" resname="GPSFixSailingDomainRetrieverChain">
<source>GPS-Fixes</source>
<source>GPS Fixes</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BravoFixSailingDomainRetrieverChain" resname="BravoFixSailingDomainRetrieverChain">
<source>Bravo Fixes</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BravoFixTrackSailingDomainRetrieverChain" resname="BravoFixTrackSailingDomainRetrieverChain">
<source>Bravo Tracks</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="FoilingSegmentsSailingDomainRetrieverChain" resname="FoilingSegmentsSailingDomainRetrieverChain">
<source>Foiled Segments</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindFixSailingDomainRetrieverChain" resname="WindFixSailingDomainRetrieverChain">
<source>Wind Fixes</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="MarkPassingSailingDomainRetrieverChain" resname="MarkPassingSailingDomainRetrieverChain">
<source>Mark Passings</source>
@@ -108,7 +120,16 @@
<source>Leg of competitor</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="GpsFix" resname="GpsFix">
<source>GPS-Fix</source>
<source>GPS Fix</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BravoFix" resname="BravoFix">
<source>Bravo Fix</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BravoFixTrack" resname="BravoFixTrack">
<source>Bravo Fix Track</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindFix" resname="WindFix">
<source>Wind Fix</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Maneuver" resname="Maneuver">
<source>Maneuver</source>
@@ -233,6 +254,12 @@
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="DirectionChange" resname="DirectionChange">
<source>Direction Change in Degrees</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteDirectionChange" resname="AbsoluteDirectionChange">
<source>Absolute Direction Change in Degrees (Positive)</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="ToSide" resname="ToSide">
<source>To Side (Port / Starboard)</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="ManeuverLoss" resname="ManeuverLoss">
<source>Maneuver Loss</source>
</trans-unit>
@@ -266,6 +293,102 @@
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="MedalRace" resname="MedalRace">
<source>Medal Race</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindSourceType" resname="WindSourceType">
<source>Wind Source Type</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindSourceName" resname="WindSourceName">
<source>Wind Source Name</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="windFrom" resname="windFrom">
<source>True Wind Direction (TWD)</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="windSpeedKnots" resname="windSpeedKnots">
<source>True Wind Speed (kts) </source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="speedInKnots" resname="speedInKnots">
<source>Speed (kts)</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="bearing" resname="bearing">
<source>Direction (�T)</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindTrack" resname="WindTrack">
<source>Wind Track</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="timeSpentFoiling" resname="timeSpentFoiling">
<source>Time spent foiling</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="yaw" resname="yaw">
<source>Yaw</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="pitch" resname="pitch">
<source>Pitch</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="heel" resname="heel">
<source>Heel</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="rideHeight" resname="rideHeight">
<source>Ride Height</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="rideHeightPort" resname="rideHeightPort">
<source>Ride Height Port Hull</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="rideHeightStarboard" resname="rideHeightStarboard">
<source>Ride Height Starboard Hull</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="IsFoiling" resname="IsFoiling">
<source>Is Foiling</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="FoilingDuration" resname="FoilingDuration">
<source>Foiling Duration</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="FoilingDistance" resname="FoilingDistance">
<source>Distance Foiled</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="TakeoffSpeedInKnotsInKnots" resname="TakeoffSpeedInKnotsInKnots">
<source>Takeoff speed in knots</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LandingSpeedInKnots" resname="LandingSpeedInKnots">
<source>Landing speed in knots</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteTrueWindAngleAtTakeoff" resname="AbsoluteTrueWindAngleAtTakeoff">
<source>Absolute true wind angle (TWA) at takeoff</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteTrueWindAngleAtLanding" resname="AbsoluteTrueWindAngleAtLanding">
<source>Absolute true wind angle (TWA) at landing</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindStrengthInBeaufortAtTakeoff" resname="WindStrengthInBeaufortAtTakeoff">
<source>Wind strength in beaufort at takeoff</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindStrengthInBeaufortAtLanding" resname="WindStrengthInBeaufortAtLanding">
<source>Wind strength in beaufort at landing</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindAtTakeoff" resname="WindAtTakeoff">
<source>Wind at takeoff</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindAtLanding" resname="WindAtLanding">
<source>Wind at landing</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="StartsOnLegType" resname="StartsOnLegType">
<source>Type of leg at takeoff</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="EndsOnLegType" resname="EndsOnLegType">
<source>Type of leg at landing</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="FoilingSegments" resname="FoilingSegments">
<source>Foiled Segments</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AverageAbsoluteTrueWindAngle" resname="AverageAbsoluteTrueWindAngle">
<source>Average absolute true wind angle</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteTrueWindAngle" resname="AbsoluteTrueWindAngle">
<source>Absolute true wind angle (TWA)</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Wind" resname="Wind">
<source>Wind</source>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="VMG" resname="VMG">
<source>Velocity Made Good</source>
</trans-unit>
</body>
</file>
</xliff>
@@ -0,0 +1,520 @@
<?xml version="1.0" encoding="UTF-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
<file datatype="javapropertyresourcebundle" date="2017-03-03T16:43:53Z" original="/usr/sap/ljs/app/Converter_7519916557605079548/java/com.sap.sailing.datamining/resources/stringmessages/Sailing_StringMessages.properties" source-language="en" target-language="es">
<header>
<skl>
<internal-file crc="687dae536d957f976a561fc5861eb426" form="base64">H4sIAAAAAAAAAI1XS2/jNhC+81fwskB8KJrs9omCBZy4cdLmYcTGBgv0QssjmbAsGiSd1P31nRmKEu3ETi8UOfNxOJwnNd0ALNSURsHjDJopFLZZ+EsorYPIkxfnXs6ZIEbGB90UMHP6BWrcnQgyUcSDXoOiQdxBNdttQOFX0kRMtalvR4o+8mG7noMT30A7RQOhI43xLftBB2MbXZuwU9lcDAtnm91atV/xBJUOQav2K67s1nkYOtAqTiXNxaXV4arW3iuaSZ6K6xogKB7Fky5A0YAS1hsIJlin+ikL4L1iBnqtaBBT1L5YznSl4kziFG+jF+DmVrsFXdc01ciutWmeIDgDL+CulrhSGczz4afAxPdkp9MSKy/Gk+m1+ecUDBESISjvEh1nP0Az5gCPDi9WH29iGBrZMnAK1Rqa4E/tIyhGXYKKZ9MsPtCPIK1699qtJuhWOuzEDoLJFhct/wR+W4eP7C8jLG55LPvQ+NBx0payh5OiDWwRclrLiMnDaezsdpMHjmRKDsm5FC8UFLlh9m5PgPwinH6oa9FH/Xjj0bgpZroI6MNiPyh6evR+8mDnpu7u/QWJNQ0Omiosb5tL0FusNyHuSHRpGpk44rIM5+pK12uaXag7Uy2D1MbR8nO7nDuAf4EoX9QYY6mGjPSDurdoJB1y4o/q2oFfZpSfFB5vmyoj/axuULx8Rd1o+Ysa65oZvyZs1RIuzpFiXdTxQn01tkY1pO9on9XN1jlToBmwhtVY4V5gWlDpTSvJS3l2jiXYh9/khXzF6AmDffhtMwFXoOzDfWiyT4dQCsdTGzjOeeNw7m29DfCkm5VKC0mr6DBqD2+8xT2DXFWGrl8MwzRoRHTtIljJFIllmCexAz0vsQXRkqI0StoHHLaoKLbvU5Ha7iBFh+HaoL0o4hWtSR5TJJFE7DOPZQpEryKFMqCjdagZ1bIMweuO+6dBF2VcXnfcCWDvCrsr44p6D9YyZMthrceY/f7R3VnvEct6M0laJyOxb8WWLhs7jVkctXQsFYSQZ5/o2DvOqUGvn12Y7fraNMYvc+2YLCM9uw76Or8ELd9qfgnhFaDpPDCkOsAHvHcleXbRukV+93t74kDcei4i+Na49bKddlr0ZYurf6ZQz2kbQ+9ptzoE85mpf0Sn88slLeLzhbytaIihuPdGauOuq2dMHZYBa1wE8Lznj4yDgt4zWOibClS3lpFACTSCCmuO77LwcE+XkCc2y7OJ9YbyeyAwUtD9ambbMJhgzsrv++gYdJcnf/SXp5V41ruNNVgv0kSkLksy2zkLZjulMKT50RRmmxxmcDRUn8CzpXFh93YHR9CXgw1UgV7xKn1yDBcvugm6Arv1fzSLx/LONKASTuZpkkMlYjlLDFVmqiN0yo2uS6wCS+CIps4aSwprEJYglwigbTQvucrU2Hrf1+HocTOzBrRHE26ToRSRJNPIty1V3MNC1/xk5RkX7liY8c2Ll6cQjjWZ1zGKez6/1HM+v9qprV07i49btwXJ7D6+zmbPowFD2GF/NTb4DBi9eLYKfiCFj90hYjKOmOMzmep7JvbvbVmWi9mAtYuPCBYY3w8hGaR9RUZzeDZHGUlip1/VN/0qNiYUSzWhUSwBanWDg3AYlzdAjwL1RLEf5xmZciFnSU6Om22d7+0yZQ/ZV1eG3/qkJdardpqev6Ot458Y1a5lInSANhz78h1fw5hTK7BlOc1smkzbsqRPjXdFZHGnmwWlZ+6FlnYITYWEHElmHzZVjY2kFdzXmUCOJudLTQiKhuGAsjtE5DFB7bH/Q1AdkUeeg71KHBw+exfOW0iuzTEhSZ2TQnJNDs49OOJAYLaXa5J/bNKPMA2U5VgTciGY+8dBSdbBD9Sbv6QhVmqsJe96QLVMqY844H3HfeAvvjzfWXy9H6uvUNsC/82xx2FujK1diP8A9Xa4EWEQAAA=</internal-file>
</skl>
<phase-group>
<phase company-name="SAP AG" date="2017-02-23T16:17:36Z" phase-name="file-creation" process-name="file-creation" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter"/>
</phase-group>
<tool tool-company="SAP AG" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter" tool-name="TEW: Java properties Flexible File Converter" tool-version="1.1.0"/>
</header>
<body>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Speed" resname="Speed">
<source>Speed</source>
<target state="signed-off">Velocidad</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SpeedTenSecondsBefore" resname="SpeedTenSecondsBefore">
<source>Speed 10s before</source>
<target state="signed-off">Velocidad 10 s antes</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="DistanceTraveled" resname="DistanceTraveled">
<source>Distance Traveled</source>
<target state="signed-off">Distancia viajada</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Name" resname="Name">
<source>Name</source>
<target state="signed-off">Nombre</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LegType" resname="LegType">
<source>Leg Type</source>
<target state="signed-off">Tipo de tramo</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SailID" resname="SailID">
<source>Sail Number</source>
<target state="signed-off">Número de navegación</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Year" resname="Year">
<source>Year</source>
<target state="signed-off">Año</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LegNumber" resname="LegNumber">
<source>Leg Number</source>
<target state="signed-off">Número de tramo</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Nationality" resname="Nationality">
<source>Nationality</source>
<target state="signed-off">Nacionalidad</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Acronym" resname="Acronym">
<source>Acronym</source>
<target state="signed-off">Siglas</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Regatta" resname="Regatta">
<source>Regatta</source>
<target state="signed-off">Regata</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="CourseArea" resname="CourseArea">
<source>Course Area</source>
<target state="signed-off">Campo de regatas</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BoatClass" resname="BoatClass">
<source>Boat Class</source>
<target state="signed-off">Clase de bote</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Fleet" resname="Fleet">
<source>Fleet</source>
<target state="signed-off">Flota</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Race" resname="Race">
<source>Race</source>
<target state="signed-off">Carrera</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Competitor" resname="Competitor">
<source>Competitor</source>
<target state="signed-off">Competidor</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Boat" resname="Boat">
<source>Boat</source>
<target state="signed-off">Bote</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Team" resname="Team">
<source>Team</source>
<target state="signed-off">Equipo</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SearchTag" resname="SearchTag">
<source>Search Tag</source>
<target state="signed-off">Etiqueta de búsqueda</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LeaderboardSailingDomainRetrieverChain" resname="LeaderboardSailingDomainRetrieverChain">
<source>Leaderboards</source>
<target state="signed-off">Clasificaciones</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RaceSailingDomainRetrieverChain" resname="RaceSailingDomainRetrieverChain">
<source>Races</source>
<target state="signed-off">Carreras</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LegSailingDomainRetrieverChain" resname="LegSailingDomainRetrieverChain">
<source>Legs</source>
<target state="signed-off">Tramos</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="GPSFixSailingDomainRetrieverChain" resname="GPSFixSailingDomainRetrieverChain">
<source>GPS Fixes</source>
<target state="signed-off">Puntos de GPS</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BravoFixSailingDomainRetrieverChain" resname="BravoFixSailingDomainRetrieverChain">
<source>Bravo Fixes</source>
<target state="signed-off">Puntos de Bravo</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BravoFixTrackSailingDomainRetrieverChain" resname="BravoFixTrackSailingDomainRetrieverChain">
<source>Bravo Tracks</source>
<target state="signed-off">Seguimientos Bravo</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="FoilingSegmentsSailingDomainRetrieverChain" resname="FoilingSegmentsSailingDomainRetrieverChain">
<source>Foiled Segments</source>
<target state="signed-off">Segmentos laminados</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindFixSailingDomainRetrieverChain" resname="WindFixSailingDomainRetrieverChain">
<source>Wind Fixes</source>
<target state="signed-off">Puntos de viento</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="MarkPassingSailingDomainRetrieverChain" resname="MarkPassingSailingDomainRetrieverChain">
<source>Mark Passings</source>
<target state="signed-off">Superaciones de marca</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RaceResultSailingDomainRetrieverChain" resname="RaceResultSailingDomainRetrieverChain">
<source>Race Results</source>
<target state="signed-off">Resultados de la carrera</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RaceOfCompetitorSailingDomainRetrieverChain" resname="RaceOfCompetitorSailingDomainRetrieverChain">
<source>Races of Competitors</source>
<target state="signed-off">Carreras de los competidores</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="ManeuverSailingDomainRetrieverChain" resname="ManeuverSailingDomainRetrieverChain">
<source>Maneuver</source>
<target state="signed-off">Maniobra</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LeaderboardGroup" resname="LeaderboardGroup">
<source>Leaderboard Group</source>
<target state="signed-off">Grupo de clasificación</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Leaderboard" resname="Leaderboard">
<source>Leaderboard</source>
<target state="signed-off">Clasificación</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Leg" resname="Leg">
<source>Leg</source>
<target state="signed-off">Tramo</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="MarkPassing" resname="MarkPassing">
<source>Mark Passing</source>
<target state="signed-off">Superación de marca</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LegOfCompetitor" resname="LegOfCompetitor">
<source>Leg of competitor</source>
<target state="signed-off">Tramo del competidor</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="GpsFix" resname="GpsFix">
<source>GPS Fix</source>
<target state="signed-off">Punto de GPS</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BravoFix" resname="BravoFix">
<source>Bravo Fix</source>
<target state="signed-off">Punto de Bravo</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BravoFixTrack" resname="BravoFixTrack">
<source>Bravo Fix Track</source>
<target state="signed-off">Seguimiento de punto Bravo</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindFix" resname="WindFix">
<source>Wind Fix</source>
<target state="signed-off">Punto de viento</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Maneuver" resname="Maneuver">
<source>Maneuver</source>
<target state="signed-off">Maniobra</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindStrengthInBeaufort" resname="WindStrengthInBeaufort">
<source>Wind Strength in Beaufort</source>
<target state="signed-off">Fuerza del viento en Beaufort</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft0" resname="Bft0">
<source>Calm</source>
<target state="signed-off">Calma</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft1" resname="Bft1">
<source>Light air</source>
<target state="signed-off">Ventolina</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft2" resname="Bft2">
<source>Light breeze</source>
<target state="signed-off">Brisa débil</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft3" resname="Bft3">
<source>Gentle breeze</source>
<target state="signed-off">Brisa suave</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft4" resname="Bft4">
<source>Moderate breeze</source>
<target state="signed-off">Brisa moderada</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft5" resname="Bft5">
<source>Fresh breeze</source>
<target state="signed-off">Brisa fresca</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft6" resname="Bft6">
<source>Strong breeze</source>
<target state="signed-off">Brisa fuerte</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft7" resname="Bft7">
<source>High wind</source>
<target state="signed-off">Viento fuerte</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft8" resname="Bft8">
<source>Gale</source>
<target state="signed-off">Viento duro</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft9" resname="Bft9">
<source>Strong gale</source>
<target state="signed-off">Viento muy duro</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft10" resname="Bft10">
<source>Storm</source>
<target state="signed-off">Temporal</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft11" resname="Bft11">
<source>Violent storm</source>
<target state="signed-off">Temporal duro</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft12" resname="Bft12">
<source>Hurricane</source>
<target state="signed-off">Huracán</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RelativeScore" resname="RelativeScore">
<source>Relative Score (0 best; 1 worst)</source>
<target state="signed-off">Puntuación relativa (0 mejor; 1 peor)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RelativeScoreInPercent" resname="RelativeScoreInPercent">
<source>Relative Score in %</source>
<target state="signed-off">Puntuación relativa en %</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RelativeScoreInRaceInPercent" resname="RelativeScoreInRaceInPercent">
<source>Relative Score in Race in %</source>
<target state="signed-off">Puntuación relativa en carrera en %</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteRank" resname="AbsoluteRank">
<source>Absolute Rank</source>
<target state="signed-off">Categoría absoluta</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindSpeedInBeaufort" resname="WindSpeedInBeaufort">
<source>Wind Speed in Bft</source>
<target state="signed-off">Velocidad del viento en Bft</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="DistanceAtStart" resname="DistanceAtStart">
<source>Distance to Start at Start</source>
<target state="signed-off">Distancia al inicio en el inicio</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SpeedWhenStarting" resname="SpeedWhenStarting">
<source>Speed at Start</source>
<target state="signed-off">Velocidad al inicio</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SpeedTenSecondsBeforeStart" resname="SpeedTenSecondsBeforeStart">
<source>Speed 10s Before Start</source>
<target state="signed-off">Velocidad 10 s antes del inicio</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RankAtFirstMark" resname="RankAtFirstMark">
<source>Rank at First Mark</source>
<target state="signed-off">Categoría en la primera marca</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfManeuvers" resname="NumberOfManeuvers">
<source>Number of Maneuvers</source>
<target state="signed-off">Número de maniobras</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfTacks" resname="NumberOfTacks">
<source>Number of Tacks</source>
<target state="signed-off">Número de amuras</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfJibes" resname="NumberOfJibes">
<source>Number of Jibes</source>
<target state="signed-off">Número de viradas en redondo</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfPenaltyCircles" resname="NumberOfPenaltyCircles">
<source>Number of Penalty Circles</source>
<target state="signed-off">Número de círculos de sanción</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RankGainsOrLosses" resname="RankGainsOrLosses">
<source>Rank Gains or Losses</source>
<target state="signed-off">Aumentos y pérdidas de categoría</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="DistanceToStarboardSideAtStart" resname="DistanceToStarboardSideAtStart">
<source>Distance to Starboard Side (% of Length)</source>
<target state="signed-off">Distancia a estribor (% de longitud)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfPodiumFinish" resname="NumberOfPodiumFinish">
<source>Number of Podium Finishes</source>
<target state="signed-off">Número de puestos de podio</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfWins" resname="NumberOfWins">
<source>Number of Wins</source>
<target state="signed-off">Número de victorias</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RankGainsOrLossesBetweenFirstMarkAndFinish" resname="RankGainsOrLossesBetweenFirstMarkAndFinish">
<source>Rank Gains or Losses (1st Mark -&gt; Finish)</source>
<target state="signed-off">Aumentos o pérdidas de categoría (1º marca -&gt; Final)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="IsTracked" resname="IsTracked">
<source>Is Tracked</source>
<target state="signed-off">Se le hace el seguimiento</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfCompetitorFixes" resname="NumberOfCompetitorFixes">
<source>Number of Competitor Fixes</source>
<target state="signed-off">Número de puntos del competidor</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfMarkFixes" resname="NumberOfMarkFixes">
<source>Number of Mark Fixes</source>
<target state="signed-off">Número de puntos de la marca</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="ManeuverType" resname="ManeuverType">
<source>Maneuver Type</source>
<target state="signed-off">Tipo de maniobra</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Tack" resname="Tack">
<source>Tack</source>
<target state="signed-off">Amura</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SpeedBefore" resname="SpeedBefore">
<source>Speed Before Maneuver</source>
<target state="signed-off">Velocidad antes de maniobra</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SpeedAfter" resname="SpeedAfter">
<source>Speed After Maneuver</source>
<target state="signed-off">Velocidad después de maniobra</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="DirectionChange" resname="DirectionChange">
<source>Direction Change in Degrees</source>
<target state="signed-off">Cambio de dirección en grados</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteDirectionChange" resname="AbsoluteDirectionChange">
<source>Absolute Direction Change in Degrees (Positive)</source>
<target state="signed-off">Cambio absoluto de dirección en grados (positivo)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="ToSide" resname="ToSide">
<source>To Side (Port / Starboard)</source>
<target state="signed-off">Al lado (babor / estribor)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="ManeuverLoss" resname="ManeuverLoss">
<source>Maneuver Loss</source>
<target state="signed-off">Pérdida en maniobra</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Waypoint" resname="Waypoint">
<source>Waypoint</source>
<target state="signed-off">Punto de ruta</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="PassingSide" resname="PassingSide">
<source>Passing Side</source>
<target state="signed-off">Vía de paso</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="TackAtStart" resname="TackAtStart">
<source>Tack at Start</source>
<target state="signed-off">Amura al inicio</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SpeedTenSecondsAfterStart" resname="SpeedTenSecondsAfterStart">
<source>Speed 10s After Start</source>
<target state="signed-off">Velocidad 10 s después del inicio</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RankThirtySecondsAfterStart" resname="RankThirtySecondsAfterStart">
<source>Rank 30s After Start</source>
<target state="signed-off">Categoría 30 s después del inicio</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindwardDistanceToAdvantageousEndOfLine" resname="WindwardDistanceToAdvantageousEndOfLine">
<source>Windward Distance to Advantageous End of Line</source>
<target state="signed-off">Distancia a barlovento a extremo favorable</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RankAfterHalfOfTheFirstLeg" resname="RankAfterHalfOfTheFirstLeg">
<source>Rank after the half of the first leg</source>
<target state="signed-off">Categoría tras la mitad del primer tramo</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AdvantageousEndOfLine" resname="AdvantageousEndOfLine">
<source>Advantageous End of Line</source>
<target state="signed-off">Extremo favorable</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="TimeSpentInSeconds" resname="TimeSpentInSeconds">
<source>Time Spent in Seconds</source>
<target state="signed-off">Tiempo empleado en segundos</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="MedalRace" resname="MedalRace">
<source>Medal Race</source>
<target state="signed-off">Medal Race</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindSourceType" resname="WindSourceType">
<source>Wind Source Type</source>
<target state="signed-off">Tipo de fuente de viento</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindSourceName" resname="WindSourceName">
<source>Wind Source Name</source>
<target state="signed-off">Nombre de fuente de viento</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="windFrom" resname="windFrom">
<source>True Wind Direction (TWD)</source>
<target state="signed-off">Dirección del viento real (TWD)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="windSpeedKnots" resname="windSpeedKnots">
<source>True Wind Speed (kts) </source>
<target state="signed-off">Velocidad del viento real (nudos) </target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="speedInKnots" resname="speedInKnots">
<source>Speed (kts)</source>
<target state="signed-off">Velocidad (nudos)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="bearing" resname="bearing">
<source>Direction (�T)</source>
<target state="signed-off">Dirección (�T)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindTrack" resname="WindTrack">
<source>Wind Track</source>
<target state="signed-off">Seguimiento del viento</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="timeSpentFoiling" resname="timeSpentFoiling">
<source>Time spent foiling</source>
<target state="signed-off">Tiempo empleado en laminado</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="yaw" resname="yaw">
<source>Yaw</source>
<target state="signed-off">Guiñada</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="pitch" resname="pitch">
<source>Pitch</source>
<target state="signed-off">Paso</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="heel" resname="heel">
<source>Heel</source>
<target state="signed-off">Escora</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="rideHeight" resname="rideHeight">
<source>Ride Height</source>
<target state="signed-off">Altura de circulación</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="rideHeightPort" resname="rideHeightPort">
<source>Ride Height Port Hull</source>
<target state="signed-off">Altura de circulación del casco a babor </target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="rideHeightStarboard" resname="rideHeightStarboard">
<source>Ride Height Starboard Hull</source>
<target state="signed-off">Altura de circulación del casco a estribor</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="IsFoiling" resname="IsFoiling">
<source>Is Foiling</source>
<target state="signed-off">Se está laminando</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="FoilingDuration" resname="FoilingDuration">
<source>Foiling Duration</source>
<target state="signed-off">Duración del laminado</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="FoilingDistance" resname="FoilingDistance">
<source>Distance Foiled</source>
<target state="signed-off">Distancia laminada</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="TakeoffSpeedInKnotsInKnots" resname="TakeoffSpeedInKnotsInKnots">
<source>Takeoff speed in knots</source>
<target state="signed-off">Velocidad de despegue en nudos</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LandingSpeedInKnots" resname="LandingSpeedInKnots">
<source>Landing speed in knots</source>
<target state="signed-off">Velocidad de aterrizaje en nudos</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteTrueWindAngleAtTakeoff" resname="AbsoluteTrueWindAngleAtTakeoff">
<source>Absolute true wind angle (TWA) at takeoff</source>
<target state="signed-off">Ángulo absoluto del viento real (TWA) en despegue </target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteTrueWindAngleAtLanding" resname="AbsoluteTrueWindAngleAtLanding">
<source>Absolute true wind angle (TWA) at landing</source>
<target state="signed-off">Ángulo absoluto del viento real (TWA) en aterrizaje</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindStrengthInBeaufortAtTakeoff" resname="WindStrengthInBeaufortAtTakeoff">
<source>Wind strength in beaufort at takeoff</source>
<target state="signed-off">Fuerza del viento en Beaufort en despegue</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindStrengthInBeaufortAtLanding" resname="WindStrengthInBeaufortAtLanding">
<source>Wind strength in beaufort at landing</source>
<target state="signed-off">Fuerza del viento en Beaufort en aterrizaje</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindAtTakeoff" resname="WindAtTakeoff">
<source>Wind at takeoff</source>
<target state="signed-off">Viento en despegue</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindAtLanding" resname="WindAtLanding">
<source>Wind at landing</source>
<target state="signed-off">Viento en aterrizaje</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="StartsOnLegType" resname="StartsOnLegType">
<source>Type of leg at takeoff</source>
<target state="signed-off">Tipo de tramo en despegue</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="EndsOnLegType" resname="EndsOnLegType">
<source>Type of leg at landing</source>
<target state="signed-off">Tipo de tramo en aterrizaje</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="FoilingSegments" resname="FoilingSegments">
<source>Foiled Segments</source>
<target state="signed-off">Segmentos frustrados</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AverageAbsoluteTrueWindAngle" resname="AverageAbsoluteTrueWindAngle">
<source>Average absolute true wind angle</source>
<target state="signed-off">Promedio del ángulo absoluto de viento real</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteTrueWindAngle" resname="AbsoluteTrueWindAngle">
<source>Absolute true wind angle (TWA)</source>
<target state="signed-off">Ángulo absoluto del viento real (TWA)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Wind" resname="Wind">
<source>Wind</source>
<target state="signed-off">Viento</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="VMG" resname="VMG">
<source>Velocity Made Good</source>
<target state="signed-off">Velocity Made Good</target>
</trans-unit>
</body>
</file>
</xliff>
@@ -0,0 +1,520 @@
<?xml version="1.0" encoding="UTF-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
<file datatype="javapropertyresourcebundle" date="2017-03-03T16:43:54Z" original="/usr/sap/ljs/app/Converter_7519916557605079548/java/com.sap.sailing.datamining/resources/stringmessages/Sailing_StringMessages.properties" source-language="en" target-language="fr">
<header>
<skl>
<internal-file crc="687dae536d957f976a561fc5861eb426" form="base64">H4sIAAAAAAAAAI1XS2/jNhC+81fwskB8KJrs9omCBZy4cdLmYcTGBgv0QssjmbAsGiSd1P31nRmKEu3ETi8UOfNxOJwnNd0ALNSURsHjDJopFLZZ+EsorYPIkxfnXs6ZIEbGB90UMHP6BWrcnQgyUcSDXoOiQdxBNdttQOFX0kRMtalvR4o+8mG7noMT30A7RQOhI43xLftBB2MbXZuwU9lcDAtnm91atV/xBJUOQav2K67s1nkYOtAqTiXNxaXV4arW3iuaSZ6K6xogKB7Fky5A0YAS1hsIJlin+ikL4L1iBnqtaBBT1L5YznSl4kziFG+jF+DmVrsFXdc01ciutWmeIDgDL+CulrhSGczz4afAxPdkp9MSKy/Gk+m1+ecUDBESISjvEh1nP0Az5gCPDi9WH29iGBrZMnAK1Rqa4E/tIyhGXYKKZ9MsPtCPIK1699qtJuhWOuzEDoLJFhct/wR+W4eP7C8jLG55LPvQ+NBx0payh5OiDWwRclrLiMnDaezsdpMHjmRKDsm5FC8UFLlh9m5PgPwinH6oa9FH/Xjj0bgpZroI6MNiPyh6evR+8mDnpu7u/QWJNQ0Omiosb5tL0FusNyHuSHRpGpk44rIM5+pK12uaXag7Uy2D1MbR8nO7nDuAf4EoX9QYY6mGjPSDurdoJB1y4o/q2oFfZpSfFB5vmyoj/axuULx8Rd1o+Ysa65oZvyZs1RIuzpFiXdTxQn01tkY1pO9on9XN1jlToBmwhtVY4V5gWlDpTSvJS3l2jiXYh9/khXzF6AmDffhtMwFXoOzDfWiyT4dQCsdTGzjOeeNw7m29DfCkm5VKC0mr6DBqD2+8xT2DXFWGrl8MwzRoRHTtIljJFIllmCexAz0vsQXRkqI0StoHHLaoKLbvU5Ha7iBFh+HaoL0o4hWtSR5TJJFE7DOPZQpEryKFMqCjdagZ1bIMweuO+6dBF2VcXnfcCWDvCrsr44p6D9YyZMthrceY/f7R3VnvEct6M0laJyOxb8WWLhs7jVkctXQsFYSQZ5/o2DvOqUGvn12Y7fraNMYvc+2YLCM9uw76Or8ELd9qfgnhFaDpPDCkOsAHvHcleXbRukV+93t74kDcei4i+Na49bKddlr0ZYurf6ZQz2kbQ+9ptzoE85mpf0Sn88slLeLzhbytaIihuPdGauOuq2dMHZYBa1wE8Lznj4yDgt4zWOibClS3lpFACTSCCmuO77LwcE+XkCc2y7OJ9YbyeyAwUtD9ambbMJhgzsrv++gYdJcnf/SXp5V41ruNNVgv0kSkLksy2zkLZjulMKT50RRmmxxmcDRUn8CzpXFh93YHR9CXgw1UgV7xKn1yDBcvugm6Arv1fzSLx/LONKASTuZpkkMlYjlLDFVmqiN0yo2uS6wCS+CIps4aSwprEJYglwigbTQvucrU2Hrf1+HocTOzBrRHE26ToRSRJNPIty1V3MNC1/xk5RkX7liY8c2Ll6cQjjWZ1zGKez6/1HM+v9qprV07i49btwXJ7D6+zmbPowFD2GF/NTb4DBi9eLYKfiCFj90hYjKOmOMzmep7JvbvbVmWi9mAtYuPCBYY3w8hGaR9RUZzeDZHGUlip1/VN/0qNiYUSzWhUSwBanWDg3AYlzdAjwL1RLEf5xmZciFnSU6Om22d7+0yZQ/ZV1eG3/qkJdardpqev6Ot458Y1a5lInSANhz78h1fw5hTK7BlOc1smkzbsqRPjXdFZHGnmwWlZ+6FlnYITYWEHElmHzZVjY2kFdzXmUCOJudLTQiKhuGAsjtE5DFB7bH/Q1AdkUeeg71KHBw+exfOW0iuzTEhSZ2TQnJNDs49OOJAYLaXa5J/bNKPMA2U5VgTciGY+8dBSdbBD9Sbv6QhVmqsJe96QLVMqY844H3HfeAvvjzfWXy9H6uvUNsC/82xx2FujK1diP8A9Xa4EWEQAAA=</internal-file>
</skl>
<phase-group>
<phase company-name="SAP AG" date="2017-02-23T16:17:36Z" phase-name="file-creation" process-name="file-creation" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter"/>
</phase-group>
<tool tool-company="SAP AG" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter" tool-name="TEW: Java properties Flexible File Converter" tool-version="1.1.0"/>
</header>
<body>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Speed" resname="Speed">
<source>Speed</source>
<target state="signed-off">Vitesse</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SpeedTenSecondsBefore" resname="SpeedTenSecondsBefore">
<source>Speed 10s before</source>
<target state="signed-off">Vitesse 10 s avant</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="DistanceTraveled" resname="DistanceTraveled">
<source>Distance Traveled</source>
<target state="signed-off">Distance parcourue</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Name" resname="Name">
<source>Name</source>
<target state="signed-off">Nom</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LegType" resname="LegType">
<source>Leg Type</source>
<target state="signed-off">Type de portion de parcours</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SailID" resname="SailID">
<source>Sail Number</source>
<target state="signed-off">Numéro de voile</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Year" resname="Year">
<source>Year</source>
<target state="signed-off">Année</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LegNumber" resname="LegNumber">
<source>Leg Number</source>
<target state="signed-off">N° de portion de parcours</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Nationality" resname="Nationality">
<source>Nationality</source>
<target state="signed-off">Nationalité</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Acronym" resname="Acronym">
<source>Acronym</source>
<target state="signed-off">Acronyme</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Regatta" resname="Regatta">
<source>Regatta</source>
<target state="signed-off">Régate</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="CourseArea" resname="CourseArea">
<source>Course Area</source>
<target state="signed-off">Zone de course</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BoatClass" resname="BoatClass">
<source>Boat Class</source>
<target state="signed-off">Catégorie de bateau</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Fleet" resname="Fleet">
<source>Fleet</source>
<target state="signed-off">Flotte</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Race" resname="Race">
<source>Race</source>
<target state="signed-off">Course</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Competitor" resname="Competitor">
<source>Competitor</source>
<target state="signed-off">Concurrent</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Boat" resname="Boat">
<source>Boat</source>
<target state="signed-off">Bateau</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Team" resname="Team">
<source>Team</source>
<target state="signed-off">Équipe</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SearchTag" resname="SearchTag">
<source>Search Tag</source>
<target state="signed-off">Balise de recherche</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LeaderboardSailingDomainRetrieverChain" resname="LeaderboardSailingDomainRetrieverChain">
<source>Leaderboards</source>
<target state="signed-off">Palmarès</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RaceSailingDomainRetrieverChain" resname="RaceSailingDomainRetrieverChain">
<source>Races</source>
<target state="signed-off">Courses</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LegSailingDomainRetrieverChain" resname="LegSailingDomainRetrieverChain">
<source>Legs</source>
<target state="signed-off">Portions de parcours</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="GPSFixSailingDomainRetrieverChain" resname="GPSFixSailingDomainRetrieverChain">
<source>GPS Fixes</source>
<target state="signed-off">Positions GPS</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BravoFixSailingDomainRetrieverChain" resname="BravoFixSailingDomainRetrieverChain">
<source>Bravo Fixes</source>
<target state="signed-off">Positions Bravo</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BravoFixTrackSailingDomainRetrieverChain" resname="BravoFixTrackSailingDomainRetrieverChain">
<source>Bravo Tracks</source>
<target state="signed-off">Suivis Bravo</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="FoilingSegmentsSailingDomainRetrieverChain" resname="FoilingSegmentsSailingDomainRetrieverChain">
<source>Foiled Segments</source>
<target state="signed-off">Tronçons en planing</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindFixSailingDomainRetrieverChain" resname="WindFixSailingDomainRetrieverChain">
<source>Wind Fixes</source>
<target state="signed-off">Points vent</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="MarkPassingSailingDomainRetrieverChain" resname="MarkPassingSailingDomainRetrieverChain">
<source>Mark Passings</source>
<target state="signed-off">Passages des marques</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RaceResultSailingDomainRetrieverChain" resname="RaceResultSailingDomainRetrieverChain">
<source>Race Results</source>
<target state="signed-off">Résultats de course</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RaceOfCompetitorSailingDomainRetrieverChain" resname="RaceOfCompetitorSailingDomainRetrieverChain">
<source>Races of Competitors</source>
<target state="signed-off">Courses des concurrents</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="ManeuverSailingDomainRetrieverChain" resname="ManeuverSailingDomainRetrieverChain">
<source>Maneuver</source>
<target state="signed-off">Manœuvre</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LeaderboardGroup" resname="LeaderboardGroup">
<source>Leaderboard Group</source>
<target state="signed-off">Groupe de palmarès</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Leaderboard" resname="Leaderboard">
<source>Leaderboard</source>
<target state="signed-off">Palmarès</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Leg" resname="Leg">
<source>Leg</source>
<target state="signed-off">Portion de parcours</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="MarkPassing" resname="MarkPassing">
<source>Mark Passing</source>
<target state="signed-off">Passage de marque</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LegOfCompetitor" resname="LegOfCompetitor">
<source>Leg of competitor</source>
<target state="signed-off">Portion de parcours de concurrent</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="GpsFix" resname="GpsFix">
<source>GPS Fix</source>
<target state="signed-off">Position GPS</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BravoFix" resname="BravoFix">
<source>Bravo Fix</source>
<target state="signed-off">Position Bravo</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BravoFixTrack" resname="BravoFixTrack">
<source>Bravo Fix Track</source>
<target state="signed-off">Suivi de positions Bravo</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindFix" resname="WindFix">
<source>Wind Fix</source>
<target state="signed-off">Point vent</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Maneuver" resname="Maneuver">
<source>Maneuver</source>
<target state="signed-off">Manœuvre</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindStrengthInBeaufort" resname="WindStrengthInBeaufort">
<source>Wind Strength in Beaufort</source>
<target state="signed-off">Force du vent sur l’échelle de Beaufort</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft0" resname="Bft0">
<source>Calm</source>
<target state="signed-off">Calme</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft1" resname="Bft1">
<source>Light air</source>
<target state="signed-off">Très légère brise</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft2" resname="Bft2">
<source>Light breeze</source>
<target state="signed-off">Légère brise</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft3" resname="Bft3">
<source>Gentle breeze</source>
<target state="signed-off">Petite brise</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft4" resname="Bft4">
<source>Moderate breeze</source>
<target state="signed-off">Jolie brise</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft5" resname="Bft5">
<source>Fresh breeze</source>
<target state="signed-off">Bonne brise</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft6" resname="Bft6">
<source>Strong breeze</source>
<target state="signed-off">Vent frais</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft7" resname="Bft7">
<source>High wind</source>
<target state="signed-off">Grand frais</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft8" resname="Bft8">
<source>Gale</source>
<target state="signed-off">Coup de vent</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft9" resname="Bft9">
<source>Strong gale</source>
<target state="signed-off">Fort coup de vent</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft10" resname="Bft10">
<source>Storm</source>
<target state="signed-off">Tempête</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft11" resname="Bft11">
<source>Violent storm</source>
<target state="signed-off">Violente tempête</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft12" resname="Bft12">
<source>Hurricane</source>
<target state="signed-off">Ouragan</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RelativeScore" resname="RelativeScore">
<source>Relative Score (0 best; 1 worst)</source>
<target state="signed-off">Résultat relatif (0 = meilleur, 1 = pire)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RelativeScoreInPercent" resname="RelativeScoreInPercent">
<source>Relative Score in %</source>
<target state="signed-off">Résultat relatif en %</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RelativeScoreInRaceInPercent" resname="RelativeScoreInRaceInPercent">
<source>Relative Score in Race in %</source>
<target state="signed-off">Résultat relatif dans la course en %</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteRank" resname="AbsoluteRank">
<source>Absolute Rank</source>
<target state="signed-off">Place réelle</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindSpeedInBeaufort" resname="WindSpeedInBeaufort">
<source>Wind Speed in Bft</source>
<target state="signed-off">Vitesse du vent en Bft</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="DistanceAtStart" resname="DistanceAtStart">
<source>Distance to Start at Start</source>
<target state="signed-off">Distance du point de départ au départ</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SpeedWhenStarting" resname="SpeedWhenStarting">
<source>Speed at Start</source>
<target state="signed-off">Vitesse au départ</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SpeedTenSecondsBeforeStart" resname="SpeedTenSecondsBeforeStart">
<source>Speed 10s Before Start</source>
<target state="signed-off">Vitesse 10 s avant le départ</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RankAtFirstMark" resname="RankAtFirstMark">
<source>Rank at First Mark</source>
<target state="signed-off">Place à la première marque</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfManeuvers" resname="NumberOfManeuvers">
<source>Number of Maneuvers</source>
<target state="signed-off">Nombre de manœuvres</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfTacks" resname="NumberOfTacks">
<source>Number of Tacks</source>
<target state="signed-off">Nombre de bords longs</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfJibes" resname="NumberOfJibes">
<source>Number of Jibes</source>
<target state="signed-off">Nombre de changements d'amure</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfPenaltyCircles" resname="NumberOfPenaltyCircles">
<source>Number of Penalty Circles</source>
<target state="signed-off">Nombre de tours de pénalité</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RankGainsOrLosses" resname="RankGainsOrLosses">
<source>Rank Gains or Losses</source>
<target state="signed-off">Pertes ou gains de place</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="DistanceToStarboardSideAtStart" resname="DistanceToStarboardSideAtStart">
<source>Distance to Starboard Side (% of Length)</source>
<target state="signed-off">Distance à tribord (% de la longueur)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfPodiumFinish" resname="NumberOfPodiumFinish">
<source>Number of Podium Finishes</source>
<target state="signed-off">Nombre de podiums</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfWins" resname="NumberOfWins">
<source>Number of Wins</source>
<target state="signed-off">Nombre de victoires</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RankGainsOrLossesBetweenFirstMarkAndFinish" resname="RankGainsOrLossesBetweenFirstMarkAndFinish">
<source>Rank Gains or Losses (1st Mark -&gt; Finish)</source>
<target state="signed-off">Pertes ou gains de place (1ère marque -&gt; Arrivée)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="IsTracked" resname="IsTracked">
<source>Is Tracked</source>
<target state="signed-off">Est suivi</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfCompetitorFixes" resname="NumberOfCompetitorFixes">
<source>Number of Competitor Fixes</source>
<target state="signed-off">Nombre de positions de concurrents</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfMarkFixes" resname="NumberOfMarkFixes">
<source>Number of Mark Fixes</source>
<target state="signed-off">Nombre de positions de marques</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="ManeuverType" resname="ManeuverType">
<source>Maneuver Type</source>
<target state="signed-off">Type de manœuvre</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Tack" resname="Tack">
<source>Tack</source>
<target state="translated">Virement</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SpeedBefore" resname="SpeedBefore">
<source>Speed Before Maneuver</source>
<target state="signed-off">Vitesse avant la manœuvre</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SpeedAfter" resname="SpeedAfter">
<source>Speed After Maneuver</source>
<target state="signed-off">Vitesse après la manœuvre</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="DirectionChange" resname="DirectionChange">
<source>Direction Change in Degrees</source>
<target state="signed-off">Changement de cap en degrés</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteDirectionChange" resname="AbsoluteDirectionChange">
<source>Absolute Direction Change in Degrees (Positive)</source>
<target state="signed-off">Changement de cap absolu en degrés (positif)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="ToSide" resname="ToSide">
<source>To Side (Port / Starboard)</source>
<target state="signed-off">À bâbord/À tribord</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="ManeuverLoss" resname="ManeuverLoss">
<source>Maneuver Loss</source>
<target state="signed-off">Perte suite à manœuvre</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Waypoint" resname="Waypoint">
<source>Waypoint</source>
<target state="signed-off">Point de cheminement</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="PassingSide" resname="PassingSide">
<source>Passing Side</source>
<target state="signed-off">Côté de passage</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="TackAtStart" resname="TackAtStart">
<source>Tack at Start</source>
<target state="translated">Virement au départ</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SpeedTenSecondsAfterStart" resname="SpeedTenSecondsAfterStart">
<source>Speed 10s After Start</source>
<target state="signed-off">Vitesse 10 s après le départ</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RankThirtySecondsAfterStart" resname="RankThirtySecondsAfterStart">
<source>Rank 30s After Start</source>
<target state="signed-off">Place 30 s après le départ</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindwardDistanceToAdvantageousEndOfLine" resname="WindwardDistanceToAdvantageousEndOfLine">
<source>Windward Distance to Advantageous End of Line</source>
<target state="signed-off">Distance au vent jusqu’au côté avantageux de la ligne</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RankAfterHalfOfTheFirstLeg" resname="RankAfterHalfOfTheFirstLeg">
<source>Rank after the half of the first leg</source>
<target state="signed-off">Place après la première moitié de la première portion de parcours</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AdvantageousEndOfLine" resname="AdvantageousEndOfLine">
<source>Advantageous End of Line</source>
<target state="signed-off">Côté avantageux de la ligne</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="TimeSpentInSeconds" resname="TimeSpentInSeconds">
<source>Time Spent in Seconds</source>
<target state="signed-off">Temps mis en secondes</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="MedalRace" resname="MedalRace">
<source>Medal Race</source>
<target state="signed-off">Course médaillée</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindSourceType" resname="WindSourceType">
<source>Wind Source Type</source>
<target state="signed-off">Type de source de vent</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindSourceName" resname="WindSourceName">
<source>Wind Source Name</source>
<target state="signed-off">Nom de la source du vent</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="windFrom" resname="windFrom">
<source>True Wind Direction (TWD)</source>
<target state="signed-off">Direction réelle du vent (TWD)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="windSpeedKnots" resname="windSpeedKnots">
<source>True Wind Speed (kts) </source>
<target state="translated">Vitesse réelle du vent (en nds) </target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="speedInKnots" resname="speedInKnots">
<source>Speed (kts)</source>
<target state="translated">Vitesse (nds)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="bearing" resname="bearing">
<source>Direction (�T)</source>
<target state="signed-off">Direction (�T)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindTrack" resname="WindTrack">
<source>Wind Track</source>
<target state="signed-off">Suivi du vent</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="timeSpentFoiling" resname="timeSpentFoiling">
<source>Time spent foiling</source>
<target state="signed-off">Temps passé en planing</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="yaw" resname="yaw">
<source>Yaw</source>
<target state="signed-off">Dévier</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="pitch" resname="pitch">
<source>Pitch</source>
<target state="signed-off">Embarder</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="heel" resname="heel">
<source>Heel</source>
<target state="signed-off">Talonner</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="rideHeight" resname="rideHeight">
<source>Ride Height</source>
<target state="signed-off">Hauteur pendant le planing</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="rideHeightPort" resname="rideHeightPort">
<source>Ride Height Port Hull</source>
<target state="signed-off">Hauteur pendant le planing - coque bâbord</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="rideHeightStarboard" resname="rideHeightStarboard">
<source>Ride Height Starboard Hull</source>
<target state="signed-off">Hauteur pendant le planing - coque tribord</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="IsFoiling" resname="IsFoiling">
<source>Is Foiling</source>
<target state="signed-off">Planing en cours</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="FoilingDuration" resname="FoilingDuration">
<source>Foiling Duration</source>
<target state="signed-off">Durée du planing</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="FoilingDistance" resname="FoilingDistance">
<source>Distance Foiled</source>
<target state="signed-off">Distance parcourue en planing</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="TakeoffSpeedInKnotsInKnots" resname="TakeoffSpeedInKnotsInKnots">
<source>Takeoff speed in knots</source>
<target state="signed-off">Vitesse porteuse au déjaugeage en nœuds</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LandingSpeedInKnots" resname="LandingSpeedInKnots">
<source>Landing speed in knots</source>
<target state="signed-off">Vitesse à la fin du planing en nœuds</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteTrueWindAngleAtTakeoff" resname="AbsoluteTrueWindAngleAtTakeoff">
<source>Absolute true wind angle (TWA) at takeoff</source>
<target state="signed-off">Angle du vent apparent réel au déjaugeage (TWA)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteTrueWindAngleAtLanding" resname="AbsoluteTrueWindAngleAtLanding">
<source>Absolute true wind angle (TWA) at landing</source>
<target state="signed-off">Angle du vent apparent réel à la fin du planing (TWA)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindStrengthInBeaufortAtTakeoff" resname="WindStrengthInBeaufortAtTakeoff">
<source>Wind strength in beaufort at takeoff</source>
<target state="signed-off">Force du vent en Beaufort au déjaugeage</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindStrengthInBeaufortAtLanding" resname="WindStrengthInBeaufortAtLanding">
<source>Wind strength in beaufort at landing</source>
<target state="signed-off">Force du vent en Beaufort à la fin du planing</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindAtTakeoff" resname="WindAtTakeoff">
<source>Wind at takeoff</source>
<target state="signed-off">Vent au déjaugeage</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindAtLanding" resname="WindAtLanding">
<source>Wind at landing</source>
<target state="signed-off">Vent à la fin du planing</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="StartsOnLegType" resname="StartsOnLegType">
<source>Type of leg at takeoff</source>
<target state="signed-off">Type de portion de parcours au déjaugeage</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="EndsOnLegType" resname="EndsOnLegType">
<source>Type of leg at landing</source>
<target state="signed-off">Type de portion de parcours à la fin du planing</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="FoilingSegments" resname="FoilingSegments">
<source>Foiled Segments</source>
<target state="signed-off">Tronçons en planing</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AverageAbsoluteTrueWindAngle" resname="AverageAbsoluteTrueWindAngle">
<source>Average absolute true wind angle</source>
<target state="signed-off">Angle du vent apparent réel moyen</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteTrueWindAngle" resname="AbsoluteTrueWindAngle">
<source>Absolute true wind angle (TWA)</source>
<target state="signed-off">Angle du vent apparent réel (TWA)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Wind" resname="Wind">
<source>Wind</source>
<target state="signed-off">Vent</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="VMG" resname="VMG">
<source>Velocity Made Good</source>
<target state="signed-off">Compromis Cap/Vitesse (VMG)</target>
</trans-unit>
</body>
</file>
</xliff>
@@ -1,23 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
<file datatype="javapropertyresourcebundle" date="2017-01-12T14:29:56Z" original="/usr/sap/ljs/app/Converter_2566045106627533633/java/com.sap.sailing.datamining/resources/stringmessages/Sailing_StringMessages.properties" source-language="en" target-language="ja">
<file datatype="javapropertyresourcebundle" date="2017-03-03T15:28:33Z" original="/usr/sap/ljs/app/Converter_7519916557605079548/java/com.sap.sailing.datamining/resources/stringmessages/Sailing_StringMessages.properties" source-language="en" target-language="ja">
<header>
<skl>
<internal-file crc="f38aaa3e2ebfcee22c5187ca5b77bc00" form="base64">H4sIAAAAAAAAAIVWS28jKRC+8yu4jJQcRopn9qkVKznJ2vHKeci2Ntoj7i53o7TBApys59dvVdEP7Ew8F7rq4wOKetHLHUCpljQKHldgl1A4W4Zr2DgPaU6OroJcMyBuTYjaFrDy+hUaXN0BskPEg96CokHMoVoddqDwK0kQS22a2a2ij3zYb9fgxb+gvaKB2Aljfjv9oKNxVjcmHlQmi3HhnT1sVfsVC6h0jFq1X3Hj9j7A2INWSZQki2un402jQ1AkSRbFpAGIikex0AUoGnCH7Q6iic6rQeQNeK1Ygd4qGjLmEu9R1CtdZUtkAiWieEVdgl877UvygbHVrdtqYxcQvYFX8Dc1aiqjBbboHJnmAznv/I5VENOn5cT8d46GjM9Iwf3utX95Qucg89wCosmWl0xdQNg38UcGy0RLSx43mQd/dFPpNnKgk6EW9kg5b2Xi5P6ferff5Z6WjOSUfJYcTF7MHXN0eyLkF+EkRluLIXemu4DO7ZzcWz6Y92xsuYwebBXrmb0Gvceai4pg2eHSWNnNiOtNvFI3utmSNFJzU9VRauNJ/dKqaw/wDQj5qqZgYwMZ9JO6d3hFHXPwZzXxEOoM+UXh8c5WGfSrusPt5RvaRupvaqobnvi941YtMLpCxPlk40j9Y1yDZsjQY1/U3d57U6AbsI4brPJXWBbUfjpNsiovrrANhfiHHMk3jH28PKbP7BP4Avc+XYcu+3RKpWQ6t4CzlBeO18E1+wgLbV9Up0jSUsCoRb6LFvdNCtUm9j1zHJdRI6NvmdFJRiS2IhZSF36usQ2TSjmWdjomnLbptO3QqxPariBDx3Fi0F+Ur4p02o8RSZBIvfZx0yViUAmh/O2xnrXSxUvOYL2f/dtgiLJZ1vvZJ8D+HQ83xhfNEa2dkO0MWz3F2g2Pfu5CQC7bzZDEpprA4TlydNnUWE35oadToRNDXnyiY+dcU5eDfa40++3EWBPq3DqGZcKz62Cs80uQ+t7ya4hvALaPwNiW7QHfu5K8GLVhkZ//bE+8FLOAz2vxgu/tLMhW7K0Ymg737syg7BVKbX2ItH85JfOZXfdPQefXu1PSE07RVjSkVDz6T2jzru9njI43EXtcIrA8zN8aDwW96dimbQWq12UCqIBuocKeM5hEXhpMIk0868POGaziThDdy4WBVq3MUWfru+Qg+cPCYktP6yqZP5TVqjY+Ht6v4Lh+PVlAfeEN029I2XH5qm3UFbh9+MuWj5u5saA6nsyTN6dK5HLuGuqXVN10yp1uNlibNXCe0WuVCp0tiDXIGgm0jOQN136Dz9n3bfjwuJXZAvrDxlnnKEWQZIzC1aLiHkrd8M8US9xOxf+VN8i0cAoAAA==</internal-file>
<internal-file crc="687dae536d957f976a561fc5861eb426" form="base64">H4sIAAAAAAAAAI1XS2/jNhC+81fwskB8KJrs9omCBZy4cdLmYcTGBgv0QssjmbAsGiSd1P31nRmKEu3ETi8UOfNxOJwnNd0ALNSURsHjDJopFLZZ+EsorYPIkxfnXs6ZIEbGB90UMHP6BWrcnQgyUcSDXoOiQdxBNdttQOFX0kRMtalvR4o+8mG7noMT30A7RQOhI43xLftBB2MbXZuwU9lcDAtnm91atV/xBJUOQav2K67s1nkYOtAqTiXNxaXV4arW3iuaSZ6K6xogKB7Fky5A0YAS1hsIJlin+ikL4L1iBnqtaBBT1L5YznSl4kziFG+jF+DmVrsFXdc01ciutWmeIDgDL+CulrhSGczz4afAxPdkp9MSKy/Gk+m1+ecUDBESISjvEh1nP0Az5gCPDi9WH29iGBrZMnAK1Rqa4E/tIyhGXYKKZ9MsPtCPIK1699qtJuhWOuzEDoLJFhct/wR+W4eP7C8jLG55LPvQ+NBx0payh5OiDWwRclrLiMnDaezsdpMHjmRKDsm5FC8UFLlh9m5PgPwinH6oa9FH/Xjj0bgpZroI6MNiPyh6evR+8mDnpu7u/QWJNQ0Omiosb5tL0FusNyHuSHRpGpk44rIM5+pK12uaXag7Uy2D1MbR8nO7nDuAf4EoX9QYY6mGjPSDurdoJB1y4o/q2oFfZpSfFB5vmyoj/axuULx8Rd1o+Ysa65oZvyZs1RIuzpFiXdTxQn01tkY1pO9on9XN1jlToBmwhtVY4V5gWlDpTSvJS3l2jiXYh9/khXzF6AmDffhtMwFXoOzDfWiyT4dQCsdTGzjOeeNw7m29DfCkm5VKC0mr6DBqD2+8xT2DXFWGrl8MwzRoRHTtIljJFIllmCexAz0vsQXRkqI0StoHHLaoKLbvU5Ha7iBFh+HaoL0o4hWtSR5TJJFE7DOPZQpEryKFMqCjdagZ1bIMweuO+6dBF2VcXnfcCWDvCrsr44p6D9YyZMthrceY/f7R3VnvEct6M0laJyOxb8WWLhs7jVkctXQsFYSQZ5/o2DvOqUGvn12Y7fraNMYvc+2YLCM9uw76Or8ELd9qfgnhFaDpPDCkOsAHvHcleXbRukV+93t74kDcei4i+Na49bKddlr0ZYurf6ZQz2kbQ+9ptzoE85mpf0Sn88slLeLzhbytaIihuPdGauOuq2dMHZYBa1wE8Lznj4yDgt4zWOibClS3lpFACTSCCmuO77LwcE+XkCc2y7OJ9YbyeyAwUtD9ambbMJhgzsrv++gYdJcnf/SXp5V41ruNNVgv0kSkLksy2zkLZjulMKT50RRmmxxmcDRUn8CzpXFh93YHR9CXgw1UgV7xKn1yDBcvugm6Arv1fzSLx/LONKASTuZpkkMlYjlLDFVmqiN0yo2uS6wCS+CIps4aSwprEJYglwigbTQvucrU2Hrf1+HocTOzBrRHE26ToRSRJNPIty1V3MNC1/xk5RkX7liY8c2Ll6cQjjWZ1zGKez6/1HM+v9qprV07i49btwXJ7D6+zmbPowFD2GF/NTb4DBi9eLYKfiCFj90hYjKOmOMzmep7JvbvbVmWi9mAtYuPCBYY3w8hGaR9RUZzeDZHGUlip1/VN/0qNiYUSzWhUSwBanWDg3AYlzdAjwL1RLEf5xmZciFnSU6Om22d7+0yZQ/ZV1eG3/qkJdardpqev6Ot458Y1a5lInSANhz78h1fw5hTK7BlOc1smkzbsqRPjXdFZHGnmwWlZ+6FlnYITYWEHElmHzZVjY2kFdzXmUCOJudLTQiKhuGAsjtE5DFB7bH/Q1AdkUeeg71KHBw+exfOW0iuzTEhSZ2TQnJNDs49OOJAYLaXa5J/bNKPMA2U5VgTciGY+8dBSdbBD9Sbv6QhVmqsJe96QLVMqY844H3HfeAvvjzfWXy9H6uvUNsC/82xx2FujK1diP8A9Xa4EWEQAAA=</internal-file>
</skl>
<phase-group>
<phase company-name="SAP AG" date="2016-11-04T21:01:36Z" phase-name="file-creation" process-name="file-creation" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter"/>
<phase company-name="SAP AG" date="2017-02-23T16:17:36Z" phase-name="file-creation" process-name="file-creation" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter"/>
</phase-group>
<tool tool-company="SAP AG" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter" tool-name="TEW: Javascript .properties Flexible File Converter" tool-version="1.1.0"/>
<tool tool-company="SAP AG" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter" tool-name="TEW: Java properties Flexible File Converter" tool-version="1.1.0"/>
</header>
<body>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Speed" resname="Speed">
<source>Speed</source>
<target state="translated">速力</target>
<target state="signed-off">速力</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SpeedTenSecondsBefore" resname="SpeedTenSecondsBefore">
<source>Speed 10s before</source>
<target state="translated">10 秒前の艇速</target>
<target state="signed-off">10 秒前の艇速</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="DistanceTraveled" resname="DistanceTraveled">
<source>Distance Traveled</source>
@@ -83,9 +83,9 @@
<source>Team</source>
<target state="signed-off">チーム</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="CompetitorSearchTag" resname="CompetitorSearchTag">
<source>Competitor Search Tag</source>
<target>競技者検索タグ</target>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SearchTag" resname="SearchTag">
<source>Search Tag</source>
<target>検索タグ</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LeaderboardSailingDomainRetrieverChain" resname="LeaderboardSailingDomainRetrieverChain">
<source>Leaderboards</source>
@@ -100,9 +100,25 @@
<target state="signed-off">レグ</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="GPSFixSailingDomainRetrieverChain" resname="GPSFixSailingDomainRetrieverChain">
<source>GPS-Fixes</source>
<source>GPS Fixes</source>
<target state="signed-off">GPS フィックス</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BravoFixSailingDomainRetrieverChain" resname="BravoFixSailingDomainRetrieverChain">
<source>Bravo Fixes</source>
<target>Bravo フィックス</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BravoFixTrackSailingDomainRetrieverChain" resname="BravoFixTrackSailingDomainRetrieverChain">
<source>Bravo Tracks</source>
<target>Bravo トラック</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="FoilingSegmentsSailingDomainRetrieverChain" resname="FoilingSegmentsSailingDomainRetrieverChain">
<source>Foiled Segments</source>
<target>フォイリングしたセグメント</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindFixSailingDomainRetrieverChain" resname="WindFixSailingDomainRetrieverChain">
<source>Wind Fixes</source>
<target state="signed-off">風フィックス</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="MarkPassingSailingDomainRetrieverChain" resname="MarkPassingSailingDomainRetrieverChain">
<source>Mark Passings</source>
<target state="signed-off">マーク通過</target>
@@ -117,7 +133,7 @@
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="ManeuverSailingDomainRetrieverChain" resname="ManeuverSailingDomainRetrieverChain">
<source>Maneuver</source>
<target state="translated">マニューバー</target>
<target state="signed-off">マニューバー</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LeaderboardGroup" resname="LeaderboardGroup">
<source>Leaderboard Group</source>
@@ -140,12 +156,24 @@
<target state="signed-off">競技者のレグ</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="GpsFix" resname="GpsFix">
<source>GPS-Fix</source>
<source>GPS Fix</source>
<target state="signed-off">GPS フィックス</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BravoFix" resname="BravoFix">
<source>Bravo Fix</source>
<target>Bravo フィックス</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BravoFixTrack" resname="BravoFixTrack">
<source>Bravo Fix Track</source>
<target>Bravo フィックス/トラック</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindFix" resname="WindFix">
<source>Wind Fix</source>
<target state="signed-off">風フィックス</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Maneuver" resname="Maneuver">
<source>Maneuver</source>
<target state="translated">マニューバー</target>
<target state="signed-off">マニューバー</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindStrengthInBeaufort" resname="WindStrengthInBeaufort">
<source>Wind Strength in Beaufort</source>
@@ -205,35 +233,35 @@
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RelativeScore" resname="RelativeScore">
<source>Relative Score (0 best; 1 worst)</source>
<target>相対スコア (0 が最高、1 が最低)</target>
<target state="signed-off">相対スコア (0 が最高、1 が最低)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RelativeScoreInPercent" resname="RelativeScoreInPercent">
<source>Relative Score in %</source>
<target>相対スコア (%)</target>
<target state="signed-off">相対スコア (%)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RelativeScoreInRaceInPercent" resname="RelativeScoreInRaceInPercent">
<source>Relative Score in Race in %</source>
<target>レース中の相対スコア (%)</target>
<target state="signed-off">レース中の相対スコア (%)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteRank" resname="AbsoluteRank">
<source>Absolute Rank</source>
<target>絶対順位</target>
<target state="signed-off">絶対順位</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindSpeedInBeaufort" resname="WindSpeedInBeaufort">
<source>Wind Speed in Bft</source>
<target state="translated">風速 (Bft)</target>
<target state="signed-off">風速 (Bft)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="DistanceAtStart" resname="DistanceAtStart">
<source>Distance to Start at Start</source>
<target state="translated">スタート時のスタートラインまでの距離</target>
<target state="signed-off">スタート時のスタートラインまでの距離</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SpeedWhenStarting" resname="SpeedWhenStarting">
<source>Speed at Start</source>
<target state="translated">スタート時の艇速</target>
<target state="signed-off">スタート時の艇速</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SpeedTenSecondsBeforeStart" resname="SpeedTenSecondsBeforeStart">
<source>Speed 10s Before Start</source>
<target state="translated">スタート 10 秒前の艇速</target>
<target state="signed-off">スタート 10 秒前の艇速</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RankAtFirstMark" resname="RankAtFirstMark">
<source>Rank at First Mark</source>
@@ -289,67 +317,203 @@
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="ManeuverType" resname="ManeuverType">
<source>Maneuver Type</source>
<target>マニューバータイプ</target>
<target state="signed-off">マニューバータイプ</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Tack" resname="Tack">
<source>Tack</source>
<target state="translated">タック</target>
<target state="signed-off">タック</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SpeedBefore" resname="SpeedBefore">
<source>Speed Before Maneuver</source>
<target>マニューバー前の艇速</target>
<target state="signed-off">マニューバー前の艇速</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SpeedAfter" resname="SpeedAfter">
<source>Speed After Maneuver</source>
<target>マニューバー後の艇速</target>
<target state="signed-off">マニューバー後の艇速</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="DirectionChange" resname="DirectionChange">
<source>Direction Change in Degrees</source>
<target>方向転換 (度)</target>
<target state="signed-off">方向転換 (度)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteDirectionChange" resname="AbsoluteDirectionChange">
<source>Absolute Direction Change in Degrees (Positive)</source>
<target state="signed-off">方向転換 (度) の絶対値</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="ToSide" resname="ToSide">
<source>To Side (Port / Starboard)</source>
<target state="signed-off">方向転換する側 (ポート/スターボード)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="ManeuverLoss" resname="ManeuverLoss">
<source>Maneuver Loss</source>
<target>マニューバーロス</target>
<target state="signed-off">マニューバーロス</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Waypoint" resname="Waypoint">
<source>Waypoint</source>
<target state="translated">変針点</target>
<target state="signed-off">変針点</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="PassingSide" resname="PassingSide">
<source>Passing Side</source>
<target>通過サイド</target>
<target state="signed-off">通過サイド</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="TackAtStart" resname="TackAtStart">
<source>Tack at Start</source>
<target>スタート時のタック</target>
<target state="signed-off">スタート時のタック</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SpeedTenSecondsAfterStart" resname="SpeedTenSecondsAfterStart">
<source>Speed 10s After Start</source>
<target>スタート 10 秒後の艇速</target>
<target state="signed-off">スタート 10 秒後の艇速</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RankThirtySecondsAfterStart" resname="RankThirtySecondsAfterStart">
<source>Rank 30s After Start</source>
<target>スタート 30 秒後の順位</target>
<target state="signed-off">スタート 30 秒後の順位</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindwardDistanceToAdvantageousEndOfLine" resname="WindwardDistanceToAdvantageousEndOfLine">
<source>Windward Distance to Advantageous End of Line</source>
<target>ラインの有利な端までの風上距離</target>
<target state="signed-off">ラインの有利な端までの風上距離</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RankAfterHalfOfTheFirstLeg" resname="RankAfterHalfOfTheFirstLeg">
<source>Rank after the half of the first leg</source>
<target>第一レグ中間点の順位</target>
<target state="signed-off">第一レグ中間点の順位</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AdvantageousEndOfLine" resname="AdvantageousEndOfLine">
<source>Advantageous End of Line</source>
<target>ラインの有利な端</target>
<target state="signed-off">ラインの有利な端</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="TimeSpentInSeconds" resname="TimeSpentInSeconds">
<source>Time Spent in Seconds</source>
<target>所要時間 (秒)</target>
<target state="signed-off">所要時間 (秒)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="MedalRace" resname="MedalRace">
<source>Medal Race</source>
<target state="translated">メダルレース</target>
<target state="signed-off">メダルレース</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindSourceType" resname="WindSourceType">
<source>Wind Source Type</source>
<target state="signed-off">風源タイプ</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindSourceName" resname="WindSourceName">
<source>Wind Source Name</source>
<target state="signed-off">風源名</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="windFrom" resname="windFrom">
<source>True Wind Direction (TWD)</source>
<target state="signed-off">真風向 (TWD)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="windSpeedKnots" resname="windSpeedKnots">
<source>True Wind Speed (kts) </source>
<target state="signed-off">真風速 (kt) </target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="speedInKnots" resname="speedInKnots">
<source>Speed (kts)</source>
<target state="signed-off">速度 (kt)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="bearing" resname="bearing">
<source>Direction (�T)</source>
<target state="translated">方向 (�T)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindTrack" resname="WindTrack">
<source>Wind Track</source>
<target state="signed-off">風追跡</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="timeSpentFoiling" resname="timeSpentFoiling">
<source>Time spent foiling</source>
<target>フォイリング時間</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="yaw" resname="yaw">
<source>Yaw</source>
<target>ヨー</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="pitch" resname="pitch">
<source>Pitch</source>
<target>ピッチング</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="heel" resname="heel">
<source>Heel</source>
<target>ヒール</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="rideHeight" resname="rideHeight">
<source>Ride Height</source>
<target>浮上高さ</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="rideHeightPort" resname="rideHeightPort">
<source>Ride Height Port Hull</source>
<target>左舷艇体浮上高さ</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="rideHeightStarboard" resname="rideHeightStarboard">
<source>Ride Height Starboard Hull</source>
<target>右舷艇体浮上高さ</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="IsFoiling" resname="IsFoiling">
<source>Is Foiling</source>
<target>フォイリング中</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="FoilingDuration" resname="FoilingDuration">
<source>Foiling Duration</source>
<target>フォイリング持続時間</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="FoilingDistance" resname="FoilingDistance">
<source>Distance Foiled</source>
<target>フォイリング距離</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="TakeoffSpeedInKnotsInKnots" resname="TakeoffSpeedInKnotsInKnots">
<source>Takeoff speed in knots</source>
<target>離水速度 (kt)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LandingSpeedInKnots" resname="LandingSpeedInKnots">
<source>Landing speed in knots</source>
<target>着水速度 (kt)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteTrueWindAngleAtTakeoff" resname="AbsoluteTrueWindAngleAtTakeoff">
<source>Absolute true wind angle (TWA) at takeoff</source>
<target>離水時の絶対真風角度 (TWA)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteTrueWindAngleAtLanding" resname="AbsoluteTrueWindAngleAtLanding">
<source>Absolute true wind angle (TWA) at landing</source>
<target>着水時の絶対真風角度 (TWA)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindStrengthInBeaufortAtTakeoff" resname="WindStrengthInBeaufortAtTakeoff">
<source>Wind strength in beaufort at takeoff</source>
<target>離水時のビューフォート風力</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindStrengthInBeaufortAtLanding" resname="WindStrengthInBeaufortAtLanding">
<source>Wind strength in beaufort at landing</source>
<target>着水時のビューフォート風力</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindAtTakeoff" resname="WindAtTakeoff">
<source>Wind at takeoff</source>
<target>離水時の風</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindAtLanding" resname="WindAtLanding">
<source>Wind at landing</source>
<target>着水時の風</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="StartsOnLegType" resname="StartsOnLegType">
<source>Type of leg at takeoff</source>
<target>離水時のレグのタイプ</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="EndsOnLegType" resname="EndsOnLegType">
<source>Type of leg at landing</source>
<target>着水時のレグのタイプ</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="FoilingSegments" resname="FoilingSegments">
<source>Foiled Segments</source>
<target>フォイリングしたセグメント</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AverageAbsoluteTrueWindAngle" resname="AverageAbsoluteTrueWindAngle">
<source>Average absolute true wind angle</source>
<target>平均絶対真風角度</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteTrueWindAngle" resname="AbsoluteTrueWindAngle">
<source>Absolute true wind angle (TWA)</source>
<target>絶対真風角度 (TWA)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Wind" resname="Wind">
<source>Wind</source>
<target>風</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="VMG" resname="VMG">
<source>Velocity Made Good</source>
<target>VMG (有効速度)</target>
</trans-unit>
</body>
</file>
@@ -0,0 +1,520 @@
<?xml version="1.0" encoding="UTF-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
<file datatype="javapropertyresourcebundle" date="2017-03-03T16:43:53Z" original="/usr/sap/ljs/app/Converter_7519916557605079548/java/com.sap.sailing.datamining/resources/stringmessages/Sailing_StringMessages.properties" source-language="en" target-language="pt">
<header>
<skl>
<internal-file crc="687dae536d957f976a561fc5861eb426" form="base64">H4sIAAAAAAAAAI1XS2/jNhC+81fwskB8KJrs9omCBZy4cdLmYcTGBgv0QssjmbAsGiSd1P31nRmKEu3ETi8UOfNxOJwnNd0ALNSURsHjDJopFLZZ+EsorYPIkxfnXs6ZIEbGB90UMHP6BWrcnQgyUcSDXoOiQdxBNdttQOFX0kRMtalvR4o+8mG7noMT30A7RQOhI43xLftBB2MbXZuwU9lcDAtnm91atV/xBJUOQav2K67s1nkYOtAqTiXNxaXV4arW3iuaSZ6K6xogKB7Fky5A0YAS1hsIJlin+ikL4L1iBnqtaBBT1L5YznSl4kziFG+jF+DmVrsFXdc01ciutWmeIDgDL+CulrhSGczz4afAxPdkp9MSKy/Gk+m1+ecUDBESISjvEh1nP0Az5gCPDi9WH29iGBrZMnAK1Rqa4E/tIyhGXYKKZ9MsPtCPIK1699qtJuhWOuzEDoLJFhct/wR+W4eP7C8jLG55LPvQ+NBx0payh5OiDWwRclrLiMnDaezsdpMHjmRKDsm5FC8UFLlh9m5PgPwinH6oa9FH/Xjj0bgpZroI6MNiPyh6evR+8mDnpu7u/QWJNQ0Omiosb5tL0FusNyHuSHRpGpk44rIM5+pK12uaXag7Uy2D1MbR8nO7nDuAf4EoX9QYY6mGjPSDurdoJB1y4o/q2oFfZpSfFB5vmyoj/axuULx8Rd1o+Ysa65oZvyZs1RIuzpFiXdTxQn01tkY1pO9on9XN1jlToBmwhtVY4V5gWlDpTSvJS3l2jiXYh9/khXzF6AmDffhtMwFXoOzDfWiyT4dQCsdTGzjOeeNw7m29DfCkm5VKC0mr6DBqD2+8xT2DXFWGrl8MwzRoRHTtIljJFIllmCexAz0vsQXRkqI0StoHHLaoKLbvU5Ha7iBFh+HaoL0o4hWtSR5TJJFE7DOPZQpEryKFMqCjdagZ1bIMweuO+6dBF2VcXnfcCWDvCrsr44p6D9YyZMthrceY/f7R3VnvEct6M0laJyOxb8WWLhs7jVkctXQsFYSQZ5/o2DvOqUGvn12Y7fraNMYvc+2YLCM9uw76Or8ELd9qfgnhFaDpPDCkOsAHvHcleXbRukV+93t74kDcei4i+Na49bKddlr0ZYurf6ZQz2kbQ+9ptzoE85mpf0Sn88slLeLzhbytaIihuPdGauOuq2dMHZYBa1wE8Lznj4yDgt4zWOibClS3lpFACTSCCmuO77LwcE+XkCc2y7OJ9YbyeyAwUtD9ambbMJhgzsrv++gYdJcnf/SXp5V41ruNNVgv0kSkLksy2zkLZjulMKT50RRmmxxmcDRUn8CzpXFh93YHR9CXgw1UgV7xKn1yDBcvugm6Arv1fzSLx/LONKASTuZpkkMlYjlLDFVmqiN0yo2uS6wCS+CIps4aSwprEJYglwigbTQvucrU2Hrf1+HocTOzBrRHE26ToRSRJNPIty1V3MNC1/xk5RkX7liY8c2Ll6cQjjWZ1zGKez6/1HM+v9qprV07i49btwXJ7D6+zmbPowFD2GF/NTb4DBi9eLYKfiCFj90hYjKOmOMzmep7JvbvbVmWi9mAtYuPCBYY3w8hGaR9RUZzeDZHGUlip1/VN/0qNiYUSzWhUSwBanWDg3AYlzdAjwL1RLEf5xmZciFnSU6Om22d7+0yZQ/ZV1eG3/qkJdardpqev6Ot458Y1a5lInSANhz78h1fw5hTK7BlOc1smkzbsqRPjXdFZHGnmwWlZ+6FlnYITYWEHElmHzZVjY2kFdzXmUCOJudLTQiKhuGAsjtE5DFB7bH/Q1AdkUeeg71KHBw+exfOW0iuzTEhSZ2TQnJNDs49OOJAYLaXa5J/bNKPMA2U5VgTciGY+8dBSdbBD9Sbv6QhVmqsJe96QLVMqY844H3HfeAvvjzfWXy9H6uvUNsC/82xx2FujK1diP8A9Xa4EWEQAAA=</internal-file>
</skl>
<phase-group>
<phase company-name="SAP AG" date="2017-02-23T16:17:36Z" phase-name="file-creation" process-name="file-creation" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter"/>
</phase-group>
<tool tool-company="SAP AG" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter" tool-name="TEW: Java properties Flexible File Converter" tool-version="1.1.0"/>
</header>
<body>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Speed" resname="Speed">
<source>Speed</source>
<target state="signed-off">Velocidade</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SpeedTenSecondsBefore" resname="SpeedTenSecondsBefore">
<source>Speed 10s before</source>
<target state="signed-off">Velocidade 10s antes</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="DistanceTraveled" resname="DistanceTraveled">
<source>Distance Traveled</source>
<target state="signed-off">Distância viajada</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Name" resname="Name">
<source>Name</source>
<target state="signed-off">Nome</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LegType" resname="LegType">
<source>Leg Type</source>
<target state="signed-off">Tipo de perna</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SailID" resname="SailID">
<source>Sail Number</source>
<target state="signed-off">Número da vela</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Year" resname="Year">
<source>Year</source>
<target state="signed-off">Ano</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LegNumber" resname="LegNumber">
<source>Leg Number</source>
<target state="signed-off">Número da perna</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Nationality" resname="Nationality">
<source>Nationality</source>
<target state="signed-off">Nacionalidade</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Acronym" resname="Acronym">
<source>Acronym</source>
<target state="signed-off">Acrônimo</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Regatta" resname="Regatta">
<source>Regatta</source>
<target state="signed-off">Regata</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="CourseArea" resname="CourseArea">
<source>Course Area</source>
<target state="signed-off">Área do percurso</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BoatClass" resname="BoatClass">
<source>Boat Class</source>
<target state="signed-off">Classe de barcos</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Fleet" resname="Fleet">
<source>Fleet</source>
<target state="signed-off">Frota</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Race" resname="Race">
<source>Race</source>
<target state="signed-off">Corrida</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Competitor" resname="Competitor">
<source>Competitor</source>
<target state="signed-off">Competidor</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Boat" resname="Boat">
<source>Boat</source>
<target state="signed-off">Barco</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Team" resname="Team">
<source>Team</source>
<target state="signed-off">Equipe</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SearchTag" resname="SearchTag">
<source>Search Tag</source>
<target state="signed-off">Etiqueta de pesquisa</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LeaderboardSailingDomainRetrieverChain" resname="LeaderboardSailingDomainRetrieverChain">
<source>Leaderboards</source>
<target state="signed-off">Painéis de classificação</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RaceSailingDomainRetrieverChain" resname="RaceSailingDomainRetrieverChain">
<source>Races</source>
<target state="signed-off">Corridas</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LegSailingDomainRetrieverChain" resname="LegSailingDomainRetrieverChain">
<source>Legs</source>
<target state="signed-off">Pernas</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="GPSFixSailingDomainRetrieverChain" resname="GPSFixSailingDomainRetrieverChain">
<source>GPS Fixes</source>
<target state="signed-off">Pontos fixos de GPS</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BravoFixSailingDomainRetrieverChain" resname="BravoFixSailingDomainRetrieverChain">
<source>Bravo Fixes</source>
<target state="signed-off">Pontos fixos Bravo</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BravoFixTrackSailingDomainRetrieverChain" resname="BravoFixTrackSailingDomainRetrieverChain">
<source>Bravo Tracks</source>
<target state="signed-off">Pistas Bravo</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="FoilingSegmentsSailingDomainRetrieverChain" resname="FoilingSegmentsSailingDomainRetrieverChain">
<source>Foiled Segments</source>
<target state="signed-off">Segmentos com hidrofólio</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindFixSailingDomainRetrieverChain" resname="WindFixSailingDomainRetrieverChain">
<source>Wind Fixes</source>
<target state="signed-off">Pontos fixos de vento</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="MarkPassingSailingDomainRetrieverChain" resname="MarkPassingSailingDomainRetrieverChain">
<source>Mark Passings</source>
<target state="signed-off">Passagens na marca</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RaceResultSailingDomainRetrieverChain" resname="RaceResultSailingDomainRetrieverChain">
<source>Race Results</source>
<target state="signed-off">Resultados da corrida</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RaceOfCompetitorSailingDomainRetrieverChain" resname="RaceOfCompetitorSailingDomainRetrieverChain">
<source>Races of Competitors</source>
<target state="signed-off">Corridas de competidores</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="ManeuverSailingDomainRetrieverChain" resname="ManeuverSailingDomainRetrieverChain">
<source>Maneuver</source>
<target state="signed-off">Manobra</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LeaderboardGroup" resname="LeaderboardGroup">
<source>Leaderboard Group</source>
<target state="signed-off">Grupo de painéis de classificação</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Leaderboard" resname="Leaderboard">
<source>Leaderboard</source>
<target state="signed-off">Painel de classificação</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Leg" resname="Leg">
<source>Leg</source>
<target state="signed-off">Perna</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="MarkPassing" resname="MarkPassing">
<source>Mark Passing</source>
<target state="signed-off">Passagem na marca </target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LegOfCompetitor" resname="LegOfCompetitor">
<source>Leg of competitor</source>
<target state="signed-off">Perna de competidor</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="GpsFix" resname="GpsFix">
<source>GPS Fix</source>
<target state="signed-off">Ponto fixo de GPS</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BravoFix" resname="BravoFix">
<source>Bravo Fix</source>
<target state="signed-off">Ponto fixo Bravo</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BravoFixTrack" resname="BravoFixTrack">
<source>Bravo Fix Track</source>
<target state="signed-off">Pista de ponto fixo Bravo</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindFix" resname="WindFix">
<source>Wind Fix</source>
<target state="signed-off">Ponto fixo de vento</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Maneuver" resname="Maneuver">
<source>Maneuver</source>
<target state="signed-off">Manobra</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindStrengthInBeaufort" resname="WindStrengthInBeaufort">
<source>Wind Strength in Beaufort</source>
<target state="signed-off">Intensidade do vento na escala de Beaufort</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft0" resname="Bft0">
<source>Calm</source>
<target state="signed-off">Calmaria</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft1" resname="Bft1">
<source>Light air</source>
<target state="signed-off">Bafagem</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft2" resname="Bft2">
<source>Light breeze</source>
<target state="signed-off">Aragem</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft3" resname="Bft3">
<source>Gentle breeze</source>
<target state="signed-off">Fraco</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft4" resname="Bft4">
<source>Moderate breeze</source>
<target state="signed-off">Moderado</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft5" resname="Bft5">
<source>Fresh breeze</source>
<target state="signed-off">Fresco</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft6" resname="Bft6">
<source>Strong breeze</source>
<target state="signed-off">Muito fresco</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft7" resname="Bft7">
<source>High wind</source>
<target state="signed-off">Forte</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft8" resname="Bft8">
<source>Gale</source>
<target state="signed-off">Muito forte</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft9" resname="Bft9">
<source>Strong gale</source>
<target state="signed-off">Duro</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft10" resname="Bft10">
<source>Storm</source>
<target state="signed-off">Muito duro</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft11" resname="Bft11">
<source>Violent storm</source>
<target state="signed-off">Tempestuoso</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft12" resname="Bft12">
<source>Hurricane</source>
<target state="signed-off">Furacão</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RelativeScore" resname="RelativeScore">
<source>Relative Score (0 best; 1 worst)</source>
<target state="signed-off">Pontuação relativa (0 melhor; 1 pior)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RelativeScoreInPercent" resname="RelativeScoreInPercent">
<source>Relative Score in %</source>
<target state="signed-off">Pontuação relativa em %</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RelativeScoreInRaceInPercent" resname="RelativeScoreInRaceInPercent">
<source>Relative Score in Race in %</source>
<target state="signed-off">Pontuação relativa na corrida em %</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteRank" resname="AbsoluteRank">
<source>Absolute Rank</source>
<target state="signed-off">Posição absoluta</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindSpeedInBeaufort" resname="WindSpeedInBeaufort">
<source>Wind Speed in Bft</source>
<target state="signed-off">Velocidade do vento na escala de Beaufort</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="DistanceAtStart" resname="DistanceAtStart">
<source>Distance to Start at Start</source>
<target state="signed-off">Distância até partida na partida</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SpeedWhenStarting" resname="SpeedWhenStarting">
<source>Speed at Start</source>
<target state="signed-off">Velocidade na partida</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SpeedTenSecondsBeforeStart" resname="SpeedTenSecondsBeforeStart">
<source>Speed 10s Before Start</source>
<target state="signed-off">Velocidade 10s antes da partida</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RankAtFirstMark" resname="RankAtFirstMark">
<source>Rank at First Mark</source>
<target state="signed-off">Posição na primeira marca</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfManeuvers" resname="NumberOfManeuvers">
<source>Number of Maneuvers</source>
<target state="signed-off">Número de manobras</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfTacks" resname="NumberOfTacks">
<source>Number of Tacks</source>
<target state="signed-off">Número de cambadas</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfJibes" resname="NumberOfJibes">
<source>Number of Jibes</source>
<target state="signed-off">Número de jaibes</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfPenaltyCircles" resname="NumberOfPenaltyCircles">
<source>Number of Penalty Circles</source>
<target state="signed-off">Número de voltas de punição</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RankGainsOrLosses" resname="RankGainsOrLosses">
<source>Rank Gains or Losses</source>
<target state="signed-off">Ganhos ou perdas de posição</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="DistanceToStarboardSideAtStart" resname="DistanceToStarboardSideAtStart">
<source>Distance to Starboard Side (% of Length)</source>
<target state="signed-off">Distância até lado do boreste (% do comprimento)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfPodiumFinish" resname="NumberOfPodiumFinish">
<source>Number of Podium Finishes</source>
<target state="signed-off">Número de lugares no pódio</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfWins" resname="NumberOfWins">
<source>Number of Wins</source>
<target state="signed-off">Número de vitórias</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RankGainsOrLossesBetweenFirstMarkAndFinish" resname="RankGainsOrLossesBetweenFirstMarkAndFinish">
<source>Rank Gains or Losses (1st Mark -&gt; Finish)</source>
<target state="signed-off">Ganhos ou perdas de posição (1ª marca -&gt; chegada)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="IsTracked" resname="IsTracked">
<source>Is Tracked</source>
<target state="signed-off">Está rastreado</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfCompetitorFixes" resname="NumberOfCompetitorFixes">
<source>Number of Competitor Fixes</source>
<target state="signed-off">Número de pontos fixos dos competidores</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfMarkFixes" resname="NumberOfMarkFixes">
<source>Number of Mark Fixes</source>
<target state="signed-off">Número de pontos fixos de marca</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="ManeuverType" resname="ManeuverType">
<source>Maneuver Type</source>
<target state="signed-off">Tipo de manobra</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Tack" resname="Tack">
<source>Tack</source>
<target state="signed-off">Cambar</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SpeedBefore" resname="SpeedBefore">
<source>Speed Before Maneuver</source>
<target state="signed-off">Velocidade antes de manobra</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SpeedAfter" resname="SpeedAfter">
<source>Speed After Maneuver</source>
<target state="signed-off">Velocidade depois de manobra</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="DirectionChange" resname="DirectionChange">
<source>Direction Change in Degrees</source>
<target state="signed-off">Mudança de direção em graus</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteDirectionChange" resname="AbsoluteDirectionChange">
<source>Absolute Direction Change in Degrees (Positive)</source>
<target state="signed-off">Mudança absoluta de direção em graus (positiva)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="ToSide" resname="ToSide">
<source>To Side (Port / Starboard)</source>
<target state="signed-off">Até lado (bombordo/boreste)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="ManeuverLoss" resname="ManeuverLoss">
<source>Maneuver Loss</source>
<target state="signed-off">Perda de manobra</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Waypoint" resname="Waypoint">
<source>Waypoint</source>
<target state="signed-off">Waypoint</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="PassingSide" resname="PassingSide">
<source>Passing Side</source>
<target state="signed-off">Lado de passagem</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="TackAtStart" resname="TackAtStart">
<source>Tack at Start</source>
<target state="signed-off">Cambar na partida</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SpeedTenSecondsAfterStart" resname="SpeedTenSecondsAfterStart">
<source>Speed 10s After Start</source>
<target state="signed-off">Velocidade 10s depois da partida</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RankThirtySecondsAfterStart" resname="RankThirtySecondsAfterStart">
<source>Rank 30s After Start</source>
<target state="signed-off">Posição 30s depois da partida</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindwardDistanceToAdvantageousEndOfLine" resname="WindwardDistanceToAdvantageousEndOfLine">
<source>Windward Distance to Advantageous End of Line</source>
<target state="signed-off">Distância a barlavento para fim de linha favorável</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RankAfterHalfOfTheFirstLeg" resname="RankAfterHalfOfTheFirstLeg">
<source>Rank after the half of the first leg</source>
<target state="signed-off">Posição depois de metade da primeira perna</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AdvantageousEndOfLine" resname="AdvantageousEndOfLine">
<source>Advantageous End of Line</source>
<target state="signed-off">Fim de linha favorável</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="TimeSpentInSeconds" resname="TimeSpentInSeconds">
<source>Time Spent in Seconds</source>
<target state="signed-off">Tempo gasto em segundos</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="MedalRace" resname="MedalRace">
<source>Medal Race</source>
<target state="signed-off">Corrida para medalha</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindSourceType" resname="WindSourceType">
<source>Wind Source Type</source>
<target state="signed-off">Tipo de origem do vento</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindSourceName" resname="WindSourceName">
<source>Wind Source Name</source>
<target state="signed-off">Nome da origem do vento</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="windFrom" resname="windFrom">
<source>True Wind Direction (TWD)</source>
<target state="signed-off">Direção do vento verdadeiro (TWD)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="windSpeedKnots" resname="windSpeedKnots">
<source>True Wind Speed (kts) </source>
<target state="signed-off">Velocidade do vento verdadeiro (nós)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="speedInKnots" resname="speedInKnots">
<source>Speed (kts)</source>
<target state="signed-off">Velocidade (nós)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="bearing" resname="bearing">
<source>Direction (�T)</source>
<target state="signed-off">Direção(�T)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindTrack" resname="WindTrack">
<source>Wind Track</source>
<target state="signed-off">Pista de vento</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="timeSpentFoiling" resname="timeSpentFoiling">
<source>Time spent foiling</source>
<target state="signed-off">Tempo gasto em navegação com hidrofólio</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="yaw" resname="yaw">
<source>Yaw</source>
<target state="signed-off">Guinar</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="pitch" resname="pitch">
<source>Pitch</source>
<target state="signed-off">Caturrar</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="heel" resname="heel">
<source>Heel</source>
<target state="signed-off">Adernar</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="rideHeight" resname="rideHeight">
<source>Ride Height</source>
<target state="signed-off">Altura de flutuação</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="rideHeightPort" resname="rideHeightPort">
<source>Ride Height Port Hull</source>
<target state="signed-off">Altura de flutuação casco de bombordo</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="rideHeightStarboard" resname="rideHeightStarboard">
<source>Ride Height Starboard Hull</source>
<target state="signed-off">Altura de flutuação casco de boreste</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="IsFoiling" resname="IsFoiling">
<source>Is Foiling</source>
<target state="signed-off">Navegando com hidrofólio</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="FoilingDuration" resname="FoilingDuration">
<source>Foiling Duration</source>
<target state="signed-off">Duração de navegação com hidrofólio</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="FoilingDistance" resname="FoilingDistance">
<source>Distance Foiled</source>
<target state="signed-off">Distância com hidrofólio</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="TakeoffSpeedInKnotsInKnots" resname="TakeoffSpeedInKnotsInKnots">
<source>Takeoff speed in knots</source>
<target state="signed-off">Velocidade de desatracação em nós</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LandingSpeedInKnots" resname="LandingSpeedInKnots">
<source>Landing speed in knots</source>
<target state="signed-off">Velocidade de atracação em nós</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteTrueWindAngleAtTakeoff" resname="AbsoluteTrueWindAngleAtTakeoff">
<source>Absolute true wind angle (TWA) at takeoff</source>
<target state="signed-off">Ângulo de vento verdadeiro absoluto (TWA) na desatracação</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteTrueWindAngleAtLanding" resname="AbsoluteTrueWindAngleAtLanding">
<source>Absolute true wind angle (TWA) at landing</source>
<target state="signed-off">Ângulo de vento verdadeiro absoluto (TWA) na atracação</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindStrengthInBeaufortAtTakeoff" resname="WindStrengthInBeaufortAtTakeoff">
<source>Wind strength in beaufort at takeoff</source>
<target state="signed-off">Intensidade do vento na escala de Beaufort na desatracação</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindStrengthInBeaufortAtLanding" resname="WindStrengthInBeaufortAtLanding">
<source>Wind strength in beaufort at landing</source>
<target state="signed-off">Intensidade do vento na escala de Beaufort na atracação</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindAtTakeoff" resname="WindAtTakeoff">
<source>Wind at takeoff</source>
<target state="signed-off">Vento na desatracação</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindAtLanding" resname="WindAtLanding">
<source>Wind at landing</source>
<target state="signed-off">Vento na atracação</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="StartsOnLegType" resname="StartsOnLegType">
<source>Type of leg at takeoff</source>
<target state="signed-off">Tipo de perna na desatracação</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="EndsOnLegType" resname="EndsOnLegType">
<source>Type of leg at landing</source>
<target state="signed-off">Tipo de perna na atracação</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="FoilingSegments" resname="FoilingSegments">
<source>Foiled Segments</source>
<target state="signed-off">Segmentos com hidrofólio</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AverageAbsoluteTrueWindAngle" resname="AverageAbsoluteTrueWindAngle">
<source>Average absolute true wind angle</source>
<target state="signed-off">Ângulo de vento verdadeiro absoluto médio</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteTrueWindAngle" resname="AbsoluteTrueWindAngle">
<source>Absolute true wind angle (TWA)</source>
<target state="signed-off">Ângulo de vento verdadeiro absoluto (TWA)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Wind" resname="Wind">
<source>Wind</source>
<target state="signed-off">Vento</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="VMG" resname="VMG">
<source>Velocity Made Good</source>
<target state="signed-off">Velocidade diretamente na linha do vento real (VMG)</target>
</trans-unit>
</body>
</file>
</xliff>
@@ -1,14 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
<file datatype="javapropertyresourcebundle" date="2017-01-12T14:31:58Z" original="/usr/sap/ljs/app/Converter_2566045106627533633/java/com.sap.sailing.datamining/resources/stringmessages/Sailing_StringMessages.properties" source-language="en" target-language="ru">
<file datatype="javapropertyresourcebundle" date="2017-03-03T15:28:32Z" original="/usr/sap/ljs/app/Converter_7519916557605079548/java/com.sap.sailing.datamining/resources/stringmessages/Sailing_StringMessages.properties" source-language="en" target-language="ru">
<header>
<skl>
<internal-file crc="f38aaa3e2ebfcee22c5187ca5b77bc00" form="base64">H4sIAAAAAAAAAIVWS28jKRC+8yu4jJQcRopn9qkVKznJ2vHKeci2Ntoj7i53o7TBApys59dvVdEP7Ew8F7rq4wOKetHLHUCpljQKHldgl1A4W4Zr2DgPaU6OroJcMyBuTYjaFrDy+hUaXN0BskPEg96CokHMoVoddqDwK0kQS22a2a2ij3zYb9fgxb+gvaKB2Aljfjv9oKNxVjcmHlQmi3HhnT1sVfsVC6h0jFq1X3Hj9j7A2INWSZQki2un402jQ1AkSRbFpAGIikex0AUoGnCH7Q6iic6rQeQNeK1Ygd4qGjLmEu9R1CtdZUtkAiWieEVdgl877UvygbHVrdtqYxcQvYFX8Dc1aiqjBbboHJnmAznv/I5VENOn5cT8d46GjM9Iwf3utX95Qucg89wCosmWl0xdQNg38UcGy0RLSx43mQd/dFPpNnKgk6EW9kg5b2Xi5P6ferff5Z6WjOSUfJYcTF7MHXN0eyLkF+EkRluLIXemu4DO7ZzcWz6Y92xsuYwebBXrmb0Gvceai4pg2eHSWNnNiOtNvFI3utmSNFJzU9VRauNJ/dKqaw/wDQj5qqZgYwMZ9JO6d3hFHXPwZzXxEOoM+UXh8c5WGfSrusPt5RvaRupvaqobnvi941YtMLpCxPlk40j9Y1yDZsjQY1/U3d57U6AbsI4brPJXWBbUfjpNsiovrrANhfiHHMk3jH28PKbP7BP4Avc+XYcu+3RKpWQ6t4CzlBeO18E1+wgLbV9Up0jSUsCoRb6LFvdNCtUm9j1zHJdRI6NvmdFJRiS2IhZSF36usQ2TSjmWdjomnLbptO3QqxPariBDx3Fi0F+Ur4p02o8RSZBIvfZx0yViUAmh/O2xnrXSxUvOYL2f/dtgiLJZ1vvZJ8D+HQ83xhfNEa2dkO0MWz3F2g2Pfu5CQC7bzZDEpprA4TlydNnUWE35oadToRNDXnyiY+dcU5eDfa40++3EWBPq3DqGZcKz62Cs80uQ+t7ya4hvALaPwNiW7QHfu5K8GLVhkZ//bE+8FLOAz2vxgu/tLMhW7K0Ymg737syg7BVKbX2ItH85JfOZXfdPQefXu1PSE07RVjSkVDz6T2jzru9njI43EXtcIrA8zN8aDwW96dimbQWq12UCqIBuocKeM5hEXhpMIk0868POGaziThDdy4WBVq3MUWfru+Qg+cPCYktP6yqZP5TVqjY+Ht6v4Lh+PVlAfeEN029I2XH5qm3UFbh9+MuWj5u5saA6nsyTN6dK5HLuGuqXVN10yp1uNlibNXCe0WuVCp0tiDXIGgm0jOQN136Dz9n3bfjwuJXZAvrDxlnnKEWQZIzC1aLiHkrd8M8US9xOxf+VN8i0cAoAAA==</internal-file>
<internal-file crc="687dae536d957f976a561fc5861eb426" form="base64">H4sIAAAAAAAAAI1XS2/jNhC+81fwskB8KJrs9omCBZy4cdLmYcTGBgv0QssjmbAsGiSd1P31nRmKEu3ETi8UOfNxOJwnNd0ALNSURsHjDJopFLZZ+EsorYPIkxfnXs6ZIEbGB90UMHP6BWrcnQgyUcSDXoOiQdxBNdttQOFX0kRMtalvR4o+8mG7noMT30A7RQOhI43xLftBB2MbXZuwU9lcDAtnm91atV/xBJUOQav2K67s1nkYOtAqTiXNxaXV4arW3iuaSZ6K6xogKB7Fky5A0YAS1hsIJlin+ikL4L1iBnqtaBBT1L5YznSl4kziFG+jF+DmVrsFXdc01ciutWmeIDgDL+CulrhSGczz4afAxPdkp9MSKy/Gk+m1+ecUDBESISjvEh1nP0Az5gCPDi9WH29iGBrZMnAK1Rqa4E/tIyhGXYKKZ9MsPtCPIK1699qtJuhWOuzEDoLJFhct/wR+W4eP7C8jLG55LPvQ+NBx0payh5OiDWwRclrLiMnDaezsdpMHjmRKDsm5FC8UFLlh9m5PgPwinH6oa9FH/Xjj0bgpZroI6MNiPyh6evR+8mDnpu7u/QWJNQ0Omiosb5tL0FusNyHuSHRpGpk44rIM5+pK12uaXag7Uy2D1MbR8nO7nDuAf4EoX9QYY6mGjPSDurdoJB1y4o/q2oFfZpSfFB5vmyoj/axuULx8Rd1o+Ysa65oZvyZs1RIuzpFiXdTxQn01tkY1pO9on9XN1jlToBmwhtVY4V5gWlDpTSvJS3l2jiXYh9/khXzF6AmDffhtMwFXoOzDfWiyT4dQCsdTGzjOeeNw7m29DfCkm5VKC0mr6DBqD2+8xT2DXFWGrl8MwzRoRHTtIljJFIllmCexAz0vsQXRkqI0StoHHLaoKLbvU5Ha7iBFh+HaoL0o4hWtSR5TJJFE7DOPZQpEryKFMqCjdagZ1bIMweuO+6dBF2VcXnfcCWDvCrsr44p6D9YyZMthrceY/f7R3VnvEct6M0laJyOxb8WWLhs7jVkctXQsFYSQZ5/o2DvOqUGvn12Y7fraNMYvc+2YLCM9uw76Or8ELd9qfgnhFaDpPDCkOsAHvHcleXbRukV+93t74kDcei4i+Na49bKddlr0ZYurf6ZQz2kbQ+9ptzoE85mpf0Sn88slLeLzhbytaIihuPdGauOuq2dMHZYBa1wE8Lznj4yDgt4zWOibClS3lpFACTSCCmuO77LwcE+XkCc2y7OJ9YbyeyAwUtD9ambbMJhgzsrv++gYdJcnf/SXp5V41ruNNVgv0kSkLksy2zkLZjulMKT50RRmmxxmcDRUn8CzpXFh93YHR9CXgw1UgV7xKn1yDBcvugm6Arv1fzSLx/LONKASTuZpkkMlYjlLDFVmqiN0yo2uS6wCS+CIps4aSwprEJYglwigbTQvucrU2Hrf1+HocTOzBrRHE26ToRSRJNPIty1V3MNC1/xk5RkX7liY8c2Ll6cQjjWZ1zGKez6/1HM+v9qprV07i49btwXJ7D6+zmbPowFD2GF/NTb4DBi9eLYKfiCFj90hYjKOmOMzmep7JvbvbVmWi9mAtYuPCBYY3w8hGaR9RUZzeDZHGUlip1/VN/0qNiYUSzWhUSwBanWDg3AYlzdAjwL1RLEf5xmZciFnSU6Om22d7+0yZQ/ZV1eG3/qkJdardpqev6Ot458Y1a5lInSANhz78h1fw5hTK7BlOc1smkzbsqRPjXdFZHGnmwWlZ+6FlnYITYWEHElmHzZVjY2kFdzXmUCOJudLTQiKhuGAsjtE5DFB7bH/Q1AdkUeeg71KHBw+exfOW0iuzTEhSZ2TQnJNDs49OOJAYLaXa5J/bNKPMA2U5VgTciGY+8dBSdbBD9Sbv6QhVmqsJe96QLVMqY844H3HfeAvvjzfWXy9H6uvUNsC/82xx2FujK1diP8A9Xa4EWEQAAA=</internal-file>
</skl>
<phase-group>
<phase company-name="SAP AG" date="2016-11-04T21:01:36Z" phase-name="file-creation" process-name="file-creation" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter"/>
<phase company-name="SAP AG" date="2017-02-23T16:17:36Z" phase-name="file-creation" process-name="file-creation" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter"/>
</phase-group>
<tool tool-company="SAP AG" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter" tool-name="TEW: Javascript .properties Flexible File Converter" tool-version="1.1.0"/>
<tool tool-company="SAP AG" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter" tool-name="TEW: Java properties Flexible File Converter" tool-version="1.1.0"/>
</header>
<body>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Speed" resname="Speed">
@@ -83,9 +83,9 @@
<source>Team</source>
<target state="signed-off">Команда</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="CompetitorSearchTag" resname="CompetitorSearchTag">
<source>Competitor Search Tag</source>
<target state="signed-off">Тег поиска участника</target>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SearchTag" resname="SearchTag">
<source>Search Tag</source>
<target>Тег поиска</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LeaderboardSailingDomainRetrieverChain" resname="LeaderboardSailingDomainRetrieverChain">
<source>Leaderboards</source>
@@ -100,9 +100,25 @@
<target state="signed-off">Отрезки</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="GPSFixSailingDomainRetrieverChain" resname="GPSFixSailingDomainRetrieverChain">
<source>GPS-Fixes</source>
<source>GPS Fixes</source>
<target state="signed-off">Замеры GPS</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BravoFixSailingDomainRetrieverChain" resname="BravoFixSailingDomainRetrieverChain">
<source>Bravo Fixes</source>
<target>Замеры Bravo</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BravoFixTrackSailingDomainRetrieverChain" resname="BravoFixTrackSailingDomainRetrieverChain">
<source>Bravo Tracks</source>
<target>Отслеживания Bravo</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="FoilingSegmentsSailingDomainRetrieverChain" resname="FoilingSegmentsSailingDomainRetrieverChain">
<source>Foiled Segments</source>
<target>Сегменты в крыльевом режиме</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindFixSailingDomainRetrieverChain" resname="WindFixSailingDomainRetrieverChain">
<source>Wind Fixes</source>
<target state="signed-off">Замеры ветра</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="MarkPassingSailingDomainRetrieverChain" resname="MarkPassingSailingDomainRetrieverChain">
<source>Mark Passings</source>
<target state="signed-off">Прохождения отметок</target>
@@ -140,9 +156,21 @@
<target state="signed-off">Отрезок участника</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="GpsFix" resname="GpsFix">
<source>GPS-Fix</source>
<source>GPS Fix</source>
<target state="signed-off">Замер GPS</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BravoFix" resname="BravoFix">
<source>Bravo Fix</source>
<target>Замер Bravo</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BravoFixTrack" resname="BravoFixTrack">
<source>Bravo Fix Track</source>
<target>Отслеживание замеров Bravo</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindFix" resname="WindFix">
<source>Wind Fix</source>
<target state="signed-off">Замер ветра</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Maneuver" resname="Maneuver">
<source>Maneuver</source>
<target state="signed-off">Маневр</target>
@@ -307,6 +335,14 @@
<source>Direction Change in Degrees</source>
<target state="signed-off">Изменение направления в градусах</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteDirectionChange" resname="AbsoluteDirectionChange">
<source>Absolute Direction Change in Degrees (Positive)</source>
<target state="signed-off">Абсолютное изменение направления в градусах (положительное)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="ToSide" resname="ToSide">
<source>To Side (Port / Starboard)</source>
<target state="signed-off">Борт (левый/правый)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="ManeuverLoss" resname="ManeuverLoss">
<source>Maneuver Loss</source>
<target state="signed-off">Потеря маневра</target>
@@ -337,7 +373,7 @@
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RankAfterHalfOfTheFirstLeg" resname="RankAfterHalfOfTheFirstLeg">
<source>Rank after the half of the first leg</source>
<target state="signed-off">Ранг после половины первого этапа</target>
<target state="translated">Ранг после половины первого отрезка</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AdvantageousEndOfLine" resname="AdvantageousEndOfLine">
<source>Advantageous End of Line</source>
@@ -351,6 +387,134 @@
<source>Medal Race</source>
<target state="signed-off">Гонка на медали</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindSourceType" resname="WindSourceType">
<source>Wind Source Type</source>
<target state="signed-off">Тип источника ветра</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindSourceName" resname="WindSourceName">
<source>Wind Source Name</source>
<target state="signed-off">Название источника ветра</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="windFrom" resname="windFrom">
<source>True Wind Direction (TWD)</source>
<target state="signed-off">Направление истинного ветра (НИВ)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="windSpeedKnots" resname="windSpeedKnots">
<source>True Wind Speed (kts) </source>
<target state="signed-off">Скорость истинного ветра (уз) </target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="speedInKnots" resname="speedInKnots">
<source>Speed (kts)</source>
<target state="signed-off">Скорость (уз)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="bearing" resname="bearing">
<source>Direction (�T)</source>
<target state="translated">Направление (�T)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindTrack" resname="WindTrack">
<source>Wind Track</source>
<target state="signed-off">Отслеживание ветра</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="timeSpentFoiling" resname="timeSpentFoiling">
<source>Time spent foiling</source>
<target>Время в крыльевом режиме</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="yaw" resname="yaw">
<source>Yaw</source>
<target>Рыскание</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="pitch" resname="pitch">
<source>Pitch</source>
<target>Инкремент</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="heel" resname="heel">
<source>Heel</source>
<target>Крен</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="rideHeight" resname="rideHeight">
<source>Ride Height</source>
<target>Высота хода</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="rideHeightPort" resname="rideHeightPort">
<source>Ride Height Port Hull</source>
<target>Высота хода левого борта</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="rideHeightStarboard" resname="rideHeightStarboard">
<source>Ride Height Starboard Hull</source>
<target>Высота хода правого борта</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="IsFoiling" resname="IsFoiling">
<source>Is Foiling</source>
<target>Крыльевой режим</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="FoilingDuration" resname="FoilingDuration">
<source>Foiling Duration</source>
<target>Продолжительность крыльевого режима</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="FoilingDistance" resname="FoilingDistance">
<source>Distance Foiled</source>
<target>Пройдено в крыльевом режиме</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="TakeoffSpeedInKnotsInKnots" resname="TakeoffSpeedInKnotsInKnots">
<source>Takeoff speed in knots</source>
<target>Скорость отрыва в узлах</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LandingSpeedInKnots" resname="LandingSpeedInKnots">
<source>Landing speed in knots</source>
<target>Скорость посадки в узлах</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteTrueWindAngleAtTakeoff" resname="AbsoluteTrueWindAngleAtTakeoff">
<source>Absolute true wind angle (TWA) at takeoff</source>
<target>Абсолютный угол истинного ветра (TWA) при отрыве</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteTrueWindAngleAtLanding" resname="AbsoluteTrueWindAngleAtLanding">
<source>Absolute true wind angle (TWA) at landing</source>
<target>Абсолютный угол истинного ветра (TWA) при посадке</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindStrengthInBeaufortAtTakeoff" resname="WindStrengthInBeaufortAtTakeoff">
<source>Wind strength in beaufort at takeoff</source>
<target>Сила ветра по шкале Бофорта при отрыве</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindStrengthInBeaufortAtLanding" resname="WindStrengthInBeaufortAtLanding">
<source>Wind strength in beaufort at landing</source>
<target>Сила ветра по шкале Бофорта при посадке</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindAtTakeoff" resname="WindAtTakeoff">
<source>Wind at takeoff</source>
<target>Ветер при отрыве</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindAtLanding" resname="WindAtLanding">
<source>Wind at landing</source>
<target>Ветер при посадке</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="StartsOnLegType" resname="StartsOnLegType">
<source>Type of leg at takeoff</source>
<target>Тип отрезка при отрыве</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="EndsOnLegType" resname="EndsOnLegType">
<source>Type of leg at landing</source>
<target>Тип отрезка при посадке</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="FoilingSegments" resname="FoilingSegments">
<source>Foiled Segments</source>
<target>Сегментов в крыльевом режиме</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AverageAbsoluteTrueWindAngle" resname="AverageAbsoluteTrueWindAngle">
<source>Average absolute true wind angle</source>
<target>Средний абсолютный угол истинного ветра</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteTrueWindAngle" resname="AbsoluteTrueWindAngle">
<source>Absolute true wind angle (TWA)</source>
<target>Абсолютный угол истинного ветра (TWA)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Wind" resname="Wind">
<source>Wind</source>
<target state="translated">Ветер</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="VMG" resname="VMG">
<source>Velocity Made Good</source>
<target state="translated">Эффективная скорость лавирования (VMG)</target>
</trans-unit>
</body>
</file>
</xliff>
@@ -0,0 +1,520 @@
<?xml version="1.0" encoding="UTF-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
<file datatype="javapropertyresourcebundle" date="2017-03-03T15:28:33Z" original="/usr/sap/ljs/app/Converter_7519916557605079548/java/com.sap.sailing.datamining/resources/stringmessages/Sailing_StringMessages.properties" source-language="en" target-language="zh-CN">
<header>
<skl>
<internal-file crc="687dae536d957f976a561fc5861eb426" form="base64">H4sIAAAAAAAAAI1XS2/jNhC+81fwskB8KJrs9omCBZy4cdLmYcTGBgv0QssjmbAsGiSd1P31nRmKEu3ETi8UOfNxOJwnNd0ALNSURsHjDJopFLZZ+EsorYPIkxfnXs6ZIEbGB90UMHP6BWrcnQgyUcSDXoOiQdxBNdttQOFX0kRMtalvR4o+8mG7noMT30A7RQOhI43xLftBB2MbXZuwU9lcDAtnm91atV/xBJUOQav2K67s1nkYOtAqTiXNxaXV4arW3iuaSZ6K6xogKB7Fky5A0YAS1hsIJlin+ikL4L1iBnqtaBBT1L5YznSl4kziFG+jF+DmVrsFXdc01ciutWmeIDgDL+CulrhSGczz4afAxPdkp9MSKy/Gk+m1+ecUDBESISjvEh1nP0Az5gCPDi9WH29iGBrZMnAK1Rqa4E/tIyhGXYKKZ9MsPtCPIK1699qtJuhWOuzEDoLJFhct/wR+W4eP7C8jLG55LPvQ+NBx0payh5OiDWwRclrLiMnDaezsdpMHjmRKDsm5FC8UFLlh9m5PgPwinH6oa9FH/Xjj0bgpZroI6MNiPyh6evR+8mDnpu7u/QWJNQ0Omiosb5tL0FusNyHuSHRpGpk44rIM5+pK12uaXag7Uy2D1MbR8nO7nDuAf4EoX9QYY6mGjPSDurdoJB1y4o/q2oFfZpSfFB5vmyoj/axuULx8Rd1o+Ysa65oZvyZs1RIuzpFiXdTxQn01tkY1pO9on9XN1jlToBmwhtVY4V5gWlDpTSvJS3l2jiXYh9/khXzF6AmDffhtMwFXoOzDfWiyT4dQCsdTGzjOeeNw7m29DfCkm5VKC0mr6DBqD2+8xT2DXFWGrl8MwzRoRHTtIljJFIllmCexAz0vsQXRkqI0StoHHLaoKLbvU5Ha7iBFh+HaoL0o4hWtSR5TJJFE7DOPZQpEryKFMqCjdagZ1bIMweuO+6dBF2VcXnfcCWDvCrsr44p6D9YyZMthrceY/f7R3VnvEct6M0laJyOxb8WWLhs7jVkctXQsFYSQZ5/o2DvOqUGvn12Y7fraNMYvc+2YLCM9uw76Or8ELd9qfgnhFaDpPDCkOsAHvHcleXbRukV+93t74kDcei4i+Na49bKddlr0ZYurf6ZQz2kbQ+9ptzoE85mpf0Sn88slLeLzhbytaIihuPdGauOuq2dMHZYBa1wE8Lznj4yDgt4zWOibClS3lpFACTSCCmuO77LwcE+XkCc2y7OJ9YbyeyAwUtD9ambbMJhgzsrv++gYdJcnf/SXp5V41ruNNVgv0kSkLksy2zkLZjulMKT50RRmmxxmcDRUn8CzpXFh93YHR9CXgw1UgV7xKn1yDBcvugm6Arv1fzSLx/LONKASTuZpkkMlYjlLDFVmqiN0yo2uS6wCS+CIps4aSwprEJYglwigbTQvucrU2Hrf1+HocTOzBrRHE26ToRSRJNPIty1V3MNC1/xk5RkX7liY8c2Ll6cQjjWZ1zGKez6/1HM+v9qprV07i49btwXJ7D6+zmbPowFD2GF/NTb4DBi9eLYKfiCFj90hYjKOmOMzmep7JvbvbVmWi9mAtYuPCBYY3w8hGaR9RUZzeDZHGUlip1/VN/0qNiYUSzWhUSwBanWDg3AYlzdAjwL1RLEf5xmZciFnSU6Om22d7+0yZQ/ZV1eG3/qkJdardpqev6Ot458Y1a5lInSANhz78h1fw5hTK7BlOc1smkzbsqRPjXdFZHGnmwWlZ+6FlnYITYWEHElmHzZVjY2kFdzXmUCOJudLTQiKhuGAsjtE5DFB7bH/Q1AdkUeeg71KHBw+exfOW0iuzTEhSZ2TQnJNDs49OOJAYLaXa5J/bNKPMA2U5VgTciGY+8dBSdbBD9Sbv6QhVmqsJe96QLVMqY844H3HfeAvvjzfWXy9H6uvUNsC/82xx2FujK1diP8A9Xa4EWEQAAA=</internal-file>
</skl>
<phase-group>
<phase company-name="SAP AG" date="2017-02-23T16:17:36Z" phase-name="file-creation" process-name="file-creation" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter"/>
</phase-group>
<tool tool-company="SAP AG" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter" tool-name="TEW: Java properties Flexible File Converter" tool-version="1.1.0"/>
</header>
<body>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Speed" resname="Speed">
<source>Speed</source>
<target state="signed-off">速度</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SpeedTenSecondsBefore" resname="SpeedTenSecondsBefore">
<source>Speed 10s before</source>
<target state="signed-off">前 10 秒的速度</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="DistanceTraveled" resname="DistanceTraveled">
<source>Distance Traveled</source>
<target state="signed-off">航行距离</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Name" resname="Name">
<source>Name</source>
<target state="signed-off">名称</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LegType" resname="LegType">
<source>Leg Type</source>
<target state="signed-off">航段形式</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SailID" resname="SailID">
<source>Sail Number</source>
<target state="signed-off">帆号</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Year" resname="Year">
<source>Year</source>
<target state="signed-off">年份</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LegNumber" resname="LegNumber">
<source>Leg Number</source>
<target state="signed-off">航段编号</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Nationality" resname="Nationality">
<source>Nationality</source>
<target state="signed-off">国籍</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Acronym" resname="Acronym">
<source>Acronym</source>
<target state="signed-off">首字母缩略词</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Regatta" resname="Regatta">
<source>Regatta</source>
<target state="signed-off">比赛</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="CourseArea" resname="CourseArea">
<source>Course Area</source>
<target state="signed-off">场地区域</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BoatClass" resname="BoatClass">
<source>Boat Class</source>
<target state="signed-off">船只级别</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Fleet" resname="Fleet">
<source>Fleet</source>
<target state="signed-off">船队</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Race" resname="Race">
<source>Race</source>
<target state="signed-off">比赛轮次</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Competitor" resname="Competitor">
<source>Competitor</source>
<target state="signed-off">参赛队</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Boat" resname="Boat">
<source>Boat</source>
<target state="signed-off">船只</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Team" resname="Team">
<source>Team</source>
<target state="signed-off">团队</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SearchTag" resname="SearchTag">
<source>Search Tag</source>
<target state="signed-off">搜索标记</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LeaderboardSailingDomainRetrieverChain" resname="LeaderboardSailingDomainRetrieverChain">
<source>Leaderboards</source>
<target state="signed-off">积分榜</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RaceSailingDomainRetrieverChain" resname="RaceSailingDomainRetrieverChain">
<source>Races</source>
<target state="signed-off">比赛轮次</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LegSailingDomainRetrieverChain" resname="LegSailingDomainRetrieverChain">
<source>Legs</source>
<target state="signed-off">航段</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="GPSFixSailingDomainRetrieverChain" resname="GPSFixSailingDomainRetrieverChain">
<source>GPS Fixes</source>
<target state="signed-off">GPS 修复</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BravoFixSailingDomainRetrieverChain" resname="BravoFixSailingDomainRetrieverChain">
<source>Bravo Fixes</source>
<target state="signed-off">Bravo 修复</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BravoFixTrackSailingDomainRetrieverChain" resname="BravoFixTrackSailingDomainRetrieverChain">
<source>Bravo Tracks</source>
<target state="signed-off">Bravo 跟踪</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="FoilingSegmentsSailingDomainRetrieverChain" resname="FoilingSegmentsSailingDomainRetrieverChain">
<source>Foiled Segments</source>
<target state="translated">水翼腾空段</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindFixSailingDomainRetrieverChain" resname="WindFixSailingDomainRetrieverChain">
<source>Wind Fixes</source>
<target state="signed-off">风力修复</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="MarkPassingSailingDomainRetrieverChain" resname="MarkPassingSailingDomainRetrieverChain">
<source>Mark Passings</source>
<target state="signed-off">绕标</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RaceResultSailingDomainRetrieverChain" resname="RaceResultSailingDomainRetrieverChain">
<source>Race Results</source>
<target state="signed-off">比赛轮次结果</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RaceOfCompetitorSailingDomainRetrieverChain" resname="RaceOfCompetitorSailingDomainRetrieverChain">
<source>Races of Competitors</source>
<target state="signed-off">参赛队的比赛轮次</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="ManeuverSailingDomainRetrieverChain" resname="ManeuverSailingDomainRetrieverChain">
<source>Maneuver</source>
<target state="signed-off">操作</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LeaderboardGroup" resname="LeaderboardGroup">
<source>Leaderboard Group</source>
<target state="signed-off">积分榜分组</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Leaderboard" resname="Leaderboard">
<source>Leaderboard</source>
<target state="signed-off">积分榜</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Leg" resname="Leg">
<source>Leg</source>
<target state="signed-off">航段</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="MarkPassing" resname="MarkPassing">
<source>Mark Passing</source>
<target state="signed-off">绕标</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LegOfCompetitor" resname="LegOfCompetitor">
<source>Leg of competitor</source>
<target state="signed-off">参赛队的航段</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="GpsFix" resname="GpsFix">
<source>GPS Fix</source>
<target state="signed-off">GPS 修复</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BravoFix" resname="BravoFix">
<source>Bravo Fix</source>
<target state="signed-off">Bravo 修复</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="BravoFixTrack" resname="BravoFixTrack">
<source>Bravo Fix Track</source>
<target state="signed-off">Bravo 修复跟踪</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindFix" resname="WindFix">
<source>Wind Fix</source>
<target state="signed-off">风力修复</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Maneuver" resname="Maneuver">
<source>Maneuver</source>
<target state="signed-off">操作</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindStrengthInBeaufort" resname="WindStrengthInBeaufort">
<source>Wind Strength in Beaufort</source>
<target state="signed-off">风力(蒲福风级)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft0" resname="Bft0">
<source>Calm</source>
<target state="signed-off">无风</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft1" resname="Bft1">
<source>Light air</source>
<target state="signed-off">软风</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft2" resname="Bft2">
<source>Light breeze</source>
<target state="signed-off">轻风</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft3" resname="Bft3">
<source>Gentle breeze</source>
<target state="signed-off">微风</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft4" resname="Bft4">
<source>Moderate breeze</source>
<target state="signed-off">和风</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft5" resname="Bft5">
<source>Fresh breeze</source>
<target state="signed-off">劲风</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft6" resname="Bft6">
<source>Strong breeze</source>
<target state="signed-off">强风</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft7" resname="Bft7">
<source>High wind</source>
<target state="signed-off">疾风</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft8" resname="Bft8">
<source>Gale</source>
<target state="signed-off">大风</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft9" resname="Bft9">
<source>Strong gale</source>
<target state="signed-off">烈风</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft10" resname="Bft10">
<source>Storm</source>
<target state="signed-off">暴风</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft11" resname="Bft11">
<source>Violent storm</source>
<target state="signed-off">飓风</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Bft12" resname="Bft12">
<source>Hurricane</source>
<target state="signed-off">台风</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RelativeScore" resname="RelativeScore">
<source>Relative Score (0 best; 1 worst)</source>
<target state="signed-off">相对得分(0 最佳;1 最差)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RelativeScoreInPercent" resname="RelativeScoreInPercent">
<source>Relative Score in %</source>
<target state="signed-off">相对得分 (%)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RelativeScoreInRaceInPercent" resname="RelativeScoreInRaceInPercent">
<source>Relative Score in Race in %</source>
<target state="signed-off">比赛轮次中的相对得分 (%)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteRank" resname="AbsoluteRank">
<source>Absolute Rank</source>
<target state="signed-off">绝对名次</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindSpeedInBeaufort" resname="WindSpeedInBeaufort">
<source>Wind Speed in Bft</source>
<target state="signed-off">风速(单位:Bft)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="DistanceAtStart" resname="DistanceAtStart">
<source>Distance to Start at Start</source>
<target state="signed-off">起航前与起航线的距离</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SpeedWhenStarting" resname="SpeedWhenStarting">
<source>Speed at Start</source>
<target state="signed-off">起航时的速度</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SpeedTenSecondsBeforeStart" resname="SpeedTenSecondsBeforeStart">
<source>Speed 10s Before Start</source>
<target state="signed-off">起航前 10 秒的速度</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RankAtFirstMark" resname="RankAtFirstMark">
<source>Rank at First Mark</source>
<target state="signed-off">在第一个标志的名次</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfManeuvers" resname="NumberOfManeuvers">
<source>Number of Maneuvers</source>
<target state="signed-off">操作数量</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfTacks" resname="NumberOfTacks">
<source>Number of Tacks</source>
<target state="signed-off">迎风转向次数</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfJibes" resname="NumberOfJibes">
<source>Number of Jibes</source>
<target state="signed-off">顺风转向次数</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfPenaltyCircles" resname="NumberOfPenaltyCircles">
<source>Number of Penalty Circles</source>
<target state="signed-off">惩罚圈数</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RankGainsOrLosses" resname="RankGainsOrLosses">
<source>Rank Gains or Losses</source>
<target state="signed-off">名次进阶或落后</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="DistanceToStarboardSideAtStart" resname="DistanceToStarboardSideAtStart">
<source>Distance to Starboard Side (% of Length)</source>
<target state="signed-off">与右舷的距离(长度百分比)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfPodiumFinish" resname="NumberOfPodiumFinish">
<source>Number of Podium Finishes</source>
<target state="signed-off">跻身颁奖台次数</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfWins" resname="NumberOfWins">
<source>Number of Wins</source>
<target state="signed-off">获胜次数</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RankGainsOrLossesBetweenFirstMarkAndFinish" resname="RankGainsOrLossesBetweenFirstMarkAndFinish">
<source>Rank Gains or Losses (1st Mark -&gt; Finish)</source>
<target state="signed-off">名次进阶或落后(第一个标志 -&gt; 结束)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="IsTracked" resname="IsTracked">
<source>Is Tracked</source>
<target state="signed-off">是否跟踪</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfCompetitorFixes" resname="NumberOfCompetitorFixes">
<source>Number of Competitor Fixes</source>
<target state="signed-off">参赛队修复次数</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="NumberOfMarkFixes" resname="NumberOfMarkFixes">
<source>Number of Mark Fixes</source>
<target state="signed-off">标志修复次数</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="ManeuverType" resname="ManeuverType">
<source>Maneuver Type</source>
<target state="signed-off">操作类型</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Tack" resname="Tack">
<source>Tack</source>
<target state="signed-off">迎风转向</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SpeedBefore" resname="SpeedBefore">
<source>Speed Before Maneuver</source>
<target state="signed-off">操作前的速度</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SpeedAfter" resname="SpeedAfter">
<source>Speed After Maneuver</source>
<target state="signed-off">操作后的速度</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="DirectionChange" resname="DirectionChange">
<source>Direction Change in Degrees</source>
<target state="signed-off">风向变化角度</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteDirectionChange" resname="AbsoluteDirectionChange">
<source>Absolute Direction Change in Degrees (Positive)</source>
<target state="signed-off">绝对风向变化角度(正向)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="ToSide" resname="ToSide">
<source>To Side (Port / Starboard)</source>
<target state="signed-off">至侧(左舷/右舷)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="ManeuverLoss" resname="ManeuverLoss">
<source>Maneuver Loss</source>
<target state="signed-off">操作损失</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Waypoint" resname="Waypoint">
<source>Waypoint</source>
<target state="signed-off">航路点</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="PassingSide" resname="PassingSide">
<source>Passing Side</source>
<target state="signed-off">绕标侧</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="TackAtStart" resname="TackAtStart">
<source>Tack at Start</source>
<target state="signed-off">起航时迎风转向</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SpeedTenSecondsAfterStart" resname="SpeedTenSecondsAfterStart">
<source>Speed 10s After Start</source>
<target state="signed-off">起航后 10 秒的速度</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RankThirtySecondsAfterStart" resname="RankThirtySecondsAfterStart">
<source>Rank 30s After Start</source>
<target state="signed-off">起航后 30 秒的名次</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindwardDistanceToAdvantageousEndOfLine" resname="WindwardDistanceToAdvantageousEndOfLine">
<source>Windward Distance to Advantageous End of Line</source>
<target state="signed-off">与有利航线终点的上风距离</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="RankAfterHalfOfTheFirstLeg" resname="RankAfterHalfOfTheFirstLeg">
<source>Rank after the half of the first leg</source>
<target state="signed-off">第一航段过半后的名次</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AdvantageousEndOfLine" resname="AdvantageousEndOfLine">
<source>Advantageous End of Line</source>
<target state="signed-off">有利航线终点</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="TimeSpentInSeconds" resname="TimeSpentInSeconds">
<source>Time Spent in Seconds</source>
<target state="signed-off">所用时间(秒)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="MedalRace" resname="MedalRace">
<source>Medal Race</source>
<target state="signed-off">奖牌轮</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindSourceType" resname="WindSourceType">
<source>Wind Source Type</source>
<target state="signed-off">风源类型</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindSourceName" resname="WindSourceName">
<source>Wind Source Name</source>
<target state="signed-off">风源名称</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="windFrom" resname="windFrom">
<source>True Wind Direction (TWD)</source>
<target state="signed-off">实际风向 (TWD)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="windSpeedKnots" resname="windSpeedKnots">
<source>True Wind Speed (kts) </source>
<target state="signed-off">实际风速 (kts) </target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="speedInKnots" resname="speedInKnots">
<source>Speed (kts)</source>
<target state="signed-off">速度 (kts)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="bearing" resname="bearing">
<source>Direction (�T)</source>
<target state="signed-off">方向 (�T)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindTrack" resname="WindTrack">
<source>Wind Track</source>
<target state="signed-off">风力跟踪</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="timeSpentFoiling" resname="timeSpentFoiling">
<source>Time spent foiling</source>
<target state="translated">水翼腾空所用时间</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="yaw" resname="yaw">
<source>Yaw</source>
<target state="signed-off">偏航</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="pitch" resname="pitch">
<source>Pitch</source>
<target state="signed-off">纵摇</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="heel" resname="heel">
<source>Heel</source>
<target state="signed-off">侧倾</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="rideHeight" resname="rideHeight">
<source>Ride Height</source>
<target state="signed-off">行驶高度</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="rideHeightPort" resname="rideHeightPort">
<source>Ride Height Port Hull</source>
<target state="signed-off">左舷船体行驶高度</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="rideHeightStarboard" resname="rideHeightStarboard">
<source>Ride Height Starboard Hull</source>
<target state="signed-off">右舷船体行驶高度</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="IsFoiling" resname="IsFoiling">
<source>Is Foiling</source>
<target state="translated">水翼腾空</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="FoilingDuration" resname="FoilingDuration">
<source>Foiling Duration</source>
<target state="translated">水翼腾空持续时间</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="FoilingDistance" resname="FoilingDistance">
<source>Distance Foiled</source>
<target state="translated">水翼腾空距离</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="TakeoffSpeedInKnotsInKnots" resname="TakeoffSpeedInKnotsInKnots">
<source>Takeoff speed in knots</source>
<target state="signed-off">起航速度(节)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LandingSpeedInKnots" resname="LandingSpeedInKnots">
<source>Landing speed in knots</source>
<target state="signed-off">着陆速度(节)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteTrueWindAngleAtTakeoff" resname="AbsoluteTrueWindAngleAtTakeoff">
<source>Absolute true wind angle (TWA) at takeoff</source>
<target state="signed-off">起航时的绝对实际风向角 (TWA)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteTrueWindAngleAtLanding" resname="AbsoluteTrueWindAngleAtLanding">
<source>Absolute true wind angle (TWA) at landing</source>
<target state="signed-off">着陆时的绝对实际风向角 (TWA)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindStrengthInBeaufortAtTakeoff" resname="WindStrengthInBeaufortAtTakeoff">
<source>Wind strength in beaufort at takeoff</source>
<target state="signed-off">起航时的风力(蒲福风级)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindStrengthInBeaufortAtLanding" resname="WindStrengthInBeaufortAtLanding">
<source>Wind strength in beaufort at landing</source>
<target state="signed-off">着陆时的风力(蒲福风级)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindAtTakeoff" resname="WindAtTakeoff">
<source>Wind at takeoff</source>
<target state="signed-off">起航风</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="WindAtLanding" resname="WindAtLanding">
<source>Wind at landing</source>
<target state="signed-off">着陆风</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="StartsOnLegType" resname="StartsOnLegType">
<source>Type of leg at takeoff</source>
<target state="signed-off">起航航段的类型</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="EndsOnLegType" resname="EndsOnLegType">
<source>Type of leg at landing</source>
<target state="signed-off">着陆航段的类型</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="FoilingSegments" resname="FoilingSegments">
<source>Foiled Segments</source>
<target state="translated">水翼腾空段</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AverageAbsoluteTrueWindAngle" resname="AverageAbsoluteTrueWindAngle">
<source>Average absolute true wind angle</source>
<target state="signed-off">平均绝对实际风向角</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="AbsoluteTrueWindAngle" resname="AbsoluteTrueWindAngle">
<source>Absolute true wind angle (TWA)</source>
<target state="signed-off">绝对实际风向角 (TWA)</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="Wind" resname="Wind">
<source>Wind</source>
<target state="signed-off">风力</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="VMG" resname="VMG">
<source>Velocity Made Good</source>
<target state="signed-off">沿计划航线上的航速</target>
</trans-unit>
</body>
</file>
</xliff>
@@ -83,8 +83,8 @@
<source>Team</source>
<target state="signed-off">团队</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="CompetitorSearchTag" resname="CompetitorSearchTag">
<source>Competitor Search Tag</source>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="SearchTag" resname="SearchTag">
<source>Search Tag</source>
<target>参赛队搜索标记</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="LeaderboardSailingDomainRetrieverChain" resname="LeaderboardSailingDomainRetrieverChain">
@@ -3,20 +3,20 @@ package com.sap.sailing.datamining;
import java.util.ArrayList;
import java.util.Collection;
import com.sap.sailing.datamining.data.ClusterFormatter;
import com.sap.sailing.datamining.impl.data.LinearDoubleClusterGroup;
import com.sap.sailing.datamining.impl.data.PercentageClusterFormatter;
import com.sap.sailing.domain.common.Speed;
import com.sap.sailing.domain.common.impl.KnotSpeedImpl;
import com.sap.sse.datamining.data.Cluster;
import com.sap.sse.datamining.data.ClusterBoundary;
import com.sap.sse.datamining.data.ClusterFormatter;
import com.sap.sse.datamining.data.ClusterGroup;
import com.sap.sse.datamining.impl.data.ClusterWithLowerAndUpperBoundaries;
import com.sap.sse.datamining.impl.data.ClusterWithSingleBoundary;
import com.sap.sse.datamining.impl.data.ComparableClusterBoundary;
import com.sap.sse.datamining.impl.data.ComparisonStrategy;
import com.sap.sse.datamining.impl.data.FixClusterGroup;
import com.sap.sse.datamining.impl.data.LinearDoubleClusterGroup;
import com.sap.sse.datamining.impl.data.LocalizedCluster;
import com.sap.sse.datamining.impl.data.PercentageClusterFormatter;
public class SailingClusterGroups {
@@ -2,6 +2,7 @@ package com.sap.sailing.datamining.data;
import com.sap.sailing.domain.common.Bearing;
import com.sap.sailing.domain.common.NoWindException;
import com.sap.sailing.domain.common.Speed;
import com.sap.sailing.domain.common.SpeedWithBearing;
import com.sap.sailing.domain.common.Wind;
import com.sap.sailing.domain.common.tracking.BravoFix;
@@ -29,4 +30,7 @@ public interface HasBravoFixContext extends HasWindOnTrackedLeg {
default TimePoint getTimePoint() {
return getBravoFix().getTimePoint();
}
@Connector(messageKey="VMG")
Speed getVelocityMadeGood();
}
@@ -1,7 +1,9 @@
package com.sap.sailing.datamining.data;
import com.sap.sailing.domain.base.BoatClass;
import com.sap.sailing.domain.leaderboard.Leaderboard;
import com.sap.sailing.domain.polars.PolarDataService;
import com.sap.sse.datamining.annotations.Connector;
import com.sap.sse.datamining.annotations.Dimension;
public interface HasLeaderboardContext {
@@ -11,4 +13,7 @@ public interface HasLeaderboardContext {
@Dimension(messageKey="Leaderboard", ordinal=1)
String getName();
@Connector(messageKey="BoatClass", ordinal=2)
BoatClass getBoatClass();
}
@@ -5,8 +5,11 @@ import com.sap.sailing.domain.common.Positioned;
import com.sap.sailing.domain.tracking.Maneuver;
import com.sap.sse.common.TimePoint;
import com.sap.sse.common.Timed;
import com.sap.sse.datamining.annotations.Connector;
public interface HasManeuver extends Positioned, Timed {
@Connector
Maneuver getManeuver();
@Override
@@ -3,8 +3,6 @@ package com.sap.sailing.datamining.data;
import com.sap.sailing.domain.common.Distance;
import com.sap.sailing.domain.common.ManeuverType;
import com.sap.sailing.domain.common.NauticalSide;
import com.sap.sailing.domain.common.SpeedWithBearing;
import com.sap.sailing.domain.common.Tack;
import com.sap.sse.datamining.annotations.Connector;
import com.sap.sse.datamining.annotations.Dimension;
import com.sap.sse.datamining.annotations.Statistic;
@@ -13,27 +11,15 @@ public interface HasManeuverContext extends HasWindOnTrackedLeg, HasManeuver, Ha
@Connector(scanForStatistics=false)
HasTrackedLegOfCompetitorContext getTrackedLegOfCompetitorContext();
//TODO Clean-Up:
// Move Dimensions and Statistics to Maneuver and connect to it
@Dimension(messageKey="ManeuverType", ordinal=12)
ManeuverType getManeuverType();
@Dimension(messageKey="Tack", ordinal=13)
Tack getTack();
@Dimension(messageKey="ToSide")
@Dimension(messageKey="ToSide", ordinal=16)
NauticalSide getToSide();
@Connector(messageKey="SpeedBefore", ordinal=0)
SpeedWithBearing getSpeedBefore();
@Connector(messageKey="SpeedAfter", ordinal=1)
SpeedWithBearing getSpeedAfter();
@Statistic(messageKey="DirectionChange", resultDecimals=2, ordinal=2)
Double getDirectionChangeInDegrees();
@Statistic(messageKey="AbsoluteDirectionChange", resultDecimals=2, ordinal=3)
Double getAbsoluteDirectionChangeInDegrees();
@Statistic(messageKey="ManeuverLoss", resultDecimals=0, ordinal=4)
Distance getManeuverLoss();
@@ -2,8 +2,6 @@ package com.sap.sailing.datamining.data;
import com.sap.sailing.domain.base.Waypoint;
import com.sap.sailing.domain.common.NauticalSide;
import com.sap.sailing.domain.common.SpeedWithBearing;
import com.sap.sailing.domain.common.Tack;
import com.sap.sse.datamining.annotations.Connector;
import com.sap.sse.datamining.annotations.Dimension;
import com.sap.sse.datamining.annotations.Statistic;
@@ -11,27 +9,13 @@ import com.sap.sse.datamining.annotations.Statistic;
public interface HasMarkPassingContext extends HasWindOnTrackedLeg, HasManeuver, HasTrackedLegOfCompetitor {
@Connector(scanForStatistics=false)
HasTrackedLegOfCompetitorContext getTrackedLegOfCompetitorContext();
//TODO Clean-Up:
// Move Dimensions and Statistics to Maneuver/MarkPassingManeuver and connect to it
// Find a way to implement HasManeuverContext and HasMarkPassingManeuver with a base class
@Dimension(messageKey="Tack", ordinal=12)
Tack getTack();
@Connector(messageKey="Waypoint", ordinal=13)
@Connector(messageKey="Waypoint", ordinal=14)
Waypoint getWaypoint();
@Dimension(messageKey="PassingSide", ordinal=13)
@Dimension(messageKey="PassingSide", ordinal=15)
NauticalSide getPassingSide();
@Connector(messageKey="SpeedBefore", ordinal=0)
SpeedWithBearing getSpeedBefore();
@Connector(messageKey="SpeedAfter", ordinal=1)
SpeedWithBearing getSpeedAfter();
@Statistic(messageKey="DirectionChange", resultDecimals=2, ordinal=2)
Double getDirectionChangeInDegrees();
@Statistic(messageKey="RelativeScore", ordinal=3, resultDecimals=2)
Double getRelativeRank();
@@ -19,9 +19,6 @@ public interface HasRaceOfCompetitorContext {
@Statistic(messageKey="")
public Competitor getCompetitor();
@Dimension(messageKey="CompetitorSearchTag", ordinal=11) // TODO Clean me: Move Dimension to Competitor when possible
public String getCompetitorSearchTag();
@Dimension(messageKey="TackAtStart", ordinal=12)
public Tack getTackAtStart() throws NoWindException;
@@ -64,13 +61,13 @@ public interface HasRaceOfCompetitorContext {
@Statistic(messageKey="NumberOfManeuvers", resultDecimals=0, ordinal=10)
public int getNumberOfManeuvers();
@Statistic(messageKey="NumberOfTacks", resultDecimals=2, ordinal=11)
@Statistic(messageKey="NumberOfTacks", resultDecimals=0, ordinal=11)
public int getNumberOfTacks();
@Statistic(messageKey="NumberOfJibes", resultDecimals=2, ordinal=12)
@Statistic(messageKey="NumberOfJibes", resultDecimals=0, ordinal=12)
public int getNumberOfJibes();
@Statistic(messageKey="NumberOfPenaltyCircles", resultDecimals=2, ordinal=13)
@Statistic(messageKey="NumberOfPenaltyCircles", resultDecimals=0, ordinal=13)
public int getNumberOfPenaltyCircles();
}
@@ -1,6 +1,5 @@
package com.sap.sailing.datamining.data;
import com.sap.sailing.domain.base.BoatClass;
import com.sap.sailing.domain.base.Competitor;
import com.sap.sse.datamining.annotations.Connector;
import com.sap.sse.datamining.annotations.Dimension;
@@ -14,16 +13,10 @@ public interface HasRaceResultOfCompetitorContext {
@Connector(messageKey="Competitor", ordinal=2)
public Competitor getCompetitor();
@Connector(messageKey="BoatClass", ordinal=3)
BoatClass getBoatClass();
@Dimension(messageKey="Regatta", ordinal=4)
String getRegattaName();
@Dimension(messageKey="CompetitorSearchTag", ordinal=5) // TODO Clean me: Move Dimension to Competitor when possible
public String getCompetitorSearchTag();
@Dimension(messageKey="RelativeScoreInPercent", ordinal=6)
public ClusterDTO getPercentageClusterForRelativeScore();
@@ -14,9 +14,6 @@ public interface HasTrackedLegOfCompetitorContext extends HasWindOnTrackedLeg {
public TrackedLegOfCompetitor getTrackedLegOfCompetitor();
@Dimension(messageKey="CompetitorSearchTag", ordinal=11) // TODO Clean me: Move Dimension to Competitor when possible
public String getCompetitorSearchTag();
@Dimension(messageKey="RelativeScoreInRaceInPercent", ordinal=12)
public ClusterDTO getPercentageClusterForRelativeScoreInRace();
@@ -1,6 +1,5 @@
package com.sap.sailing.datamining.data;
import com.sap.sailing.domain.base.BoatClass;
import com.sap.sailing.domain.base.Competitor;
import com.sap.sailing.domain.base.CourseArea;
import com.sap.sailing.domain.base.Fleet;
@@ -25,9 +24,6 @@ public interface HasTrackedRaceContext {
@Connector(messageKey="CourseArea", ordinal=3)
public CourseArea getCourseArea();
@Connector(messageKey="BoatClass", ordinal=1)
public BoatClass getBoatClass();
@Connector(messageKey="Fleet", ordinal=4)
public Fleet getFleet();
@@ -1,143 +0,0 @@
package com.sap.sailing.datamining.impl.data;
import java.io.Serializable;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import com.sap.sailing.datamining.data.ClusterFormatter;
import com.sap.sse.datamining.data.Cluster;
import com.sap.sse.datamining.data.ClusterBoundary;
import com.sap.sse.datamining.impl.data.AbstractCluster;
import com.sap.sse.datamining.impl.data.AbstractClusterBoundary;
import com.sap.sse.datamining.impl.data.ClusterWithLowerAndUpperBoundaries;
import com.sap.sse.datamining.impl.data.ClusterWithSingleBoundary;
import com.sap.sse.datamining.impl.data.ComparisonStrategy;
import com.sap.sse.datamining.impl.data.LocalizedCluster;
//TODO Clean and move to sse bundle after 49er analysis
public abstract class AbstractClusterFormatter<T extends Serializable> implements ClusterFormatter<T> {
private static final char INFINITE = '\u221e';
private final ClusterBoundariesAccessor boundariesAccessor = new ClusterBoundariesAccessor();
private final BoundaryValueAccessor valueAccessor = new BoundaryValueAccessor();
@Override
public String format(Cluster<T> cluster) {
if (cluster instanceof LocalizedCluster) {
// TODO recursive call format(localizedCluster.getInnerCluster()) after 49er analysis
}
if (cluster instanceof ClusterWithSingleBoundary) {
return formatClusterWithSingleBoundary((ClusterWithSingleBoundary<T>) cluster);
}
if (cluster instanceof ClusterWithLowerAndUpperBoundaries) {
return formatClusterWithLowerAndUpperBoundaries((ClusterWithLowerAndUpperBoundaries<T>) cluster);
}
throw new IllegalArgumentException("Can't format clusters of type " + cluster.getClass().getName());
}
protected String formatClusterWithSingleBoundary(ClusterWithSingleBoundary<T> cluster) {
List<ClusterBoundary<T>> boundaries = boundariesAccessor.getBoundaries(cluster);
if (boundaries == null) {
return "<Unformattable>";
}
ClusterBoundary<T> boundary = boundaries.get(0);
StringBuilder builder = new StringBuilder();
if (boundary.getStrategy() == ComparisonStrategy.LOWER_EQUALS_THAN ||
boundary.getStrategy() == ComparisonStrategy.LOWER_THAN) {
builder.append("-" + INFINITE + " - ");
}
builder.append(formatBoundary(boundary));
if (boundary.getStrategy() == ComparisonStrategy.GREATER_EQUALS_THAN ||
boundary.getStrategy() == ComparisonStrategy.GREATER_THAN) {
builder.append(" - " + INFINITE);
}
return builder.toString();
}
protected String formatClusterWithLowerAndUpperBoundaries(ClusterWithLowerAndUpperBoundaries<T> cluster) {
List<ClusterBoundary<T>> boundaries = boundariesAccessor.getBoundaries(cluster);
if (boundaries == null) {
return "<Unformattable>";
}
return String.format("%s - %s", formatBoundary(boundaries.get(0)), formatBoundary(boundaries.get(1)));
}
protected String formatBoundary(ClusterBoundary<T> boundary) {
String value = formatValue(valueAccessor.getValue((AbstractClusterBoundary<T>) boundary));
if (value == null) {
return "<Unformattable>";
}
StringBuilder builder = new StringBuilder();
ComparisonStrategy strategy = boundary.getStrategy();
if (strategy == ComparisonStrategy.GREATER_EQUALS_THAN || strategy == ComparisonStrategy.GREATER_THAN) {
builder.append(strategy.getSignifier());
}
builder.append(value);
if (strategy == ComparisonStrategy.LOWER_EQUALS_THAN || strategy == ComparisonStrategy.LOWER_THAN) {
builder.append(strategy.getSignifier());
}
return builder.toString();
}
protected abstract String formatValue(T value);
//FIXME Please delete me
private class ClusterBoundariesAccessor {
private static final String boundariesFieldName = "boundaries";
public List<ClusterBoundary<T>> getBoundaries(AbstractCluster<T> cluster) {
List<ClusterBoundary<T>> boundaries = null;
Field boundariesField = null;
try {
boundariesField = AbstractCluster.class.getDeclaredField(boundariesFieldName);
boundariesField.setAccessible(true);
@SuppressWarnings("unchecked")
Collection<ClusterBoundary<T>> reflectedBoundaries = (Collection<ClusterBoundary<T>>) boundariesField.get(cluster);
boundaries = new ArrayList<>();
for (ClusterBoundary<T> boundary : reflectedBoundaries) {
boundaries.add(boundary);
}
} catch (NoSuchFieldException | SecurityException | IllegalArgumentException | IllegalAccessException e) {
} finally {
if (boundariesField != null) {
boundariesField.setAccessible(false);
}
}
return boundaries;
}
}
//FIXME Please delete me
private class BoundaryValueAccessor {
private static final String valueFieldName = "boundaryValue";
@SuppressWarnings("unchecked")
public T getValue(AbstractClusterBoundary<T> boundary) {
T value = null;
Field valueField = null;
try {
valueField = AbstractClusterBoundary.class.getDeclaredField(valueFieldName);
valueField.setAccessible(true);
value = (T) valueField.get(boundary);
} catch (NoSuchFieldException | SecurityException | IllegalArgumentException | IllegalAccessException e) {
} finally {
if (valueField != null) {
valueField.setAccessible(false);
}
}
return value;
}
}
}
@@ -6,12 +6,14 @@ import com.sap.sailing.domain.base.Competitor;
import com.sap.sailing.domain.common.Bearing;
import com.sap.sailing.domain.common.NoWindException;
import com.sap.sailing.domain.common.Position;
import com.sap.sailing.domain.common.Speed;
import com.sap.sailing.domain.common.SpeedWithBearing;
import com.sap.sailing.domain.common.Wind;
import com.sap.sailing.domain.common.tracking.BravoFix;
import com.sap.sailing.domain.common.tracking.GPSFixMoving;
import com.sap.sailing.domain.tracking.GPSFixTrack;
import com.sap.sailing.domain.tracking.TrackedRace;
import com.sap.sailing.domain.tracking.WindPositionMode;
public class BravoFixWithContext implements HasBravoFixContext {
private static final long serialVersionUID = -4537126043228674949L;
@@ -51,6 +53,11 @@ public class BravoFixWithContext implements HasBravoFixContext {
return getGpsFixTrack().getEstimatedSpeed(getTimePoint());
}
@Override
public Speed getVelocityMadeGood() {
return getTrackedLegOfCompetitorContext().getTrackedLegOfCompetitor().getVelocityMadeGood(getTimePoint(), WindPositionMode.EXACT);
}
@Override
public Wind getWind() {
return getTrackedRace().getWind(getGpsFixTrack().getEstimatedPosition(getTimePoint(), /* extrapolate */ true), getTimePoint());
@@ -1,6 +1,7 @@
package com.sap.sailing.datamining.impl.data;
import com.sap.sailing.datamining.data.HasLeaderboardContext;
import com.sap.sailing.domain.base.BoatClass;
import com.sap.sailing.domain.leaderboard.Leaderboard;
import com.sap.sailing.domain.polars.PolarDataService;
@@ -17,6 +18,11 @@ public class LeaderboardWithContext implements HasLeaderboardContext {
public Leaderboard getLeaderboard() {
return leaderboard;
}
@Override
public BoatClass getBoatClass() {
return getLeaderboard().getBoatClass();
}
@Override
public PolarDataService getPolarDataService() {
@@ -5,8 +5,6 @@ import com.sap.sailing.datamining.data.HasTrackedLegOfCompetitorContext;
import com.sap.sailing.domain.common.Distance;
import com.sap.sailing.domain.common.ManeuverType;
import com.sap.sailing.domain.common.NauticalSide;
import com.sap.sailing.domain.common.SpeedWithBearing;
import com.sap.sailing.domain.common.Tack;
import com.sap.sailing.domain.common.Wind;
import com.sap.sailing.domain.tracking.Maneuver;
@@ -37,35 +35,15 @@ public class ManeuverWithContext implements HasManeuverContext {
}
@Override
public Tack getTack() {
return getManeuver().getNewTack();
}
@Override
public SpeedWithBearing getSpeedBefore() {
return getManeuver().getSpeedWithBearingBefore();
}
@Override
public SpeedWithBearing getSpeedAfter() {
return getManeuver().getSpeedWithBearingAfter();
}
@Override
public Double getDirectionChangeInDegrees() {
return getManeuver().getDirectionChangeInDegrees();
public NauticalSide getToSide() {
return getManeuver().getDirectionChangeInDegrees() >= 0 ? NauticalSide.STARBOARD : NauticalSide.PORT;
}
@Override
public Double getAbsoluteDirectionChangeInDegrees() {
return Math.abs(getManeuver().getDirectionChangeInDegrees());
}
@Override
public NauticalSide getToSide() {
return getManeuver().getDirectionChangeInDegrees() >= 0 ? NauticalSide.STARBOARD : NauticalSide.PORT;
}
@Override
public Distance getManeuverLoss() {
return getManeuver().getManeuverLoss();
@@ -5,8 +5,6 @@ import com.sap.sailing.datamining.data.HasTrackedLegOfCompetitorContext;
import com.sap.sailing.domain.base.Competitor;
import com.sap.sailing.domain.base.Waypoint;
import com.sap.sailing.domain.common.NauticalSide;
import com.sap.sailing.domain.common.SpeedWithBearing;
import com.sap.sailing.domain.common.Tack;
import com.sap.sailing.domain.common.Wind;
import com.sap.sailing.domain.leaderboard.Leaderboard;
import com.sap.sailing.domain.tracking.MarkPassingManeuver;
@@ -36,11 +34,6 @@ public class MarkPassingWithContext implements HasMarkPassingContext {
public MarkPassingManeuver getManeuver() {
return maneuver;
}
@Override
public Tack getTack() {
return getManeuver().getNewTack();
}
@Override
public Waypoint getWaypoint() {
@@ -52,21 +45,6 @@ public class MarkPassingWithContext implements HasMarkPassingContext {
return getManeuver().getSide();
}
@Override
public SpeedWithBearing getSpeedBefore() {
return getManeuver().getSpeedWithBearingBefore();
}
@Override
public SpeedWithBearing getSpeedAfter() {
return getManeuver().getSpeedWithBearingAfter();
}
@Override
public Double getDirectionChangeInDegrees() {
return getManeuver().getDirectionChangeInDegrees();
}
@Override
public Double getRelativeRank() {
Leaderboard leaderboard = getTrackedLegOfCompetitorContext().getTrackedLegContext().getTrackedRaceContext().getLeaderboardContext().getLeaderboard();
@@ -52,11 +52,6 @@ public class RaceOfCompetitorWithContext implements HasRaceOfCompetitorContext {
public Competitor getCompetitor() {
return competitor;
}
@Override
public String getCompetitorSearchTag() {
return getCompetitor().getSearchTag();
}
@Override
public Tack getTackAtStart() throws NoWindException {
@@ -9,7 +9,6 @@ import com.sap.sailing.datamining.Activator;
import com.sap.sailing.datamining.SailingClusterGroups;
import com.sap.sailing.datamining.data.HasLeaderboardContext;
import com.sap.sailing.datamining.data.HasRaceResultOfCompetitorContext;
import com.sap.sailing.domain.base.BoatClass;
import com.sap.sailing.domain.base.Competitor;
import com.sap.sailing.domain.base.Leg;
import com.sap.sailing.domain.base.RaceColumn;
@@ -66,22 +65,12 @@ public class RaceResultOfCompetitorWithContext implements HasRaceResultOfCompeti
return competitor;
}
@Override
public BoatClass getBoatClass() {
return getLeaderboard().getBoatClass();
}
@Override
public String getRegattaName() {
Leaderboard leaderboard = getLeaderboard();;
final String result = leaderboard.getName();
return result;
}
@Override
public String getCompetitorSearchTag() {
return getCompetitor().getSearchTag();
}
@Override
public ClusterDTO getPercentageClusterForRelativeScore() {
@@ -51,11 +51,6 @@ public class TrackedLegOfCompetitorWithContext implements HasTrackedLegOfCompeti
public Competitor getCompetitor() {
return competitor;
}
@Override
public String getCompetitorSearchTag() {
return getCompetitor().getSearchTag();
}
@Override
public ClusterDTO getPercentageClusterForRelativeScoreInRace() {
@@ -4,7 +4,6 @@ import java.util.Calendar;
import com.sap.sailing.datamining.data.HasLeaderboardContext;
import com.sap.sailing.datamining.data.HasTrackedRaceContext;
import com.sap.sailing.domain.base.BoatClass;
import com.sap.sailing.domain.base.Competitor;
import com.sap.sailing.domain.base.CourseArea;
import com.sap.sailing.domain.base.Fleet;
@@ -53,11 +52,6 @@ public class TrackedRaceWithContext implements HasTrackedRaceContext {
return getRegatta().getDefaultCourseArea();
}
@Override
public BoatClass getBoatClass() {
return getRegatta().getBoatClass();
}
@Override
public TrackedRace getTrackedRace() {
return trackedRace;
@@ -1,5 +1,7 @@
package com.sap.sailing.domain.common;
import com.sap.sailing.domain.common.impl.WindSourceWithAdditionalID;
/**
* Possible sources for wind data. Used to key and select between different {@link WindTrack}s. Literals
* are given in descending order of precedence. Particularly, the {@link #COURSE_BASED} source should
@@ -43,7 +45,13 @@ public enum WindSourceType {
* their measures are stored in the race log.
*
*/
RACECOMMITTEE(false, 0.9, /* useSpeed */ true);
RACECOMMITTEE(false, 0.9, /* useSpeed */ true),
/**
* Like {@link #COMBINED}, only that when combined with an ID into a {@link WindSourceWithAdditionalID} then the
* position for the wind is taken to be the middle of the tracked leg whose number is identified by the ID.
*/
LEG_MIDDLE(/* can be stored */ false, /* base confidence */ 0.9, /* useSpeed */ true);
private final boolean canBeStored;
@@ -5,49 +5,79 @@ import java.util.Collections;
import java.util.List;
/**
* Metadata that defines the column structure of {@link com.sap.sailing.domain.common.tracking.DoubleVectorFix}es when imported.
* Metadata that defines the column structure of {@link com.sap.sailing.domain.common.tracking.DoubleVectorFix}es when
* imported.
*
* The current implementation only stores a subset of the information available during the import.
*/
public enum BravoSensorDataMetadata {
INSTANCE;
private static final String RIDE_HEIGHT = "RideHeight";
private static final String RIDE_HEIGHT_PORT_HULL = "RideHeightPortHull";
private static final String RIDE_HEIGHT_STBD_HULL = "RideHeightStbdHull";
private static final String YAW = "ImuSensor_Yaw";
private static final String ROLL = "ImuSensor_Roll";
private static final String HEEL = "Heel";
private static final String PITCH = "ImuSensor_Pitch";
private final int HEADER_COLUMN_OFFSET = 3;
private final List<String> columns = Collections.unmodifiableList(Arrays.asList(RIDE_HEIGHT, RIDE_HEIGHT_PORT_HULL,
RIDE_HEIGHT_STBD_HULL, "Heel", "Trim", "ImuSensor_GyroX", "ImuSensor_GyroY", "ImuSensor_GyroZ",
PITCH, ROLL, YAW, "ImuSensor_LinearAccX", "ImuSensor_LinearAccY",
"ImuSensor_LinearAccZ", "Hb_Z", "Dn_Z", "Db_Z", "LKF_ride_hgh", "LKF_ride_hgh_Position",
"LKF_ride_hgh_Velocity", "LKF_ride_hgh_Acceleration", "LKF_ride_hgh_PositionError",
"LKF_ride_hgh_VelocityError", "LKF_ride_hgh_AccelerationError", "Gps_Gga_PosFixTime", "Gps_Gga_Lat",
"Gps_Gga_Lon", "Gps_Gga_QI", "Gps_Gga_HDOP", "Gps_Gga_AntHeight", "Gps_Vtg_TMG", "Gps_Vtg_SOGKnots",
"Gps_Rmc_MagVar", "Gps_EastVelocity", "Gps_NorthVelocity", "Gps_UpVelocity", "BravoNet_Node0x0A0_Ch0",
"BravoNet_Node0x0A0_Voltage", "BravoNet_Node0x0A0_Temperature", "BravoNet_Node0x0A0_Current"));
public final int rideHeightColumn = getColumnIndex(RIDE_HEIGHT);
public final int rideHeightPortHullColumn = getColumnIndex(RIDE_HEIGHT_PORT_HULL);
public final int rideHeightStarboardHullColumn = getColumnIndex(RIDE_HEIGHT_STBD_HULL);
public final int pitchColumn = getColumnIndex(PITCH);
public final int rollColumn = getColumnIndex(ROLL);
public final int yawColumn = getColumnIndex(YAW);
public final int columnCount = columns.size();
/**
*
* Available information in file: <br/>
* The columns field defines which information will be loaded into the system
*
*/
private final List<String> fileColumns = Collections.unmodifiableList(Arrays.asList( //
"RideHeight", RIDE_HEIGHT_PORT_HULL, RIDE_HEIGHT_STBD_HULL, HEEL, "Trim", "ImuSensor_GyroX",
"ImuSensor_GyroY", "ImuSensor_GyroZ", PITCH, "ImuSensor_Roll", "ImuSensor_Yaw", "ImuSensor_LinearAccX",
"ImuSensor_LinearAccY", "ImuSensor_LinearAccZ",
"Hb_Z", "Dn_Z", "Db_Z", "LKF_ride_hgh", "LKF_ride_hgh_Position", "LKF_ride_hgh_Velocity",
"LKF_ride_hgh_Acceleration", "LKF_ride_hgh_PositionError", "LKF_ride_hgh_VelocityError",
"LKF_ride_hgh_AccelerationError", "Gps_Gga_PosFixTime", "Gps_Gga_Lat", "Gps_Gga_Lon", "Gps_Gga_QI",
"Gps_Gga_HDOP", "Gps_Gga_AntHeight", "Gps_Vtg_TMG", "Gps_Vtg_SOGKnots", "Gps_Rmc_MagVar", "Gps_EastVelocity",
"Gps_NorthVelocity", "Gps_UpVelocity", "BravoNet_Node0x0A0_Ch0", "BravoNet_Node0x0A0_Voltage",
"BravoNet_Node0x0A0_Temperature", "BravoNet_Node0x0A0_Current"
));
public List<String> getColumns() {
return columns;
private final List<String> trackColumns = Collections.unmodifiableList(Arrays.asList( //
RIDE_HEIGHT_PORT_HULL, //
RIDE_HEIGHT_STBD_HULL, //
HEEL, //
PITCH //
));
public final int trackColumnCount = trackColumns.size();
public final int rideHeightPortHullColumn = getTrackColumnIndex(RIDE_HEIGHT_PORT_HULL);
public final int rideHeightStarboardHullColumn = getTrackColumnIndex(RIDE_HEIGHT_STBD_HULL);
public final int heelColumn = getTrackColumnIndex(HEEL);
public final int pitchColumn = getTrackColumnIndex(PITCH);
/**
* The fields available in the import file
*
* @return
*/
public List<String> getFileColumns() {
return fileColumns;
}
public boolean hasColumn(String columnName) {
return columns.contains(columnName);
/**
* The fields to be loaded into a track
*
* @return
*/
public List<String> getTrackColumns() {
return trackColumns;
}
public int getColumnIndex(String columnName) {
return columns.indexOf(columnName);
public boolean trackHasColumn(String columnName) {
return trackColumns.contains(columnName);
}
public int getTrackColumnIndex(String columnName) {
return trackColumns.indexOf(columnName);
}
public int getHeaderColumnOffset() {
return HEADER_COLUMN_OFFSET;
}
@@ -33,9 +33,7 @@ public interface BravoFix extends SensorFix {
@Statistic(messageKey="pitch", resultDecimals=1)
double getPitch();
@Statistic(messageKey="yaw", resultDecimals=1)
double getYaw();
@Statistic(messageKey = "heel", resultDecimals = 1)
double getHeel();
@Statistic(messageKey="roll", resultDecimals=1)
double getRoll();
}
@@ -6,23 +6,39 @@ import com.sap.sailing.domain.common.sensordata.BravoSensorDataMetadata;
import com.sap.sailing.domain.common.tracking.BravoFix;
import com.sap.sailing.domain.common.tracking.DoubleVectorFix;
import com.sap.sse.common.TimePoint;
import com.sap.sse.common.Util;
/**
* Implementation of {@link BravoFix} that wraps a {@link DoubleVectorFix} which holds the actual sensor data.
*/
public class BravoFixImpl implements BravoFix {
private static final long serialVersionUID = 2033254212013221160L;
private final DoubleVectorFix fix;
private final MeterDistance computedRideHeight;
private final MeterDistance rideHeightPortHull;
private final MeterDistance rideHeightStarboardHull;
private final double pitch;
private final double heel;
private final boolean computedIsFoiling;
public BravoFixImpl(DoubleVectorFix fix) {
this.fix = fix;
pitch = fix.get(BravoSensorDataMetadata.INSTANCE.pitchColumn);
heel = fix.get(BravoSensorDataMetadata.INSTANCE.heelColumn);
double rideHeightPortHullasDouble = fix.get(BravoSensorDataMetadata.INSTANCE.rideHeightPortHullColumn);
double rideHeightStarboardHullasDouble = fix
.get(BravoSensorDataMetadata.INSTANCE.rideHeightStarboardHullColumn);
rideHeightPortHull = new MeterDistance(rideHeightPortHullasDouble);
rideHeightStarboardHull = new MeterDistance(rideHeightStarboardHullasDouble);
computedRideHeight = new MeterDistance(Math.min(rideHeightPortHullasDouble, rideHeightStarboardHullasDouble));
computedIsFoiling = computedRideHeight.compareTo(MIN_FOILING_HEIGHT_THRESHOLD) >= 0;
}
@Override
public double get(String valueName) {
int index = BravoSensorDataMetadata.INSTANCE.getColumnIndex(valueName);
int index = BravoSensorDataMetadata.INSTANCE.getTrackColumnIndex(valueName);
if (index < 0) {
throw new IllegalArgumentException("Unknown value \"" + valueName + "\" for " + getClass().getSimpleName());
}
@@ -36,36 +52,31 @@ public class BravoFixImpl implements BravoFix {
@Override
public Distance getRideHeight() {
return Util.min(getRideHeightPortHull(), getRideHeightStarboardHull());
return computedRideHeight;
}
@Override
public Distance getRideHeightPortHull() {
return new MeterDistance(fix.get(BravoSensorDataMetadata.INSTANCE.rideHeightPortHullColumn));
return rideHeightPortHull;
}
@Override
public Distance getRideHeightStarboardHull() {
return new MeterDistance(fix.get(BravoSensorDataMetadata.INSTANCE.rideHeightStarboardHullColumn));
return rideHeightStarboardHull;
}
@Override
public boolean isFoiling() {
return getRideHeight().compareTo(MIN_FOILING_HEIGHT_THRESHOLD) >= 0;
return computedIsFoiling;
}
@Override
public double getPitch() {
return fix.get(BravoSensorDataMetadata.INSTANCE.pitchColumn);
return pitch;
}
@Override
public double getYaw() {
return fix.get(BravoSensorDataMetadata.INSTANCE.yawColumn);
}
@Override
public double getRoll() {
return fix.get(BravoSensorDataMetadata.INSTANCE.rollColumn);
public double getHeel() {
return heel;
}
}
@@ -1,12 +1,11 @@
package com.sap.sailing.domain.persistence;
import java.net.MalformedURLException;
import java.net.URISyntaxException;
import java.net.URL;
import java.util.Collection;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
import java.util.concurrent.ExecutionException;
import java.util.function.Consumer;
import com.mongodb.DBObject;
@@ -31,11 +30,7 @@ import com.sap.sailing.domain.leaderboard.LeaderboardGroupResolver;
import com.sap.sailing.domain.leaderboard.LeaderboardRegistry;
import com.sap.sailing.domain.racelog.RaceLogIdentifier;
import com.sap.sailing.domain.regattalike.RegattaLikeIdentifier;
import com.sap.sailing.domain.tracking.RaceHandle;
import com.sap.sailing.domain.tracking.RaceTracker;
import com.sap.sailing.domain.tracking.RaceTrackingConnectivityParameters;
import com.sap.sailing.domain.tracking.TrackedRace;
import com.sap.sailing.domain.tracking.TrackedRegatta;
import com.sap.sailing.domain.tracking.TrackedRegattaRegistry;
import com.sap.sailing.domain.tracking.WindTrack;
import com.sap.sse.common.NoCorrespondingServiceRegisteredException;
@@ -145,14 +140,38 @@ public interface DomainObjectFactory {
Map<String, Set<URL>> loadResultUrls();
/**
* Returned by {@link DomainObjectFactory#loadConnectivityParametersForRacesToRestore(Consumer)}.
*
* @author Axel Uhl (D043530)
*
*/
static interface ConnectivityParametersLoadingResult {
/**
* @return the number of parameter sets that were loaded from the persistent store; each of these parameter sets
* describes for one race how it is to be loaded / tracked.
*/
int getNumberOfParametersToLoad();
/**
* For each set of parameters obtained from the persistent store,
* {@link DomainObjectFactory#loadConnectivityParametersForRacesToRestore(Consumer)} invokes a callback. This
* method will return only after all these callbacks have been issued for all parameters loaded from the
* persistent store.
* <p>
*
* Note that a callback implementation may itself trigger background actions. This method does not know about
* those background actions and hence may return before those background actions have completed.
*/
void waitForCompletionOfCallbacksForAllParameters() throws InterruptedException, ExecutionException;
}
/**
* Loads all {@link RaceTrackingConnectivityParameters} objects from the database telling how to re-load those races
* that were {@link MongoObjectFactory#addConnectivityParametersForRaceToRestore(RaceTrackingConnectivityParameters)
* marked as to be restored} before the server got re-started. Callers that would like to use the result to
* re-connect to those races should take care not to flood servers with requests. Instead, ideally, callers would
* monitor the loading {@link TrackedRace#getStatus() status} or the resulting {@link TrackedRace}s (see
* {@link RaceTracker#getRaceHandle()}, {@link RaceHandle#getRace(long)}, {@link RaceHandle#getTrackedRegatta()} and
* {@link TrackedRegatta#getTrackedRace(RaceDefinition)}.
* marked as to be restored} before the server got re-started. Callers pass a {@code callback} that is invoked for
* each parameters object retrieved from the persistent store. The call returns immediately; loading the parameters
* happens in a background thread.
*
* @param callback
* invoked for each connectivity params object successfully resolved; this pattern is preferred over a
@@ -171,6 +190,6 @@ public interface DomainObjectFactory {
* @see MongoObjectFactory#addConnectivityParametersForRaceToRestore(RaceTrackingConnectivityParameters)
* @see MongoObjectFactory#removeConnectivityParametersForRaceToRestore(RaceTrackingConnectivityParameters)
*/
int loadConnectivityParametersForRacesToRestore(Consumer<RaceTrackingConnectivityParameters> callback)
throws MalformedURLException, URISyntaxException;
ConnectivityParametersLoadingResult loadConnectivityParametersForRacesToRestore(
Consumer<RaceTrackingConnectivityParameters> callback);
}
@@ -2,7 +2,6 @@ package com.sap.sailing.domain.persistence.impl;
import java.io.Serializable;
import java.net.MalformedURLException;
import java.net.URISyntaxException;
import java.net.URL;
import java.util.ArrayList;
import java.util.Collection;
@@ -15,6 +14,10 @@ import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
import java.util.UUID;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.FutureTask;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.function.Consumer;
import java.util.logging.Level;
import java.util.logging.Logger;
@@ -231,6 +234,7 @@ import com.sap.sse.shared.media.ImageDescriptor;
import com.sap.sse.shared.media.VideoDescriptor;
import com.sap.sse.shared.media.impl.ImageDescriptorImpl;
import com.sap.sse.shared.media.impl.VideoDescriptorImpl;
import com.sap.sse.util.ThreadPoolUtil;
public class DomainObjectFactoryImpl implements DomainObjectFactory {
private static final Logger logger = Logger.getLogger(DomainObjectFactoryImpl.class.getName());
@@ -2285,27 +2289,60 @@ public class DomainObjectFactoryImpl implements DomainObjectFactory {
}
@Override
public int loadConnectivityParametersForRacesToRestore(Consumer<RaceTrackingConnectivityParameters> callback) throws MalformedURLException, URISyntaxException {
public ConnectivityParametersLoadingResult loadConnectivityParametersForRacesToRestore(Consumer<RaceTrackingConnectivityParameters> callback) {
final DBCollection collection = database.getCollection(CollectionNames.CONNECTIVITY_PARAMS_FOR_RACES_TO_BE_RESTORED.name());
int count = 0;
for (final DBObject o : collection.find()) {
count++;
final String type = (String) o.get(TypeBasedServiceFinder.TYPE);
raceTrackingConnectivityParamsServiceFinder.applyServiceWhenAvailable(type, connectivityParamsPersistenceService -> {
final Map<String, Object> map = new HashMap<>();
for (final String key : o.keySet()) {
if (!key.equals(TypeBasedServiceFinder.TYPE)) {
map.put(key, o.get(key));
final DBCursor cursor = collection.find();
final int count = cursor.count();
logger.info("Restoring "+count+" races");
final List<DBObject> restoreParameters = new ArrayList<>();
// consume all elements quickly to avoid cursor/DB timeouts while restoring many races;
// MongoDB cursors by default time out after ten minutes if no more batch (of by default 100 elements)
// has been requested during this time.
Util.addAll(cursor, restoreParameters);
logger.info("Obtained "+restoreParameters.size()+" race parameters to restore");
final ScheduledExecutorService backgroundExecutor = ThreadPoolUtil.INSTANCE.getDefaultBackgroundTaskThreadPoolExecutor();
final Set<FutureTask<Void>> waiters = new HashSet<>();
logger.info("Starting to restore races");
final AtomicInteger i = new AtomicInteger();
for (final DBObject o : restoreParameters) {
final FutureTask<Void> waiter = new FutureTask<>(() -> {
final String type = (String) o.get(TypeBasedServiceFinder.TYPE);
final int finalI = i.incrementAndGet();
logger.info("Applying to restore race #"+ finalI +"/"+count+" of type "+type);
raceTrackingConnectivityParamsServiceFinder.applyServiceWhenAvailable(type, connectivityParamsPersistenceService -> {
logger.info("Restoring race #"+ finalI +"/"+count+" of type "+type);
final Map<String, Object> map = new HashMap<>();
for (final String key : o.keySet()) {
if (!key.equals(TypeBasedServiceFinder.TYPE)) {
map.put(key, o.get(key));
}
}
}
try {
callback.accept(connectivityParamsPersistenceService.mapTo(map));
} catch (Exception e) {
logger.log(Level.SEVERE, "Exception trying to load race restore connectivity parameters "
+ o + " with handler " + connectivityParamsPersistenceService, e);
}
});
try {
callback.accept(connectivityParamsPersistenceService.mapTo(map));
logger.info("Done restoring race #"+ finalI +"/"+count+" of type "+type);
} catch (Exception e) {
logger.log(Level.SEVERE, "Exception trying to load race #"+ finalI +"/"+count+" of type "+type+
" from restore connectivity parameters "
+ o + " with handler " + connectivityParamsPersistenceService, e);
}
});
}, /* void result */ null);
waiters.add(waiter);
backgroundExecutor.execute(waiter);
}
return count;
logger.info("Done restoring races; restored "+i+" of "+count+" races");
return new ConnectivityParametersLoadingResult() {
@Override
public int getNumberOfParametersToLoad() {
return count;
}
@Override
public void waitForCompletionOfCallbacksForAllParameters() throws InterruptedException, ExecutionException {
for (final FutureTask<Void> waiter : waiters) {
waiter.get();
}
}
};
}
}
@@ -513,8 +513,7 @@ public class SensorFixStoreAndLoadTest {
}
private DoubleVectorFix createBravoDoubleVectorFixWithRideHeight(long timestamp, double rideHeight) {
double[] fixData = new double[BravoSensorDataMetadata.INSTANCE.columnCount];
fixData[BravoSensorDataMetadata.INSTANCE.rideHeightColumn] = rideHeight;
double[] fixData = new double[BravoSensorDataMetadata.INSTANCE.trackColumnCount];
// fill the port/starboard columns as well because their minimum defines the true ride height
fixData[BravoSensorDataMetadata.INSTANCE.rideHeightPortHullColumn] = rideHeight;
fixData[BravoSensorDataMetadata.INSTANCE.rideHeightStarboardHullColumn] = rideHeight;
@@ -330,8 +330,9 @@ public class SensorFixStoreTest {
}
private DoubleVectorFix createBravoDoubleVectorFixWithRideHeight(long timestamp, double rideHeight) {
double[] fixData = new double[BravoSensorDataMetadata.INSTANCE.columnCount];
fixData[BravoSensorDataMetadata.INSTANCE.rideHeightColumn] = rideHeight;
double[] fixData = new double[BravoSensorDataMetadata.INSTANCE.trackColumnCount];
fixData[BravoSensorDataMetadata.INSTANCE.rideHeightPortHullColumn] = rideHeight;
fixData[BravoSensorDataMetadata.INSTANCE.rideHeightStarboardHullColumn] = rideHeight;
return new DoubleVectorFixImpl(new MillisecondsTimePoint(timestamp), fixData);
}
}
@@ -0,0 +1,12 @@
trackingInvitationFor=Invitación de seguimiento para
scanQRCodeOrVisitUrlToRegisterAs=Asegúrese de tener instalada la aplicación {0}. Escanee a continuación el siguiente código QR o haga clic en el enlace con su smartphone para registrarse como
welcomeTo=Bienvenido a
iOSUsers=Inicie la aplicación iOS
androidUsers=Inicie la aplicación Android
alternativelyVisitThisLink=Si está leyendo este correo electrónico en el dispositivo con la aplicación ya instalada, haga clic debajo para empezar:
buoyTender=balizador
appStoreInstallText=Si todavía no tiene instalada la aplicación, instálela:
appIos=Instalar la aplicación iOS
appAndroid=Instalar la aplicación Android
buoyPingerAppName=SAP Sailing Buoy Pinger
sailInSightAppName=SAP Sail InSight
@@ -0,0 +1,12 @@
trackingInvitationFor=Invitation de suivi pour
scanQRCodeOrVisitUrlToRegisterAs=Si vous avez bien installé l''application {0}, scannez le code QR suivant ou cliquez sur le lien sur votre smartphone pour vous enregistrer comme
welcomeTo=Bienvenue dans
iOSUsers=Lancer l''application iOS
androidUsers=Lancer l''application Android
alternativelyVisitThisLink=Si vous consultez ce mail sur l''appareil sur lequel l''application est déjà installée, cliquez simplement sur le bouton ci-dessous pour commencer :
buoyTender=Navire baliseur
appStoreInstallText=Si vous n''avez pas encore l''application, voici les liens pour l''installer :
appIos=Installer l''application iOS
appAndroid=Installer l''application Android
buoyPingerAppName=SAP Sailing Buoy Pinger
sailInSightAppName=SAP Sail InSight
@@ -0,0 +1,12 @@
trackingInvitationFor=Convite de rastreamento para
scanQRCodeOrVisitUrlToRegisterAs=Certifique-se de que tem o app {0} instalado. Depois, digitalize o QRCode seguinte ou clique no link utilizando o seu smartphone para se registrar como
welcomeTo=Bem-vindo(a) a
iOSUsers=Iniciar app iOS
androidUsers=Iniciar app Android
alternativelyVisitThisLink=Se você estiver lendo esse e-mail no dispositivo com o app já instalado, clique embaixo para iniciar:
buoyTender=navio-balizador
appStoreInstallText=Se você ainda não tiver o app, instale-o:
appIos=Instalar app iOS
appAndroid=Instalar app Android
buoyPingerAppName=SAP Sailing Buoy Pinger
sailInSightAppName=SAP Sail InSight
@@ -0,0 +1,64 @@
<?xml version="1.0" encoding="UTF-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
<file datatype="javapropertyresourcebundle" date="2017-03-03T16:45:41Z" original="/usr/sap/ljs/app/Converter_7335190261158680380/java/com.sap.sailing.domain.racelogtrackingadapter/resources/stringmessages/TrackingStringMessages.properties" source-language="en" target-language="es">
<header>
<skl>
<internal-file crc="064477f4b22ea4cc8cbdaab36795b9a4" form="base64">H4sIAAAAAAAAAF1RQU7DQAy85xW+cakQ50o5FCSkSEBLk8J5m7iN1c16tXZbIsTf2U1SWnHzzjjjmYkGUx/I7Qt3IjVK7J455NWEwhWGHYdMauPe10/c4DJ8kJBugq14jXsSxbCQ/NUcEOQYEHo+QmtOCNoifD/8wMJ7ICdqrMXmHqoWHSS9YWHH1vI5XRzlgQPUlurDwFpyBzhKoqNsAOlMUN+yi+oMYToPRrIz2po7rDj/HKe4kNGy3AgGyUuN30F8JjOZcU1gam6pxQiNtI2aLmY/oe2HsFVL8hKt5MVuiGdizICmSb40ctAZssBjogZPVCOcSdvhneIbm9b7aw0zEOq87aesW4wlpEiS3Myz7ZH7Cl2DIU8j6DBnxvtSOWAxylT4pRdLDbs7vfaejvaoM/AWjeDl8DxJFCz5pHCtxPupgj/qtpJkYhXTxl/t/ZvpMC8XKyhj6lTBY7I40plErHAl7Vv9vwoTnv0Cs+RzW3sCAAA=</internal-file>
</skl>
<phase-group>
<phase company-name="SAP AG" date="2016-12-16T08:45:26Z" phase-name="file-creation" process-name="file-creation" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter"/>
</phase-group>
<tool tool-company="SAP AG" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter" tool-name="TEW: Javascript .properties Flexible File Converter" tool-version="1.1.0"/>
</header>
<body>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="trackingInvitationFor" resname="trackingInvitationFor">
<source>Tracking Invitation for</source>
<target state="signed-off">Invitación de seguimiento para</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="scanQRCodeOrVisitUrlToRegisterAs" resname="scanQRCodeOrVisitUrlToRegisterAs">
<source>Make sure you have the <ph id="1">{0}</ph> App installed. Then scan the following QRCode or click the link using your smartphone to register as</source>
<target state="signed-off">Asegúrese de tener instalada la aplicación <ph id="1">{0}</ph>. Escanee a continuación el siguiente código QR o haga clic en el enlace con su smartphone para registrarse como</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="welcomeTo" resname="welcomeTo">
<source>Welcome to</source>
<target state="signed-off">Bienvenido a</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="iOSUsers" resname="iOSUsers">
<source>Start iOS App</source>
<target state="signed-off">Inicie la aplicación iOS</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="androidUsers" resname="androidUsers">
<source>Start Android App</source>
<target state="signed-off">Inicie la aplicación Android</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="alternativelyVisitThisLink" resname="alternativelyVisitThisLink">
<source>If you are reading this mail on the device with the App already installed, simply click below to start:</source>
<target state="signed-off">Si está leyendo este correo electrónico en el dispositivo con la aplicación ya instalada, haga clic debajo para empezar:</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="buoyTender" resname="buoyTender">
<source>buoy tender</source>
<target state="signed-off">balizador</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="appStoreInstallText" resname="appStoreInstallText">
<source>If you don't have the App yet, please install:</source>
<target state="signed-off">Si todavía no tiene instalada la aplicación, instálela:</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="appIos" resname="appIos">
<source>Install iOS App</source>
<target state="signed-off">Instalar la aplicación iOS</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="appAndroid" resname="appAndroid">
<source>Install Android App</source>
<target state="signed-off">Instalar la aplicación Android</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="buoyPingerAppName" resname="buoyPingerAppName">
<source>SAP Sailing Buoy Pinger</source>
<target state="signed-off">SAP Sailing Buoy Pinger</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="sailInSightAppName" resname="sailInSightAppName">
<source>SAP Sail InSight</source>
<target state="signed-off">SAP Sail InSight</target>
</trans-unit>
</body>
</file>
</xliff>
@@ -0,0 +1,64 @@
<?xml version="1.0" encoding="UTF-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
<file datatype="javapropertyresourcebundle" date="2017-03-03T16:45:41Z" original="/usr/sap/ljs/app/Converter_7335190261158680380/java/com.sap.sailing.domain.racelogtrackingadapter/resources/stringmessages/TrackingStringMessages.properties" source-language="en" target-language="fr">
<header>
<skl>
<internal-file crc="064477f4b22ea4cc8cbdaab36795b9a4" form="base64">H4sIAAAAAAAAAF1RQU7DQAy85xW+cakQ50o5FCSkSEBLk8J5m7iN1c16tXZbIsTf2U1SWnHzzjjjmYkGUx/I7Qt3IjVK7J455NWEwhWGHYdMauPe10/c4DJ8kJBugq14jXsSxbCQ/NUcEOQYEHo+QmtOCNoifD/8wMJ7ICdqrMXmHqoWHSS9YWHH1vI5XRzlgQPUlurDwFpyBzhKoqNsAOlMUN+yi+oMYToPRrIz2po7rDj/HKe4kNGy3AgGyUuN30F8JjOZcU1gam6pxQiNtI2aLmY/oe2HsFVL8hKt5MVuiGdizICmSb40ctAZssBjogZPVCOcSdvhneIbm9b7aw0zEOq87aesW4wlpEiS3Myz7ZH7Cl2DIU8j6DBnxvtSOWAxylT4pRdLDbs7vfaejvaoM/AWjeDl8DxJFCz5pHCtxPupgj/qtpJkYhXTxl/t/ZvpMC8XKyhj6lTBY7I40plErHAl7Vv9vwoTnv0Cs+RzW3sCAAA=</internal-file>
</skl>
<phase-group>
<phase company-name="SAP AG" date="2016-12-16T08:45:26Z" phase-name="file-creation" process-name="file-creation" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter"/>
</phase-group>
<tool tool-company="SAP AG" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter" tool-name="TEW: Javascript .properties Flexible File Converter" tool-version="1.1.0"/>
</header>
<body>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="trackingInvitationFor" resname="trackingInvitationFor">
<source>Tracking Invitation for</source>
<target state="signed-off">Invitation de suivi pour</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="scanQRCodeOrVisitUrlToRegisterAs" resname="scanQRCodeOrVisitUrlToRegisterAs">
<source>Make sure you have the <ph id="1">{0}</ph> App installed. Then scan the following QRCode or click the link using your smartphone to register as</source>
<target state="signed-off">Si vous avez bien installé l’application <ph id="1">{0}</ph>, scannez le code QR suivant ou cliquez sur le lien sur votre smartphone pour vous enregistrer comme</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="welcomeTo" resname="welcomeTo">
<source>Welcome to</source>
<target state="signed-off">Bienvenue dans</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="iOSUsers" resname="iOSUsers">
<source>Start iOS App</source>
<target state="signed-off">Lancer l’application iOS</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="androidUsers" resname="androidUsers">
<source>Start Android App</source>
<target state="signed-off">Lancer l’application Android</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="alternativelyVisitThisLink" resname="alternativelyVisitThisLink">
<source>If you are reading this mail on the device with the App already installed, simply click below to start:</source>
<target state="signed-off">Si vous consultez ce mail sur l’appareil sur lequel l’application est déjà installée, cliquez simplement sur le bouton ci-dessous pour commencer :</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="buoyTender" resname="buoyTender">
<source>buoy tender</source>
<target state="signed-off">Navire baliseur</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="appStoreInstallText" resname="appStoreInstallText">
<source>If you don't have the App yet, please install:</source>
<target state="signed-off">Si vous n'avez pas encore l’application, voici les liens pour l’installer :</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="appIos" resname="appIos">
<source>Install iOS App</source>
<target state="signed-off">Installer l'application iOS</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="appAndroid" resname="appAndroid">
<source>Install Android App</source>
<target state="signed-off">Installer l'application Android</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="buoyPingerAppName" resname="buoyPingerAppName">
<source>SAP Sailing Buoy Pinger</source>
<target state="signed-off">SAP Sailing Buoy Pinger</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="sailInSightAppName" resname="sailInSightAppName">
<source>SAP Sail InSight</source>
<target state="signed-off">SAP Sail InSight</target>
</trans-unit>
</body>
</file>
</xliff>
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
<file datatype="javapropertyresourcebundle" date="2017-01-12T14:31:21Z" original="/usr/sap/ljs/app/Converter_7335190261158680380/java/com.sap.sailing.domain.racelogtrackingadapter/resources/stringmessages/TrackingStringMessages.properties" source-language="en" target-language="ja">
<file datatype="javapropertyresourcebundle" date="2017-03-03T15:30:38Z" original="/usr/sap/ljs/app/Converter_7335190261158680380/java/com.sap.sailing.domain.racelogtrackingadapter/resources/stringmessages/TrackingStringMessages.properties" source-language="en" target-language="ja">
<header>
<skl>
<internal-file crc="064477f4b22ea4cc8cbdaab36795b9a4" form="base64">H4sIAAAAAAAAAF1RQU7DQAy85xW+cakQ50o5FCSkSEBLk8J5m7iN1c16tXZbIsTf2U1SWnHzzjjjmYkGUx/I7Qt3IjVK7J455NWEwhWGHYdMauPe10/c4DJ8kJBugq14jXsSxbCQ/NUcEOQYEHo+QmtOCNoifD/8wMJ7ICdqrMXmHqoWHSS9YWHH1vI5XRzlgQPUlurDwFpyBzhKoqNsAOlMUN+yi+oMYToPRrIz2po7rDj/HKe4kNGy3AgGyUuN30F8JjOZcU1gam6pxQiNtI2aLmY/oe2HsFVL8hKt5MVuiGdizICmSb40ctAZssBjogZPVCOcSdvhneIbm9b7aw0zEOq87aesW4wlpEiS3Myz7ZH7Cl2DIU8j6DBnxvtSOWAxylT4pRdLDbs7vfaejvaoM/AWjeDl8DxJFCz5pHCtxPupgj/qtpJkYhXTxl/t/ZvpMC8XKyhj6lTBY7I40plErHAl7Vv9vwoTnv0Cs+RzW3sCAAA=</internal-file>
@@ -0,0 +1,64 @@
<?xml version="1.0" encoding="UTF-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
<file datatype="javapropertyresourcebundle" date="2017-03-03T16:45:41Z" original="/usr/sap/ljs/app/Converter_7335190261158680380/java/com.sap.sailing.domain.racelogtrackingadapter/resources/stringmessages/TrackingStringMessages.properties" source-language="en" target-language="pt">
<header>
<skl>
<internal-file crc="064477f4b22ea4cc8cbdaab36795b9a4" form="base64">H4sIAAAAAAAAAF1RQU7DQAy85xW+cakQ50o5FCSkSEBLk8J5m7iN1c16tXZbIsTf2U1SWnHzzjjjmYkGUx/I7Qt3IjVK7J455NWEwhWGHYdMauPe10/c4DJ8kJBugq14jXsSxbCQ/NUcEOQYEHo+QmtOCNoifD/8wMJ7ICdqrMXmHqoWHSS9YWHH1vI5XRzlgQPUlurDwFpyBzhKoqNsAOlMUN+yi+oMYToPRrIz2po7rDj/HKe4kNGy3AgGyUuN30F8JjOZcU1gam6pxQiNtI2aLmY/oe2HsFVL8hKt5MVuiGdizICmSb40ctAZssBjogZPVCOcSdvhneIbm9b7aw0zEOq87aesW4wlpEiS3Myz7ZH7Cl2DIU8j6DBnxvtSOWAxylT4pRdLDbs7vfaejvaoM/AWjeDl8DxJFCz5pHCtxPupgj/qtpJkYhXTxl/t/ZvpMC8XKyhj6lTBY7I40plErHAl7Vv9vwoTnv0Cs+RzW3sCAAA=</internal-file>
</skl>
<phase-group>
<phase company-name="SAP AG" date="2016-12-16T08:45:26Z" phase-name="file-creation" process-name="file-creation" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter"/>
</phase-group>
<tool tool-company="SAP AG" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter" tool-name="TEW: Javascript .properties Flexible File Converter" tool-version="1.1.0"/>
</header>
<body>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="trackingInvitationFor" resname="trackingInvitationFor">
<source>Tracking Invitation for</source>
<target state="signed-off">Convite de rastreamento para</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="scanQRCodeOrVisitUrlToRegisterAs" resname="scanQRCodeOrVisitUrlToRegisterAs">
<source>Make sure you have the <ph id="1">{0}</ph> App installed. Then scan the following QRCode or click the link using your smartphone to register as</source>
<target state="signed-off">Certifique-se de que tem o app <ph id="1">{0}</ph> instalado. Depois, digitalize o QRCode seguinte ou clique no link utilizando o seu smartphone para se registrar como</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="welcomeTo" resname="welcomeTo">
<source>Welcome to</source>
<target state="signed-off">Bem-vindo(a) a</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="iOSUsers" resname="iOSUsers">
<source>Start iOS App</source>
<target state="signed-off">Iniciar app iOS</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="androidUsers" resname="androidUsers">
<source>Start Android App</source>
<target state="signed-off">Iniciar app Android</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="alternativelyVisitThisLink" resname="alternativelyVisitThisLink">
<source>If you are reading this mail on the device with the App already installed, simply click below to start:</source>
<target state="signed-off">Se você estiver lendo esse e-mail no dispositivo com o app já instalado, clique embaixo para iniciar:</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="buoyTender" resname="buoyTender">
<source>buoy tender</source>
<target state="signed-off">navio-balizador</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="appStoreInstallText" resname="appStoreInstallText">
<source>If you don't have the App yet, please install:</source>
<target state="signed-off">Se você ainda não tiver o app, instale-o:</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="appIos" resname="appIos">
<source>Install iOS App</source>
<target state="signed-off">Instalar app iOS</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="appAndroid" resname="appAndroid">
<source>Install Android App</source>
<target state="signed-off">Instalar app Android</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="buoyPingerAppName" resname="buoyPingerAppName">
<source>SAP Sailing Buoy Pinger</source>
<target state="signed-off">SAP Sailing Buoy Pinger</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="sailInSightAppName" resname="sailInSightAppName">
<source>SAP Sail InSight</source>
<target state="signed-off">SAP Sail InSight</target>
</trans-unit>
</body>
</file>
</xliff>
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
<file datatype="javapropertyresourcebundle" date="2017-01-12T14:33:19Z" original="/usr/sap/ljs/app/Converter_7335190261158680380/java/com.sap.sailing.domain.racelogtrackingadapter/resources/stringmessages/TrackingStringMessages.properties" source-language="en" target-language="ru">
<file datatype="javapropertyresourcebundle" date="2017-03-03T15:30:38Z" original="/usr/sap/ljs/app/Converter_7335190261158680380/java/com.sap.sailing.domain.racelogtrackingadapter/resources/stringmessages/TrackingStringMessages.properties" source-language="en" target-language="ru">
<header>
<skl>
<internal-file crc="064477f4b22ea4cc8cbdaab36795b9a4" form="base64">H4sIAAAAAAAAAF1RQU7DQAy85xW+cakQ50o5FCSkSEBLk8J5m7iN1c16tXZbIsTf2U1SWnHzzjjjmYkGUx/I7Qt3IjVK7J455NWEwhWGHYdMauPe10/c4DJ8kJBugq14jXsSxbCQ/NUcEOQYEHo+QmtOCNoifD/8wMJ7ICdqrMXmHqoWHSS9YWHH1vI5XRzlgQPUlurDwFpyBzhKoqNsAOlMUN+yi+oMYToPRrIz2po7rDj/HKe4kNGy3AgGyUuN30F8JjOZcU1gam6pxQiNtI2aLmY/oe2HsFVL8hKt5MVuiGdizICmSb40ctAZssBjogZPVCOcSdvhneIbm9b7aw0zEOq87aesW4wlpEiS3Myz7ZH7Cl2DIU8j6DBnxvtSOWAxylT4pRdLDbs7vfaejvaoM/AWjeDl8DxJFCz5pHCtxPupgj/qtpJkYhXTxl/t/ZvpMC8XKyhj6lTBY7I40plErHAl7Vv9vwoTnv0Cs+RzW3sCAAA=</internal-file>
@@ -0,0 +1,64 @@
<?xml version="1.0" encoding="UTF-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
<file datatype="javapropertyresourcebundle" date="2017-03-03T15:30:38Z" original="/usr/sap/ljs/app/Converter_7335190261158680380/java/com.sap.sailing.domain.racelogtrackingadapter/resources/stringmessages/TrackingStringMessages.properties" source-language="en" target-language="zh-CN">
<header>
<skl>
<internal-file crc="064477f4b22ea4cc8cbdaab36795b9a4" form="base64">H4sIAAAAAAAAAF1RQU7DQAy85xW+cakQ50o5FCSkSEBLk8J5m7iN1c16tXZbIsTf2U1SWnHzzjjjmYkGUx/I7Qt3IjVK7J455NWEwhWGHYdMauPe10/c4DJ8kJBugq14jXsSxbCQ/NUcEOQYEHo+QmtOCNoifD/8wMJ7ICdqrMXmHqoWHSS9YWHH1vI5XRzlgQPUlurDwFpyBzhKoqNsAOlMUN+yi+oMYToPRrIz2po7rDj/HKe4kNGy3AgGyUuN30F8JjOZcU1gam6pxQiNtI2aLmY/oe2HsFVL8hKt5MVuiGdizICmSb40ctAZssBjogZPVCOcSdvhneIbm9b7aw0zEOq87aesW4wlpEiS3Myz7ZH7Cl2DIU8j6DBnxvtSOWAxylT4pRdLDbs7vfaejvaoM/AWjeDl8DxJFCz5pHCtxPupgj/qtpJkYhXTxl/t/ZvpMC8XKyhj6lTBY7I40plErHAl7Vv9vwoTnv0Cs+RzW3sCAAA=</internal-file>
</skl>
<phase-group>
<phase company-name="SAP AG" date="2016-12-16T08:45:26Z" phase-name="file-creation" process-name="file-creation" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter"/>
</phase-group>
<tool tool-company="SAP AG" tool-id="urn:x-sap:sls-mlt:java:properties-flexible-converter" tool-name="TEW: Javascript .properties Flexible File Converter" tool-version="1.1.0"/>
</header>
<body>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="trackingInvitationFor" resname="trackingInvitationFor">
<source>Tracking Invitation for</source>
<target state="signed-off">跟踪邀请 - </target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="scanQRCodeOrVisitUrlToRegisterAs" resname="scanQRCodeOrVisitUrlToRegisterAs">
<source>Make sure you have the <ph id="1">{0}</ph> App installed. Then scan the following QRCode or click the link using your smartphone to register as</source>
<target state="signed-off">确保已安装 <ph id="1">{0}</ph> 应用。然后,使用智能手机扫描以下二维码或点击链接注册</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="welcomeTo" resname="welcomeTo">
<source>Welcome to</source>
<target state="signed-off">欢迎使用</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="iOSUsers" resname="iOSUsers">
<source>Start iOS App</source>
<target state="signed-off">启动 iOS 应用</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="androidUsers" resname="androidUsers">
<source>Start Android App</source>
<target state="signed-off">启动 Android 应用</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="alternativelyVisitThisLink" resname="alternativelyVisitThisLink">
<source>If you are reading this mail on the device with the App already installed, simply click below to start:</source>
<target state="signed-off">如果在已安装该应用的设备中读取邮件,只需点击以下链接即可启动:</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="buoyTender" resname="buoyTender">
<source>buoy tender</source>
<target state="signed-off">浮标供应船</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="appStoreInstallText" resname="appStoreInstallText">
<source>If you don't have the App yet, please install:</source>
<target state="translated">如果您尚无该应用,请安装:</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="appIos" resname="appIos">
<source>Install iOS App</source>
<target state="signed-off">安装 iOS 应用</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="appAndroid" resname="appAndroid">
<source>Install Android App</source>
<target state="signed-off">安装 Android 应用</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="buoyPingerAppName" resname="buoyPingerAppName">
<source>SAP Sailing Buoy Pinger</source>
<target state="signed-off">SAP Sailing Buoy Pinger</target>
</trans-unit>
<trans-unit datatype="x-urn:x-sap:sls-mlt:java:flexible-converter:messageformat" id="sailInSightAppName" resname="sailInSightAppName">
<source>SAP Sail InSight</source>
<target state="signed-off">SAP Sail InSight</target>
</trans-unit>
</body>
</file>
</xliff>
@@ -32,4 +32,4 @@ public class BravoDataFixMapper implements SensorFixMapper<BravoFix, DynamicSens
public boolean isResponsibleFor(Class<? extends RegattaLogDeviceMappingEvent<?>> eventType) {
return RegattaLogDeviceCompetitorBravoMappingEventImpl.class.isAssignableFrom(eventType);
}
}
}
@@ -92,7 +92,7 @@ public class RaceLogRaceTracker extends AbstractRaceTrackerBaseImpl {
private final DynamicTrackedRegatta trackedRegatta;
private final RaceLogResolver raceLogResolver;
private DynamicTrackedRace trackedRace;
private volatile DynamicTrackedRace trackedRace;
private StartOfTrackingController startOfTrackingController;
private EndOfTrackingController endOfTrackingController;
@@ -8,6 +8,7 @@ import com.sap.sse.common.Duration;
import com.sap.sse.common.IsManagedByCache;
import com.sap.sse.common.NamedWithID;
import com.sap.sse.datamining.annotations.Connector;
import com.sap.sse.datamining.annotations.Dimension;
public interface Competitor extends NamedWithID, IsManagedByCache<SharedDomainFactory> {
@Connector(messageKey="Team", ordinal=9)
@@ -22,6 +23,7 @@ public interface Competitor extends NamedWithID, IsManagedByCache<SharedDomainFa
boolean hasEmail();
@Dimension(messageKey="SearchTag", ordinal=11)
String getSearchTag();
/**
@@ -88,7 +88,7 @@ public class SwissTimingRaceTrackerImpl extends AbstractRaceTrackerImpl
* Starts out as <code>null</code> and is set when the race definition has been created. When this happens, this object is
* {@link Object#notifyAll() notified}.
*/
private RaceDefinition race;
private volatile RaceDefinition race;
private Course course;
private StartList startList;
@@ -0,0 +1,130 @@
package com.sap.sailing.domain.test;
import static org.junit.Assert.assertEquals;
import static org.mockito.Matchers.any;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
import org.junit.Before;
import org.junit.Test;
import com.sap.sailing.domain.base.RaceDefinition;
import com.sap.sailing.domain.common.Position;
import com.sap.sailing.domain.common.Wind;
import com.sap.sailing.domain.common.impl.DegreeBearingImpl;
import com.sap.sailing.domain.common.impl.KnotSpeedWithBearingImpl;
import com.sap.sailing.domain.common.impl.WindImpl;
import com.sap.sailing.domain.tracking.TrackedRace;
import com.sap.sailing.domain.tracking.impl.CombinedWindAsNavigableSet;
import com.sap.sailing.domain.tracking.impl.CombinedWindTrackImpl;
import com.sap.sailing.domain.tracking.impl.VirtualWindFixesAsNavigableSet;
import com.sap.sse.InvalidDateException;
import com.sap.sse.common.TimePoint;
import com.sap.sse.common.Util;
import com.sap.sse.common.impl.MillisecondsTimePoint;
import com.sap.sse.util.DateParser;
/**
* Tests for {@link VirtualWindFixesAsNavigableSet}, based mainly on bug 4063.
*
* @author Axel Uhl (d043530)
*
*/
public class VirtualWindFixesTest {
private CombinedWindTrackImpl windTrack;
private CombinedWindAsNavigableSet virtualSet;
private TrackedRace trackedRace;
private TimePoint oddStart;
private TimePoint evenStart;
@Before
public void setUp() throws InvalidDateException {
oddStart = new MillisecondsTimePoint(DateParser.parse("2017-02-15T09:59:59.9+01:00"));
evenStart = new MillisecondsTimePoint(DateParser.parse("2017-02-15T10:00:00+01:00"));
trackedRace = mock(TrackedRace.class);
RaceDefinition race = mock(RaceDefinition.class);
when(race.getName()).thenReturn("Race Name");
when(trackedRace.getRace()).thenReturn(race);
when(trackedRace.getStartOfRace()).thenReturn(oddStart);
when(trackedRace.getWind(any(), any())).thenAnswer(invocation->new WindImpl(
(Position) invocation.getArguments()[0], (TimePoint) invocation.getArguments()[1],
new KnotSpeedWithBearingImpl(12, new DegreeBearingImpl(123))));
windTrack = new CombinedWindTrackImpl(trackedRace, /* baseConfidence */ 0.9) {
private static final long serialVersionUID = 123L;
@Override
protected CombinedWindAsNavigableSet createVirtualInternalRawFixes(TrackedRace trackedRace) {
virtualSet = new CombinedWindAsNavigableSet(windTrack, trackedRace, 10000l) {
private static final long serialVersionUID = -8903939477027009728L;
@Override
protected CombinedWindTrackImpl getTrack() {
return windTrack;
}
};
return virtualSet;
}
};
}
@Test
public void testSubsetWithInclusiveEnd() {
windTrack.lockForRead();
try {
final Iterable<Wind> fixes = windTrack.getFixes(evenStart, /* fromInclusive */ true,
evenStart.plus(virtualSet.getResolutionInMilliseconds()), /* toInclusive */ true);
assertEquals(2, Util.size(fixes));
Wind wind1 = fixes.iterator().next();
assertEquals(evenStart, wind1.getTimePoint());
Wind wind2 = Util.get(fixes, 1);
assertEquals(evenStart.plus(virtualSet.getResolutionInMilliseconds()), wind2.getTimePoint());
} finally {
windTrack.unlockAfterRead();
}
}
@Test
public void testSubsetWithInclusiveEndAndExclusiveStart() {
windTrack.lockForRead();
try {
final Iterable<Wind> fixes = windTrack.getFixes(evenStart, /* fromInclusive */ false,
evenStart.plus(virtualSet.getResolutionInMilliseconds()), /* toInclusive */ true);
assertEquals(1, Util.size(fixes));
Wind wind1 = fixes.iterator().next();
assertEquals(evenStart.plus(virtualSet.getResolutionInMilliseconds()), wind1.getTimePoint());
} finally {
windTrack.unlockAfterRead();
}
}
@Test
public void testSubset() {
windTrack.lockForRead();
try {
final Iterable<Wind> fixes = windTrack.getFixes(evenStart, /* fromInclusive */ true,
evenStart.plus(virtualSet.getResolutionInMilliseconds()), /* toInclusive */ false);
assertEquals(1, Util.size(fixes));
Wind wind = fixes.iterator().next();
assertEquals(evenStart, wind.getTimePoint());
} finally {
windTrack.unlockAfterRead();
}
}
@Test
public void testSubsetWithExclusiveEndButToIsSlightlyAfterSecondFix() {
windTrack.lockForRead();
try {
final Iterable<Wind> fixes = windTrack.getFixes(evenStart, /* fromInclusive */ true,
evenStart.plus(virtualSet.getResolutionInMilliseconds()).plus(1), /* toInclusive */ false);
assertEquals(2, Util.size(fixes));
Wind wind1 = fixes.iterator().next();
assertEquals(evenStart, wind1.getTimePoint());
Wind wind2 = Util.get(fixes, 1);
assertEquals(evenStart.plus(virtualSet.getResolutionInMilliseconds()), wind2.getTimePoint());
} finally {
windTrack.unlockAfterRead();
}
}
}
@@ -0,0 +1,253 @@
package com.sap.sailing.domain.test.tractrac;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.fail;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URI;
import java.net.URISyntaxException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.StringTokenizer;
import java.util.TimeZone;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.TimeUnit;
import org.junit.Test;
import com.tractrac.model.lib.api.ModelLocator;
import com.tractrac.model.lib.api.data.IControlPassing;
import com.tractrac.model.lib.api.data.IControlPassings;
import com.tractrac.model.lib.api.data.IPosition;
import com.tractrac.model.lib.api.event.CreateModelException;
import com.tractrac.model.lib.api.event.IRace;
import com.tractrac.model.lib.api.event.IRaceCompetitor;
import com.tractrac.model.lib.api.route.IControl;
import com.tractrac.subscription.lib.api.IRaceSubscriber;
import com.tractrac.subscription.lib.api.SubscriptionLocator;
import com.tractrac.subscription.lib.api.competitor.IPositionListener;
import com.tractrac.subscription.lib.api.control.IControlPassingsListener;
import com.tractrac.subscription.lib.api.control.IControlPointPositionListener;
import com.tractrac.subscription.lib.api.event.IConnectionStatusListener;
import com.tractrac.subscription.lib.api.event.ILiveDataEvent;
import com.tractrac.subscription.lib.api.event.IStoredDataEvent;
import com.tractrac.util.lib.api.autolog.LoggerLocator;
/**
* Created by jorge on 15/02/17.
*/
public class JorgesTracTracParallelLoadingTest {
private CountDownLatch lock;
private ConcurrentHashMap<String, StringBuilder> outputs;
private void start(String params) throws CreateModelException, URISyntaxException, InterruptedException, IOException {
// Initialize the log
LoggerLocator.getLoggerManager().init(3, "println");
// Create a folder with the current date per execution: it will be used to compare results
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HHmmss");
dateFormat.setTimeZone(TimeZone.getTimeZone("UTC"));
// Get the events URI and create the event
URI eventURI = new URI(params);
final List<String> paramsURIs = this.readParameterFiles(eventURI);
// Create a list with the threads and create the threads
List<Thread> threads = new ArrayList<Thread>();
for (int i = 0; i < paramsURIs.size(); i++) {
final int index = i;
threads.add(new Thread(()->{
try {
// Download the parameters file and load the race
IRace race = ModelLocator.getEventFactory().createRace(new URI(paramsURIs.get(index)));
// Create the subscriptions
SubscriptionLogger subscriptionLogger = new SubscriptionLogger(race);
IRaceSubscriber raceSubscriber = SubscriptionLocator.getSusbcriberFactory().createRaceSubscriber(race);
raceSubscriber.subscribePositions(subscriptionLogger);
raceSubscriber.subscribeControlPositions(subscriptionLogger);
raceSubscriber.subscribeControlPassings(subscriptionLogger);
raceSubscriber.subscribeConnectionStatus(subscriptionLogger);
raceSubscriber.start();
} catch (Exception e) {
e.printStackTrace();
}
}
));
}
lock = new CountDownLatch(threads.size());
// Start all the threads
for (Thread thread: threads) {
thread.start();
}
for (Thread thread : threads) {
thread.join();
}
}
/**
* Reads the event JSON and creates a list with the parameters file.
* It doesn't use any external library to parse the JSON: we don't want
* to add external dependencies in order to make easier the execution of
* this program
*
* @param eventURI the event URI
* @return a list with the parameters files
* @throws MalformedURLException
*/
private List<String> readParameterFiles(URI eventURI) throws IOException {
List<String> paramFiles = new ArrayList<String>();
InputStream is = eventURI.toURL().openStream();
StringBuffer jsonContent = new StringBuffer();
String line = null;
BufferedReader reader = new BufferedReader(new InputStreamReader(is));
while ((line = reader.readLine()) != null) {
jsonContent.append(line);
}
StringTokenizer it = new StringTokenizer(jsonContent.toString(), ",");
while (it.hasMoreElements()) {
String item = it.nextElement().toString();
if (item.startsWith("\"params_url")) {
String paramsURL = item.split(":", 2)[1];
paramsURL = paramsURL.replace("\\/", "/");
paramFiles.add(paramsURL.substring(1, paramsURL.length()-1));
}
}
return paramFiles;
}
private StringBuilder getOutput(String filename) {
StringBuilder result = outputs.get(filename);
if (result == null) {
result = new StringBuilder();
outputs.put(filename, result);
}
return result;
}
/**
* Created by jorge on 15/02/17.
*/
public class SubscriptionLogger implements IControlPointPositionListener, IControlPassingsListener, IPositionListener,
IConnectionStatusListener {
private final IRace race;
public SubscriptionLogger(IRace race) {
this.race = race;
}
@Override
public void gotControlPassings(IRaceCompetitor raceCompetitor, IControlPassings controlPassings) {
String outputFile = race.getName() + "-Competitor-"
+ raceCompetitor.getCompetitor().getName() + "-MarkPassings.txt";
StringBuilder out = getOutput(outputFile);
out.append("Mark Passings:" + "\n");
if (controlPassings.getPassings().size() > 0) {
IControlPassing firstPassing = controlPassings.getPassings().get(0);
long firstTimeStamp = firstPassing.getTimestamp();
out.append(" - " + firstPassing.getControl().getName());
out.append(": 00:00:00\n");
for (int i = 1; i < controlPassings.getPassings().size(); i++) {
IControlPassing passing = controlPassings.getPassings().get(i);
out.append(" - " + passing.getControl().getName());
long time = passing.getTimestamp() - firstTimeStamp;
StringBuffer stringBuffer = new StringBuffer();
stringBuffer.append(" => +");
long hours = TimeUnit.MILLISECONDS.toHours(time);
if (hours < 10) {
stringBuffer.append("0").append(hours);
} else {
stringBuffer.append(hours);
}
stringBuffer.append(":");
long minutes = TimeUnit.MILLISECONDS.toMinutes(time);
if (minutes < 10) {
stringBuffer.append("0").append(minutes);
} else {
stringBuffer.append(minutes);
}
stringBuffer.append(":");
long seconds = TimeUnit.MILLISECONDS.toSeconds(time) % 60;
if (seconds < 10) {
stringBuffer.append("0").append(seconds);
} else {
stringBuffer.append(seconds);
}
out.append(stringBuffer.toString() + "\n");
}
}
}
@Override
public void gotControlPointPosition(IControl control, IPosition position, int controlPointNumber) {
String outputFile = race.getName() + "-Control-" + control.getName() + "-Positions.txt";
String date = String.valueOf(position.getTimestamp());
write(outputFile, control.getId() + ", " + date + ", " + position.getLongitude() + ", " + position.getLatitude()
+ "\n");
}
@Override
public void gotPosition(IRaceCompetitor raceCompetitor, IPosition position) {
String outputFile = race.getName() + "-Competitor-" + raceCompetitor.getCompetitor().getName() + "-Positions.txt";
String date = String.valueOf(position.getTimestamp());
write(outputFile, raceCompetitor.getCompetitor().getId() + ", " + date + ", " + position.getLongitude() + ", "
+ position.getLatitude() + "\n");
}
private void write(String file, String line) {
StringBuilder out = getOutput(file);
out.append(line);
}
@Override
public void gotStoredDataEvent(IStoredDataEvent storedDataEvent) {
}
@Override
public void gotLiveDataEvent(ILiveDataEvent liveDataEvent) {
}
@Override
public void stopped(Object subscribedObject) {
lock.countDown();
}
}
@Test
public void logParallelLoading() throws CreateModelException, URISyntaxException, InterruptedException, IOException {
outputs = new ConcurrentHashMap<>();
final String jsonUrl = "http://skitrac.traclive.dk/events/event_20160622_ESSCardiff/jsonservice.php";
start(jsonUrl);
lock.await(60, TimeUnit.SECONDS);
Map<String, StringBuilder> firstRunsOutput = outputs;
outputs = new ConcurrentHashMap<>();
start(jsonUrl);
lock.await(60, TimeUnit.SECONDS);
Map<String, StringBuilder> secondRunsOutput = outputs;
outputs = new ConcurrentHashMap<>();
final Set<String> diff1 = new HashSet<>(firstRunsOutput.keySet());
final Set<String> diff2 = new HashSet<>(secondRunsOutput.keySet());
if (!diff1.equals(diff2)) {
diff1.removeAll(secondRunsOutput.keySet());
diff2.removeAll(firstRunsOutput.keySet());
Thread.sleep(100);
fail("Key set differs: a-b="+diff1+", b-a="+diff2+"; in the meantime the following keys were updated: "+outputs.keySet());
}
for (String key : firstRunsOutput.keySet()) {
assertEquals("values for key "+key+" differ", firstRunsOutput.get(key).toString(), secondRunsOutput.get(key).toString());
}
}
}
@@ -116,8 +116,7 @@ public class BravoFixTrackSerializationTest {
}
private void addOrReplaceBravoFixToTrack(boolean replace) {
double[] fixData = new double[BravoSensorDataMetadata.INSTANCE.columnCount];
fixData[BravoSensorDataMetadata.INSTANCE.rideHeightColumn] = rideHeight;
double[] fixData = new double[BravoSensorDataMetadata.INSTANCE.trackColumnCount];
// fill the port/starboard columns as well because their minimum defines the true ride height
fixData[BravoSensorDataMetadata.INSTANCE.rideHeightPortHullColumn] = rideHeight;
fixData[BravoSensorDataMetadata.INSTANCE.rideHeightStarboardHullColumn] = rideHeight;
@@ -6,6 +6,7 @@ import java.util.Map;
import java.util.Set;
import java.util.concurrent.LinkedBlockingDeque;
import java.util.concurrent.TimeUnit;
import java.util.logging.Level;
import java.util.logging.Logger;
import com.sap.sailing.domain.base.RaceDefinition;
@@ -168,9 +169,8 @@ public abstract class AbstractReceiverWithQueue<A, B, C> implements Runnable, Re
callback.loadingQueueDone(this);
}
}
} catch (InterruptedException e) {
e.printStackTrace();
logger.log(Level.INFO, "Interrupted while taking element from queue", e);
}
}
unsubscribe();
@@ -221,12 +221,7 @@ public abstract class AbstractReceiverWithQueue<A, B, C> implements Runnable, Re
if (lastInQueue == null || getSimulator() != null) {
callback.loadingQueueDone(this);
} else {
Set<LoadingQueueDoneCallBack> set = loadingQueueDoneCallBacks.get(lastInQueue);
if (set == null) {
set = new HashSet<>();
loadingQueueDoneCallBacks.put(lastInQueue, set);
}
set.add(callback);
Util.addToValueSet(loadingQueueDoneCallBacks, lastInQueue, callback);
}
}
}
@@ -318,21 +318,25 @@ public class DomainFactoryImpl implements DomainFactory {
long start = System.currentTimeMillis();
RaceDefinition result = raceCache.get(raceId);
boolean interrupted = false;
while ((timeoutInMilliseconds == -1 || System.currentTimeMillis()-start < timeoutInMilliseconds) && !interrupted && result == null) {
try {
synchronized (raceCache) {
if (timeoutInMilliseconds == -1) {
raceCache.wait();
} else {
long timeToWait = timeoutInMilliseconds-(System.currentTimeMillis()-start);
if (timeToWait > 0) {
raceCache.wait(timeToWait);
if (result == null) {
synchronized (raceCache) {
// try again while under raceCache's monitor; otherwise we may miss a notification
result = raceCache.get(raceId);
while ((timeoutInMilliseconds == -1 || System.currentTimeMillis()-start < timeoutInMilliseconds) && !interrupted && result == null) {
try {
if (timeoutInMilliseconds == -1) {
raceCache.wait();
} else {
long timeToWait = timeoutInMilliseconds-(System.currentTimeMillis()-start);
if (timeToWait > 0) {
raceCache.wait(timeToWait);
}
}
result = raceCache.get(raceId);
} catch (InterruptedException e) {
interrupted = true;
}
}
result = raceCache.get(raceId);
} catch (InterruptedException e) {
interrupted = true;
}
}
return result;
@@ -42,14 +42,7 @@ public class RaceHandleImpl implements RaceHandle {
@Override
public RaceDefinition getRace(long timeoutInMilliseconds) {
final RaceDefinition result;
final RaceDefinition raceDefinition = domainFactory.getAndWaitForRaceDefinition(tractracRace.getId(), timeoutInMilliseconds);
if (raceDefinition != null) { // may have time-outed
result = raceDefinition;
} else {
result = null;
}
return result;
return domainFactory.getAndWaitForRaceDefinition(tractracRace.getId(), timeoutInMilliseconds);
}
}
@@ -186,6 +186,8 @@ public class TracTracRaceTrackerImpl extends AbstractRaceTrackerImpl
* Potentially, you can create 8 threads per TTCM (connecting only with one single race)."
*/
static final Integer MAX_STORED_PACKET_HOP_ALLOWANCE = 1000;
private static final long TIMEOUT_FOR_RACE_TO_APPEAR_FOR_STOPPING_TRACKING_IN_MILLIS = Duration.ONE_MINUTE.times(5).asMillis();
private final IEvent tractracEvent;
private final IRace tractracRace;
@@ -195,7 +197,14 @@ public class TracTracRaceTrackerImpl extends AbstractRaceTrackerImpl
private final Set<Receiver> receivers;
private final DomainFactory domainFactory;
private final WindStore windStore;
private RaceDefinition race;
/**
* Needs to be {@code volatile} because one thread (e.g., the {@link RaceCourseReceiver}) writes it, another thread
* such as the callback set up by the {@link #stopped(Object)} method and executed by the last {@link Receiver}
* emptying its queue, leading to a call to
* {@link AbstractLoadingQueueDoneCallBack#executeWhenAllReceiversAreDoneLoading()} will read it. We need
* to ensure that the reading threads always read what other writers wrote.
*/
private volatile RaceDefinition race;
private final DynamicTrackedRegatta trackedRegatta;
private TrackedRaceStatus lastStatus;
private Map<Object, Util.Pair<Integer, Float>> lastProgressPerID;
@@ -630,7 +639,10 @@ public class TracTracRaceTrackerImpl extends AbstractRaceTrackerImpl
@Override
public void addRaceDefinition(final RaceDefinition race, final DynamicTrackedRace trackedRace) {
this.race = race;
logger.info("Setting race for tracker "+this+" with ID "+getID()+" to "+race);
synchronized (this) { // use synchronized to ensure the effects become visible to other threads reading later
this.race = race;
}
updateStatusOfTrackedRace(trackedRace);
notifyRaceCreationListeners();
}
@@ -642,7 +654,7 @@ public class TracTracRaceTrackerImpl extends AbstractRaceTrackerImpl
@Override
public void gotStoredDataEvent(IStoredDataEvent storedDataEvent) {
logger.info("Status change in tracker "+getID()+" for race(s) "+getRace()+": "+storedDataEvent);
logger.info("Status change in tracker "+this+" with ID "+getID()+" for race(s) "+getRace()+": "+storedDataEvent);
switch (storedDataEvent.getType()) {
case Begin:
logger.info("Stored data begin in tracker "+getID()+" for race(s) "+getRace());
@@ -667,26 +679,34 @@ public class TracTracRaceTrackerImpl extends AbstractRaceTrackerImpl
@Override
public void stopped(Object o) {
logger.info("stopped TracTrac tracking in tracker " + getID() + " for " + getRace() + " while in status "
+ lastStatus);
logger.info("stopped TracTrac tracking in tracker " + this + " with ID " + getID() + " for " + getRace()
+ " while in status " + lastStatus);
new AbstractLoadingQueueDoneCallBack(receivers) {
@Override
protected void executeWhenAllReceiversAreDoneLoading() {
lastStatus = new TrackedRaceStatusImpl(TrackedRaceStatusEnum.FINISHED, 1.0);
updateStatusOfTrackedRaces();
if (!stopped) {
try {
if (getRace() != null) {
// See also bug 1517; with TracAPI we assume that when stopped(IEvent) is called by the
// TracAPI then
// all subscriptions have received all their data and it's therefore safe to stop all
// subscriptions
// at this point without missing any data.
trackedRegattaRegistry.stopTracking(regatta, getRace());
// launch background thread that may have to wait for the race to appear; wait with a generous timeout
final Thread stopper = new Thread(()->{
try {
if (getRaceHandle().getRace(TIMEOUT_FOR_RACE_TO_APPEAR_FOR_STOPPING_TRACKING_IN_MILLIS) != null) {
// See also bug 1517; with TracAPI we assume that when stopped(IEvent) is called by the
// TracAPI then all subscriptions have received all their data and it's therefore safe to stop all
// subscriptions at this point without missing any data.
logger.info("Calling stopTracking for tracker "+this+" with ID "+getID());
trackedRegattaRegistry.stopTracking(regatta, getRace());
} else {
logger.warning("Didn't receive RaceDefinition for tracker "+this+" with ID "+getID()+
" within "+TIMEOUT_FOR_RACE_TO_APPEAR_FOR_STOPPING_TRACKING_IN_MILLIS+
"ms; unable to call stopTracking(...)");
}
} catch (InterruptedException | IOException e) {
logger.log(Level.INFO, "Interrupted while trying to stop tracker " + this, e);
}
} catch (InterruptedException | IOException e) {
logger.log(Level.INFO, "Interrupted while trying to stop tracker " + this, e);
}
}, "Stopper for tracker "+this+" with ID " + getID());
stopper.setDaemon(true);
stopper.start();
}
}
};
@@ -366,4 +366,19 @@ public class FlexibleLeaderboardImpl extends AbstractLeaderboardImpl implements
protected LeaderboardType getLeaderboardType() {
return LeaderboardType.FlexibleLeaderboard;
}
/**
* In addition to invoking the superclass implementation, a flexible leaderboard also
* detaches all race logs from any tracked race currently linked to any of the race columns
* of this leaderboard.
*/
@Override
public void destroy() {
super.destroy();
for (final RaceColumn raceColumn : getRaceColumns()) {
for (final Fleet fleet : raceColumn.getFleets()) {
raceColumn.setTrackedRace(fleet, null); // this will in particular detach the race log
}
}
}
}
@@ -22,6 +22,7 @@ import com.sap.sailing.domain.common.impl.MeterDistance;
import com.sap.sailing.domain.common.tracking.GPSFix;
import com.sap.sailing.domain.markpassingcalculation.Candidate;
import com.sap.sailing.domain.markpassingcalculation.CandidateChooser;
import com.sap.sailing.domain.markpassingcalculation.MarkPassingCalculator;
import com.sap.sailing.domain.tracking.DynamicTrackedRace;
import com.sap.sailing.domain.tracking.MarkPassing;
import com.sap.sailing.domain.tracking.TrackedLeg;
@@ -85,7 +86,18 @@ public class CandidateChooserImpl implements CandidateChooser {
private static final Logger logger = Logger.getLogger(CandidateChooserImpl.class.getName());
private Map<Competitor, Map<Waypoint, MarkPassing>> currentMarkPasses = new HashMap<>();
/**
* Methods operating on this collection and the collections embedded in it must be {@code synchronized} in order to
* avoid overlapping operations. This will generally not limit concurrency further than usual, except for the
* start-up phase where a background thread may be spawned by the constructor in case the
* {@link MarkPassingCalculator#MarkPassingCalculator(DynamicTrackedRace, boolean, boolean)} constructor is
* invoked with the {@code waitForInitialMarkPassingCalculation} parameter set to {@code false}. In this
* case, mark passing calculation will be launched in the background and will not be waited for. This then
* needs to be synchronized with the dynamic (re-)calculations triggered by fixes and other data popping in.
*/
private Map<Competitor, Map<Candidate, Set<Edge>>> allEdges = new HashMap<>();
private Map<Competitor, Set<Candidate>> candidates = new HashMap<>();
private Map<Competitor, NavigableSet<Candidate>> fixedPassings = new HashMap<>();
private Map<Competitor, Integer> suppressedPassings = new HashMap<>();
@@ -155,7 +167,7 @@ public class CandidateChooserImpl implements CandidateChooser {
}
@Override
public void calculateMarkPassDeltas(Competitor c, Iterable<Candidate> newCans, Iterable<Candidate> oldCans) {
public synchronized void calculateMarkPassDeltas(Competitor c, Iterable<Candidate> newCans, Iterable<Candidate> oldCans) {
final TimePoint startOfRace = race.getStartOfRace(/* inference */ false);
if (startOfRace != null) {
if (raceStartTime == null || !startOfRace.minus(EARLY_STARTS_CONSIDERED_THIS_MUCH_BEFORE_STARTTIME).equals(raceStartTime)) {
@@ -234,7 +246,7 @@ public class CandidateChooserImpl implements CandidateChooser {
findShortestPath(c);
}
private void createNewEdges(Competitor c, Iterable<Candidate> newCandidates) {
private synchronized void createNewEdges(Competitor c, Iterable<Candidate> newCandidates) {
final Boolean isGateStart = race.isGateStart();
Map<Candidate, Set<Edge>> edges = allEdges.get(c);
for (Candidate newCan : newCandidates) {
@@ -331,7 +343,7 @@ public class CandidateChooserImpl implements CandidateChooser {
* candidates are the only fixed elements. If more fixed elements are provided, the algorithm solves the
* optimization problem separately for each segment and concatenates the solutions.
*/
private void findShortestPath(Competitor c) {
private synchronized void findShortestPath(Competitor c) {
Map<Candidate, Set<Edge>> allCompetitorEdges = allEdges.get(c);
SortedSet<Candidate> mostLikelyCandidates = new TreeSet<>();
NavigableSet<Candidate> fixedPasses = fixedPassings.get(c);
@@ -535,7 +547,7 @@ public class CandidateChooserImpl implements CandidateChooser {
createNewEdges(c, newCandidates);
}
private void removeCandidates(Competitor c, Iterable<Candidate> wrongCandidates) {
private synchronized void removeCandidates(Competitor c, Iterable<Candidate> wrongCandidates) {
for (Candidate can : wrongCandidates) {
logger.finest(()->"Removing all edges containing " + can + "of "+ c);
candidates.get(c).remove(can);
@@ -26,6 +26,13 @@ public interface BravoFixTrack<ItemType extends WithID & Serializable> extends S
*/
Distance getRideHeight(TimePoint timePoint);
/**
* Tells if the competitor to which this track belongs is considered to be foiling at the time point
* given. This depends on the {@link #getRideHeight} and a threshold above which a boat is considered
* to be foiling.
*/
boolean isFoiling(TimePoint timePoint);
/**
* Calculates the average ride height for the given time range.
*
@@ -5,16 +5,23 @@ import com.sap.sailing.domain.common.ManeuverType;
import com.sap.sailing.domain.common.SpeedWithBearing;
import com.sap.sailing.domain.common.Tack;
import com.sap.sailing.domain.common.tracking.GPSFix;
import com.sap.sse.datamining.annotations.Connector;
import com.sap.sse.datamining.annotations.Dimension;
import com.sap.sse.datamining.annotations.Statistic;
public interface Maneuver extends GPSFix {
ManeuverType getType();
@Dimension(messageKey="Tack", ordinal=13)
Tack getNewTack();
@Connector(messageKey="SpeedBefore", ordinal=0)
SpeedWithBearing getSpeedWithBearingBefore();
@Connector(messageKey="SpeedAfter", ordinal=1)
SpeedWithBearing getSpeedWithBearingAfter();
@Statistic(messageKey="DirectionChange", resultDecimals=2, ordinal=2)
double getDirectionChangeInDegrees();
Distance getManeuverLoss();
@@ -55,11 +55,12 @@ public interface RaceTracker {
com.sap.sailing.domain.base.Regatta getRegatta();
/**
* Returns the races being tracked by this tracker. Non-blocking call that returns <code>null</code>
* if the {@link RaceDefinition} hasn't been created yet, e.g., because the course definition
* hasn't been received yet or the listener for receiving course information hasn't been registered (yet). Also
* returns a race that may have been removed from containing structures which may lead this tracker to no longer update
* their {@link TrackedRace} with new data.
* Returns the races being tracked by this tracker, in a "volatile" way, meaning that if another thread belonging to
* this tracker has established the {@link RaceDefinition} for this tracker, other threads will immediately see this
* object. Non-blocking call that returns <code>null</code> if the {@link RaceDefinition} hasn't been created yet,
* e.g., because the course definition hasn't been received yet or the listener for receiving course information
* hasn't been registered (yet). Also returns a race that may have been removed from containing structures which may
* lead this tracker to no longer update their {@link TrackedRace} with new data.
*/
RaceDefinition getRace();
@@ -376,15 +376,17 @@ public interface TrackedRace extends Serializable, IsManagedByCache<SharedDomain
/**
* Retrieves the wind sources used so far by this race that have the specified <code>type</code> as their
* {@link WindSource#getType() type}. Always returns a non-<code>null</code> iterable which may be empty in case the
* race does not use any wind source of the specified type (yet). Additional sources may be returned after
* race does not use any wind source of the specified type (yet).<p>
*
* It is possible to ask for the {@link WindSourceType#COMBINED} and {@link WindSourceType#LEG_MIDDLE} types and
* get a non-empty result although those sources are never returned by {@link #getWindSources()}.
*/
Set<WindSource> getWindSources(WindSourceType type);
/**
* Retrieves all wind sources known to this race, including those {@link #getWindSourcesToExclude() to exclude}.
* Callers can freely iterate because a copied collection is returned. The {@link WindSourceType#COMBINED} wind source
* is never part of the result.
* as well as the {@link WindSourceType#LEG_MIDDLE} sources are never part of the result.
*/
Set<WindSource> getWindSources();
@@ -11,7 +11,10 @@ import java.util.logging.Logger;
import com.sap.sailing.domain.base.RaceDefinition;
import com.sap.sailing.domain.common.WindSource;
import com.sap.sailing.domain.common.WindSourceType;
import com.sap.sailing.domain.common.impl.WindSourceImpl;
import com.sap.sailing.domain.common.impl.WindSourceWithAdditionalID;
import com.sap.sailing.domain.tracking.impl.CombinedWindTrackImpl;
import com.sap.sailing.domain.tracking.impl.LegMiddleWindTrackImpl;
import com.sap.sse.concurrent.LockUtil;
import com.sap.sse.concurrent.NamedReentrantReadWriteLock;
@@ -75,6 +78,9 @@ public abstract class TrackedRaceWithWindEssentials implements TrackedRace {
* @param delayForWindEstimationCacheInvalidation
* if <code>-1</code> and the parameter is accessed, it will be replaced by
* {@link #getMillisecondsOverWhichToAverageWind()}/2
*
* @return {@code null} in case the {@link WindSourceType#LEG_MIDDLE} type is requested for an
* {@link WindSourceWithAdditionalID#getId() ID} that doesn't identify an existing leg
*/
@Override
public WindTrack getOrCreateWindTrack(WindSource windSource, long delayForWindEstimationCacheInvalidation) {
@@ -84,6 +90,8 @@ public abstract class TrackedRaceWithWindEssentials implements TrackedRace {
combinedWindTrack = new CombinedWindTrackImpl(this, WindSourceType.COMBINED.getBaseConfidence());
}
result = combinedWindTrack;
} else if (windSource.getType() == WindSourceType.LEG_MIDDLE && windSource instanceof WindSourceWithAdditionalID) {
result = getLegMiddleWindTrack((WindSourceWithAdditionalID) windSource);
} else {
synchronized (windTracks) {
result = windTracks.get(windSource);
@@ -121,12 +129,36 @@ public abstract class TrackedRaceWithWindEssentials implements TrackedRace {
return result;
}
private WindSource getLegMiddleWindSource(TrackedLeg trackedLeg) {
return new WindSourceWithAdditionalID(WindSourceType.LEG_MIDDLE, getWindSourceIdForLegMiddle(trackedLeg));
}
private String getWindSourceIdForLegMiddle(TrackedLeg trackedLeg) {
return Integer.toString(getRace().getCourse().getIndexOfWaypoint(trackedLeg.getLeg().getFrom()));
}
private WindTrack getLegMiddleWindTrack(WindSourceWithAdditionalID windSource) {
assert windSource.getType() == WindSourceType.LEG_MIDDLE;
final String id = windSource.getId();
final Integer zeroBasedLegIndex = Integer.valueOf(id);
final TrackedLeg trackedLeg = getTrackedLeg(getRace().getCourse().getLeg(zeroBasedLegIndex));
return new LegMiddleWindTrackImpl(this, trackedLeg, WindSourceType.LEG_MIDDLE.getBaseConfidence());
}
@Override
public Set<WindSource> getWindSources(WindSourceType type) {
Set<WindSource> result = new HashSet<WindSource>();
for (WindSource windSource : getWindSources()) {
if (windSource.getType() == type) {
result.add(windSource);
if (type == WindSourceType.COMBINED) {
result.add(new WindSourceImpl(WindSourceType.COMBINED));
} else if (type == WindSourceType.LEG_MIDDLE) {
for (final TrackedLeg trackedLeg : getTrackedLegs()) {
result.add(getLegMiddleWindSource(trackedLeg));
}
} else {
for (WindSource windSource : getWindSources()) {
if (windSource.getType() == type) {
result.add(windSource);
}
}
}
return result;
@@ -28,7 +28,7 @@ public class BravoFixTrackImpl<ItemType extends WithID & Serializable> extends S
* the name of the track by which it can be obtained from the {@link TrackedRace}.
*/
public BravoFixTrackImpl(ItemType trackedItem, String trackName) {
super(trackedItem, trackName, BravoSensorDataMetadata.INSTANCE.getColumns(),
super(trackedItem, trackName, BravoSensorDataMetadata.INSTANCE.getFileColumns(),
BravoFixTrack.TRACK_NAME + " for " + trackedItem);
}
@@ -52,6 +52,12 @@ public class BravoFixTrackImpl<ItemType extends WithID & Serializable> extends S
return fixBefore.getRideHeight();
}
@Override
public boolean isFoiling(TimePoint timePoint) {
final Distance rideHeight = getRideHeight(timePoint);
return rideHeight != null && rideHeight.compareTo(BravoFix.MIN_FOILING_HEIGHT_THRESHOLD) >= 0;
}
@Override
public Distance getAverageRideHeight(TimePoint from, TimePoint to) {
final Distance result;
@@ -6,6 +6,7 @@ import com.sap.sailing.domain.common.Position;
import com.sap.sailing.domain.common.Wind;
import com.sap.sailing.domain.tracking.TrackedRace;
import com.sap.sailing.domain.tracking.WindTrack;
import com.sap.sailing.domain.tracking.impl.WindTrackImpl.DummyWind;
import com.sap.sse.common.TimePoint;
import com.sap.sse.common.impl.MillisecondsTimePoint;
@@ -19,7 +20,7 @@ public class CombinedWindAsNavigableSet extends VirtualWindFixesAsNavigableSet {
private static final long serialVersionUID = -153959652212518644L;
public CombinedWindAsNavigableSet(WindTrack track, TrackedRace trackedRace, long resolutionInMilliseconds) {
public CombinedWindAsNavigableSet(CombinedWindTrackImpl track, TrackedRace trackedRace, long resolutionInMilliseconds) {
super(track, trackedRace, resolutionInMilliseconds);
}
@@ -28,6 +29,11 @@ public class CombinedWindAsNavigableSet extends VirtualWindFixesAsNavigableSet {
super(track, trackedRace, from, to, resolutionInMilliseconds);
}
@Override
protected CombinedWindTrackImpl getTrack() {
return (CombinedWindTrackImpl) super.getTrack();
}
@Override
protected Wind getWind(Position p, TimePoint timePoint) {
return getTrackedRace().getWind(p, timePoint);
@@ -52,4 +58,13 @@ public class CombinedWindAsNavigableSet extends VirtualWindFixesAsNavigableSet {
: ceilingToResolution(getTrackedRace().getEndOfRace()) : getToInternal();
}
/**
* Uses the {@link TrackedRace#getCenterOfCourse(TimePoint) center of the course} as the position for which to
* compute the combined wind
*/
@Override
protected DummyWind createDummyWindFix(TimePoint timePoint) {
return new DummyWind(timePoint, getTrack().getDefaultPosition(timePoint));
}
}
@@ -28,13 +28,27 @@ public class CombinedWindTrackImpl extends VirtualWindTrackImpl {
public CombinedWindTrackImpl(TrackedRace trackedRace, double baseConfidence) {
super(trackedRace, /* millisecondsOverWhichToAverage not used, see overridden method */ -1, baseConfidence,
/* useSpeed */ WindSourceType.COMBINED.useSpeed());
virtualInternalRawFixes = new CombinedWindAsNavigableSet(this, trackedRace, /* resolutionInMilliseconds */ 10000l);
virtualInternalRawFixes = createVirtualInternalRawFixes(trackedRace);
}
protected CombinedWindAsNavigableSet createVirtualInternalRawFixes(TrackedRace trackedRace) {
return new CombinedWindAsNavigableSet(this, trackedRace, /* resolutionInMilliseconds */ 1000l);
}
@Override
protected CombinedWindAsNavigableSet getInternalRawFixes() {
return virtualInternalRawFixes;
}
/**
* Delivers the position to use when a caller of {@link #getAveragedWind(Position, TimePoint)} or
* {@link #getAveragedWindWithConfidence(Position, TimePoint)} provides a {@code null} position. This position is
* also used for the fixes produced by the fix iterators for this track. This implementation returns the
* {@link TrackedRace#getCenterOfCourse(TimePoint) center of the course}.
*/
protected Position getDefaultPosition(TimePoint at) {
return getTrackedRace().getCenterOfCourse(at);
}
/**
* The combined wind source already averages the wind from each wind source considered. There is no use in again
@@ -49,11 +63,11 @@ public class CombinedWindTrackImpl extends VirtualWindTrackImpl {
@Override
public Wind getAveragedWind(Position p, TimePoint at) {
return getTrackedRace().getWind(p, at);
return getTrackedRace().getWind(p==null?getDefaultPosition(at):p, at);
}
@Override
public WindWithConfidence<Util.Pair<Position, TimePoint>> getAveragedWindWithConfidence(Position p, TimePoint at) {
return getTrackedRace().getWindWithConfidence(p, at);
return getTrackedRace().getWindWithConfidence(p==null?getDefaultPosition(at):p, at);
}
}
@@ -0,0 +1,21 @@
package com.sap.sailing.domain.tracking.impl;
import com.sap.sailing.domain.common.Position;
import com.sap.sailing.domain.tracking.TrackedLeg;
import com.sap.sailing.domain.tracking.TrackedRace;
import com.sap.sse.common.TimePoint;
public class LegMiddleWindTrackImpl extends CombinedWindTrackImpl {
private static final long serialVersionUID = -3014653185579457125L;
private final TrackedLeg trackedLeg;
public LegMiddleWindTrackImpl(TrackedRace trackedRace, TrackedLeg trackedLeg, double baseConfidence) {
super(trackedRace, baseConfidence);
this.trackedLeg = trackedLeg;
}
@Override
protected Position getDefaultPosition(TimePoint at) {
return trackedLeg.getMiddleOfLeg(at);
}
}
@@ -3851,8 +3851,9 @@ public abstract class TrackedRaceImpl extends TrackedRaceWithWindEssentials impl
public Position getCenterOfCourse(TimePoint at) {
int count = 0;
ScalablePosition sum = null;
final MarkPositionAtTimePointCache cache = new MarkPositionAtTimePointCacheImpl(this, at);
for (Waypoint waypoint : getRace().getCourse().getWaypoints()) {
final Position waypointPosition = getApproximatePosition(waypoint, at);
final Position waypointPosition = getApproximatePosition(waypoint, at, cache);
if (waypointPosition != null) {
ScalablePosition p = new ScalablePosition(waypointPosition);
if (sum == null) {
@@ -122,7 +122,7 @@ public abstract class VirtualWindFixesAsNavigableSet extends AbstractUnmodifiabl
protected TimePoint higherToResolution(TimePoint timePoint) {
TimePoint result;
final TimePoint startOfTracking = getTrackedRace().getStartOfTracking();
if (startOfTracking == null && timePoint.compareTo(startOfTracking) < 0) {
if (startOfTracking != null && timePoint.compareTo(startOfTracking) < 0) {
result = higherToResolution(startOfTracking);
} else {
result = new MillisecondsTimePoint((timePoint.asMillis() / getResolutionInMilliseconds() + 1)
@@ -192,7 +192,7 @@ public abstract class VirtualWindFixesAsNavigableSet extends AbstractUnmodifiabl
@Override
public Wind next() {
Wind result = floor(new DummyWind(timePoint));
Wind result = floor(createDummyWindFix(timePoint));
timePoint = new MillisecondsTimePoint(timePoint.asMillis() + getResolutionInMilliseconds());
return result;
}
@@ -235,7 +235,7 @@ public abstract class VirtualWindFixesAsNavigableSet extends AbstractUnmodifiabl
@Override
public NavigableSet<Wind> subSet(Wind fromElement, boolean fromInclusive, Wind toElement, boolean toInclusive) {
return createSubset(track, getTrackedRace(), fromInclusive ? ceilingToResolution(fromElement.getTimePoint())
return createSubset(getTrack(), getTrackedRace(), fromInclusive ? ceilingToResolution(fromElement.getTimePoint())
: higherToResolution(fromElement.getTimePoint()), toInclusive ? floorToResolution(toElement.getTimePoint())
: lowerToResolution(toElement.getTimePoint()));
}
@@ -247,13 +247,13 @@ public abstract class VirtualWindFixesAsNavigableSet extends AbstractUnmodifiabl
@Override
public NavigableSet<Wind> headSet(Wind toElement, boolean inclusive) {
return createSubset(track, getTrackedRace(), /* from */ null,
return createSubset(getTrack(), getTrackedRace(), /* from */ null,
inclusive ? ceilingToResolution(toElement.getTimePoint()) : lowerToResolution(toElement.getTimePoint()));
}
@Override
public NavigableSet<Wind> tailSet(Wind fromElement, boolean inclusive) {
return createSubset(track, getTrackedRace(), inclusive ? floorToResolution(fromElement.getTimePoint())
return createSubset(getTrack(), getTrackedRace(), inclusive ? floorToResolution(fromElement.getTimePoint())
: higherToResolution(fromElement.getTimePoint()),
/* to */ null);
}
@@ -332,5 +332,9 @@ public abstract class VirtualWindFixesAsNavigableSet extends AbstractUnmodifiabl
protected TimePoint getToInternal() {
return to;
}
protected DummyWind createDummyWindFix(TimePoint timePoint) {
return new DummyWind(timePoint);
}
}
@@ -331,12 +331,17 @@ public class WindTrackImpl extends TrackImpl<Wind> implements WindTrack {
protected static class DummyWind extends DummyTimed implements Wind {
private static final long serialVersionUID = -311172509910032149L;
private final Position position;
public DummyWind(TimePoint timePoint) {
this(timePoint, /* position */ null);
}
public DummyWind(TimePoint timePoint, Position position) {
super(timePoint);
this.position = position;
}
@Override
public Position getPosition() {
return null;
return position;
}
@Override
public Bearing getBearing() {
@@ -30,7 +30,7 @@ public class Activator implements BundleActivator {
if (instance == null) {
instance = this;
}
if(context.getProperty(EXPEDITION_UDP_PORT_PROPERTY_NAME) != null) {
if (context.getProperty(EXPEDITION_UDP_PORT_PROPERTY_NAME) != null) {
port = Integer.valueOf(context.getProperty(EXPEDITION_UDP_PORT_PROPERTY_NAME));
logger.log(Level.INFO, "found "+EXPEDITION_UDP_PORT_PROPERTY_NAME+"="+port+" in OSGi context");
}
+11 -21
View File
@@ -13,17 +13,16 @@
<packaging>eclipse-repository</packaging>
<build>
<plugins>
<!--
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-p2-repository-plugin</artifactId>
<version>${tycho-version}</version>
<configuration>
<includeAllDependencies>true</includeAllDependencies>
</configuration>
</plugin>
-->
<directory>target</directory>
<plugins>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-p2-repository-plugin</artifactId>
<version>${tycho-version}</version>
<configuration>
<xzCompress>false</xzCompress>
</configuration>
</plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-p2-director-plugin</artifactId>
@@ -35,17 +34,8 @@
<goal>materialize-products</goal>
</goals>
</execution>
<!--
<execution>
<id>archive-products</id>
<goals>
<goal>archive-products</goal>
</goals>
</execution>
-->
</executions>
</plugin>
</plugins>
</plugins>
</build>
</project>
@@ -1,94 +1,93 @@
<?xml version="1.0" encoding="UTF-8"?>
<?pde version="3.5"?>
<product name="SAP Race Analysis" uid="raceanalysis.product.id" id="raceanalysis.product" version="1.0.0" useFeatures="true" includeLaunchers="false">
<configIni use="default">
</configIni>
<launcherArgs>
<programArgs>-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog -console -clean
</programArgs>
</launcherArgs>
<windowImages/>
<launcher>
<solaris/>
<win useIco="false">
<bmp/>
</win>
</launcher>
<vm>
</vm>
<plugins>
</plugins>
<features>
<feature id="com.sap.sailing.feature" version="1.0.0.qualifier"/>
<feature id="com.sap.sailing.feature.runtime" version="1.0.0.qualifier"/>
<feature id="com.sap.sse.feature" version="1.0.0.qualifier"/>
<feature id="com.sap.sse.feature.runtime" version="1.0.0.qualifier"/>
</features>
<configurations>
<plugin id="com.sap.sailing.autoload" autoStart="true" startLevel="6" />
<plugin id="com.sap.sailing.barbados.resultimport" autoStart="true" startLevel="3" />
<plugin id="com.sap.sailing.dashboards.gwt" autoStart="true" startLevel="5" />
<plugin id="com.sap.sailing.datamining" autoStart="true" startLevel="4" />
<plugin id="com.sap.sailing.domain.deckmanadapter" autoStart="true" startLevel="4" />
<plugin id="com.sap.sailing.domain.igtimiadapter" autoStart="true" startLevel="3" />
<plugin id="com.sap.sailing.domain.racelogtrackingadapter" autoStart="true" startLevel="3" />
<plugin id="com.sap.sailing.domain.swisstimingadapter" autoStart="false" startLevel="4" />
<plugin id="com.sap.sailing.domain.swisstimingadapter.persistence" autoStart="true" startLevel="3" />
<plugin id="com.sap.sailing.domain.swisstimingreplayadapter" autoStart="true" startLevel="3" />
<plugin id="com.sap.sailing.domain.tractracadapter" autoStart="false" startLevel="4" />
<plugin id="com.sap.sailing.domain.tractracadapter.persistence" autoStart="true" startLevel="3" />
<plugin id="com.sap.sailing.ess40.resultimport" autoStart="true" startLevel="3" />
<plugin id="com.sap.sailing.freg.resultimport" autoStart="true" startLevel="3" />
<plugin id="com.sap.sailing.gwt.ui" autoStart="true" startLevel="5" />
<plugin id="com.sap.sailing.kiworesultimport" autoStart="true" startLevel="3" />
<plugin id="com.sap.sailing.manage2sail.resultimport" autoStart="true" startLevel="3" />
<plugin id="com.sap.sailing.monitoring" autoStart="true" startLevel="6" />
<plugin id="com.sap.sailing.news" autoStart="true" startLevel="3" />
<plugin id="com.sap.sailing.polars" autoStart="true" startLevel="4" />
<plugin id="com.sap.sailing.polars.datamining" autoStart="true" startLevel="4" />
<plugin id="com.sap.sailing.resultimport" autoStart="true" startLevel="3" />
<plugin id="com.sap.sailing.sailwave.resultimport" autoStart="true" startLevel="3" />
<plugin id="com.sap.sailing.server" autoStart="true" startLevel="4" />
<plugin id="com.sap.sailing.server.gateway" autoStart="true" startLevel="4" />
<plugin id="com.sap.sailing.velum.resultimport" autoStart="true" startLevel="3" />
<plugin id="com.sap.sailing.www" autoStart="true" startLevel="4" />
<plugin id="com.sap.sailing.xmlexport" autoStart="true" startLevel="4" />
<plugin id="com.sap.sailing.xrr.resultimport" autoStart="true" startLevel="3" />
<plugin id="com.sap.sailing.yachtscoring.resultimport" autoStart="true" startLevel="3" />
<plugin id="com.sap.sse.filestorage" autoStart="true" startLevel="3" />
<plugin id="com.sap.sse.mail" autoStart="true" startLevel="4" />
<plugin id="com.sap.sse.replication" autoStart="true" startLevel="5" />
<plugin id="com.sap.sse.security.ui" autoStart="true" startLevel="5" />
<plugin id="com.sap.sse.security.userstore.mongodb" autoStart="true" startLevel="3" />
<plugin id="org.apache.felix.shell" autoStart="true" startLevel="0" />
<plugin id="org.apache.felix.shell.remote" autoStart="true" startLevel="0" />
<plugin id="org.eclipse.equinox.common" autoStart="true" startLevel="2" />
<plugin id="org.eclipse.equinox.simpleconfigurator" autoStart="true" startLevel="2" />
<plugin id="org.eclipse.jetty.continuation" autoStart="true" startLevel="4" />
<plugin id="org.eclipse.jetty.deploy" autoStart="true" startLevel="4" />
<plugin id="org.eclipse.jetty.http" autoStart="true" startLevel="4" />
<plugin id="org.eclipse.jetty.io" autoStart="true" startLevel="4" />
<plugin id="org.eclipse.jetty.jmx" autoStart="true" startLevel="4" />
<plugin id="org.eclipse.jetty.nested" autoStart="true" startLevel="4" />
<plugin id="org.eclipse.jetty.osgi.boot" autoStart="true" startLevel="3" />
<plugin id="org.eclipse.jetty.security" autoStart="true" startLevel="4" />
<plugin id="org.eclipse.jetty.server" autoStart="true" startLevel="4" />
<plugin id="org.eclipse.jetty.servlet" autoStart="true" startLevel="4" />
<plugin id="org.eclipse.jetty.util" autoStart="true" startLevel="4" />
<plugin id="org.eclipse.jetty.webapp" autoStart="true" startLevel="4" />
<plugin id="org.eclipse.jetty.xml" autoStart="true" startLevel="4" />
<plugin id="org.mortbay.jetty.util" autoStart="true" startLevel="4" />
<property name="eclipse.ignoreApp" value="true" />
<property name="osgi.noShutdown" value="true" />
</configurations>
</product>
<?xml version="1.0" encoding="UTF-8"?>
<?pde version="3.5"?>
<product name="SAP Race Analysis" uid="raceanalysis.product.id" id="raceanalysis.product" version="1.0.0" useFeatures="true" includeLaunchers="false">
<configIni use="default">
</configIni>
<launcherArgs>
<programArgs>-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog -console -clean
</programArgs>
</launcherArgs>
<windowImages/>
<launcher>
<solaris/>
<win useIco="false">
<bmp/>
</win>
</launcher>
<vm>
</vm>
<plugins>
</plugins>
<features>
<feature id="com.sap.sailing.feature" version="1.0.0.qualifier"/>
<feature id="com.sap.sailing.feature.runtime" version="1.0.0.qualifier"/>
<feature id="com.sap.sse.feature" version="1.0.0.qualifier"/>
<feature id="com.sap.sse.feature.runtime" version="1.0.0.qualifier"/>
</features>
<configurations>
<plugin id="com.sap.sailing.barbados.resultimport" autoStart="true" startLevel="3" />
<plugin id="com.sap.sailing.dashboards.gwt" autoStart="true" startLevel="5" />
<plugin id="com.sap.sailing.datamining" autoStart="true" startLevel="4" />
<plugin id="com.sap.sailing.domain.deckmanadapter" autoStart="true" startLevel="4" />
<plugin id="com.sap.sailing.domain.igtimiadapter" autoStart="true" startLevel="3" />
<plugin id="com.sap.sailing.domain.racelogtrackingadapter" autoStart="true" startLevel="3" />
<plugin id="com.sap.sailing.domain.swisstimingadapter" autoStart="false" startLevel="4" />
<plugin id="com.sap.sailing.domain.swisstimingadapter.persistence" autoStart="true" startLevel="3" />
<plugin id="com.sap.sailing.domain.swisstimingreplayadapter" autoStart="true" startLevel="3" />
<plugin id="com.sap.sailing.domain.tractracadapter" autoStart="false" startLevel="4" />
<plugin id="com.sap.sailing.domain.tractracadapter.persistence" autoStart="true" startLevel="3" />
<plugin id="com.sap.sailing.ess40.resultimport" autoStart="true" startLevel="3" />
<plugin id="com.sap.sailing.freg.resultimport" autoStart="true" startLevel="3" />
<plugin id="com.sap.sailing.gwt.ui" autoStart="true" startLevel="5" />
<plugin id="com.sap.sailing.kiworesultimport" autoStart="true" startLevel="3" />
<plugin id="com.sap.sailing.manage2sail.resultimport" autoStart="true" startLevel="3" />
<plugin id="com.sap.sailing.monitoring" autoStart="true" startLevel="6" />
<plugin id="com.sap.sailing.news" autoStart="true" startLevel="3" />
<plugin id="com.sap.sailing.polars" autoStart="true" startLevel="4" />
<plugin id="com.sap.sailing.polars.datamining" autoStart="true" startLevel="4" />
<plugin id="com.sap.sailing.resultimport" autoStart="true" startLevel="3" />
<plugin id="com.sap.sailing.sailwave.resultimport" autoStart="true" startLevel="3" />
<plugin id="com.sap.sailing.server" autoStart="true" startLevel="4" />
<plugin id="com.sap.sailing.server.gateway" autoStart="true" startLevel="4" />
<plugin id="com.sap.sailing.velum.resultimport" autoStart="true" startLevel="3" />
<plugin id="com.sap.sailing.www" autoStart="true" startLevel="4" />
<plugin id="com.sap.sailing.xmlexport" autoStart="true" startLevel="4" />
<plugin id="com.sap.sailing.xrr.resultimport" autoStart="true" startLevel="3" />
<plugin id="com.sap.sailing.yachtscoring.resultimport" autoStart="true" startLevel="3" />
<plugin id="com.sap.sse.filestorage" autoStart="true" startLevel="3" />
<plugin id="com.sap.sse.mail" autoStart="true" startLevel="4" />
<plugin id="com.sap.sse.replication" autoStart="true" startLevel="5" />
<plugin id="com.sap.sse.security.ui" autoStart="true" startLevel="5" />
<plugin id="com.sap.sse.security.userstore.mongodb" autoStart="true" startLevel="3" />
<plugin id="org.apache.felix.shell" autoStart="true" startLevel="0" />
<plugin id="org.apache.felix.shell.remote" autoStart="true" startLevel="0" />
<plugin id="org.eclipse.equinox.common" autoStart="true" startLevel="2" />
<plugin id="org.eclipse.equinox.simpleconfigurator" autoStart="true" startLevel="2" />
<plugin id="org.eclipse.jetty.continuation" autoStart="true" startLevel="4" />
<plugin id="org.eclipse.jetty.deploy" autoStart="true" startLevel="4" />
<plugin id="org.eclipse.jetty.http" autoStart="true" startLevel="4" />
<plugin id="org.eclipse.jetty.io" autoStart="true" startLevel="4" />
<plugin id="org.eclipse.jetty.jmx" autoStart="true" startLevel="4" />
<plugin id="org.eclipse.jetty.nested" autoStart="true" startLevel="4" />
<plugin id="org.eclipse.jetty.osgi.boot" autoStart="true" startLevel="3" />
<plugin id="org.eclipse.jetty.security" autoStart="true" startLevel="4" />
<plugin id="org.eclipse.jetty.server" autoStart="true" startLevel="4" />
<plugin id="org.eclipse.jetty.servlet" autoStart="true" startLevel="4" />
<plugin id="org.eclipse.jetty.util" autoStart="true" startLevel="4" />
<plugin id="org.eclipse.jetty.webapp" autoStart="true" startLevel="4" />
<plugin id="org.eclipse.jetty.xml" autoStart="true" startLevel="4" />
<plugin id="org.mortbay.jetty.util" autoStart="true" startLevel="4" />
<property name="eclipse.ignoreApp" value="true" />
<property name="osgi.noShutdown" value="true" />
</configurations>
</product>
+7
View File
@@ -381,4 +381,11 @@ Computes leaderboard information for sailing races and offers RESTful APIs to al
version="0.0.0"
unpack="false"/>
<plugin
id="com.sap.sailing.grib"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
</feature>
@@ -7,6 +7,8 @@ encoding//src/main/java/com/sap/sailing/gwt/ui/adminconsole/IgtimiAccountsPanel.
encoding//src/main/java/com/sap/sailing/gwt/ui/adminconsole/LeaderboardConfigPanel.java=utf-8
encoding//src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.properties=UTF-8
encoding//src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_de.properties=UTF-8
encoding//src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_es.properties=UTF-8
encoding//src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_fr.properties=UTF-8
encoding//src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_ja.properties=UTF-8
encoding//src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_ru.properties=UTF-8
encoding//src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_zh.properties=UTF-8
@@ -69,7 +69,7 @@
<booleanAttribute key="org.eclipse.jdt.launching.DEFAULT_CLASSPATH" value="false"/>
<stringAttribute key="org.eclipse.jdt.launching.JRE_CONTAINER" value="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="com.google.gwt.dev.DevMode"/>
<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-incremental -war &quot;${project_loc:com.sap.sailing.gwt.ui}&quot; -noserver -remoteUI &quot;${gwt_remote_ui_server_port}:${unique_id}&quot; -logLevel INFO -codeServerPort auto -startupUrl /gwt/Home.html com.sap.sailing.gwt.home.Home -startupUrl /gwt/AdminConsole.html com.sap.sailing.gwt.ui.AdminConsole -startupUrl /gwt/LeaderboardEditing.html com.sap.sailing.gwt.ui.LeaderboardEditing -startupUrl /gwt/Leaderboard.html com.sap.sailing.gwt.ui.Leaderboard -startupUrl /gwt/Spectator.html com.sap.sailing.gwt.ui.Spectator -startupUrl /gwt/RaceBoard.html com.sap.sailing.gwt.ui.RaceBoard -startupUrl /gwt/RegattaOverview.html com.sap.sailing.gwt.regattaoverview.RegattaOverview -startupUrl /gwt/DataMining.html com.sap.sailing.gwt.ui.DataMining -startupUrl /gwt/Simulator.html com.sap.sailing.gwt.ui.Simulator -startupUrl /gwt/VideoPopup.html com.sap.sailing.gwt.ui.VideoPopup -startupUrl /gwt/AutoPlay.html com.sap.sailing.gwt.AutoPlay com.sap.sailing.gwt.home.Home com.sap.sailing.gwt.ui.AdminConsole com.sap.sailing.gwt.AutoPlay com.sap.sailing.gwt.ui.YoutubePopup com.sap.sailing.gwt.ui.Simulator com.sap.sailing.gwt.ui.Leaderboard com.sap.sailing.gwt.regattaoverview.RegattaOverview com.sap.sailing.gwt.ui.Spectator com.sap.sailing.gwt.ui.LeaderboardEditing com.sap.sailing.gwt.ui.DataMining com.sap.sailing.gwt.ui.RaceBoard"/>
<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-nosuperDevMode -incremental -war &quot;${project_loc:com.sap.sailing.gwt.ui}&quot; -noserver -remoteUI &quot;${gwt_remote_ui_server_port}:${unique_id}&quot; -logLevel INFO -codeServerPort auto -startupUrl /gwt/Home.html com.sap.sailing.gwt.home.Home -startupUrl /gwt/AdminConsole.html com.sap.sailing.gwt.ui.AdminConsole -startupUrl /gwt/LeaderboardEditing.html com.sap.sailing.gwt.ui.LeaderboardEditing -startupUrl /gwt/Leaderboard.html com.sap.sailing.gwt.ui.Leaderboard -startupUrl /gwt/Spectator.html com.sap.sailing.gwt.ui.Spectator -startupUrl /gwt/RaceBoard.html com.sap.sailing.gwt.ui.RaceBoard -startupUrl /gwt/RegattaOverview.html com.sap.sailing.gwt.regattaoverview.RegattaOverview -startupUrl /gwt/DataMining.html com.sap.sailing.gwt.ui.DataMining -startupUrl /gwt/Simulator.html com.sap.sailing.gwt.ui.Simulator -startupUrl /gwt/VideoPopup.html com.sap.sailing.gwt.ui.VideoPopup -startupUrl /gwt/AutoPlay.html com.sap.sailing.gwt.AutoPlay com.sap.sailing.gwt.home.Home com.sap.sailing.gwt.ui.AdminConsole com.sap.sailing.gwt.AutoPlay com.sap.sailing.gwt.ui.YoutubePopup com.sap.sailing.gwt.ui.Simulator com.sap.sailing.gwt.ui.Leaderboard com.sap.sailing.gwt.regattaoverview.RegattaOverview com.sap.sailing.gwt.ui.Spectator com.sap.sailing.gwt.ui.LeaderboardEditing com.sap.sailing.gwt.ui.DataMining com.sap.sailing.gwt.ui.RaceBoard"/>
<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="com.sap.sailing.gwt.ui"/>
<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Xmx2048m -Dgwt-usearchives=false -Dgwt.persistentunitcache=false -Dgwt.watchFileChanges=false"/>
</launchConfiguration>
@@ -18,7 +18,7 @@
-->
<extend-property name="locale" values="en,de,zh,ru,ja" />
<set-property name="locale" value="en,de,zh,ru,ja" />
<extend-property name="locale" values="en,de,zh,ru,ja,es,fr,pt" />
<set-property name="locale" value="en,de,zh,ru,ja,es,fr,pt" />
<set-property-fallback name="locale" value="en" />
</module>
@@ -302,6 +302,7 @@ public interface StringMessages extends com.sap.sse.gwt.client.StringMessages,
String details();
String noGroupSelected();
String combinedWindSourceTypeName();
String legMiddleWindSourceTypeName();
String courseBasedWindSourceTypeName();
String trackBasedEstimationWindSourceTypeName();
String windSensorWindSourceTypeName();
@@ -925,6 +926,7 @@ public interface StringMessages extends com.sap.sse.gwt.client.StringMessages,
String showWindSpeedSeriesTooltip();
String showWindDirectionSeriesTooltip();
String combinedWindSourceTypeTooltip();
String legMiddleWindSourceTypeTooltip();
String courseBasedWindSourceTypeTooltip();
String trackBasedEstimationWindSourceTypeTooltip();
String windSensorWindSourceTypeTooltip();
@@ -1775,4 +1777,20 @@ public interface StringMessages extends com.sap.sse.gwt.client.StringMessages,
String eventRegattaHeaderLegendAudioNo();
String set();
String gribWindImport_Title();
String angleInDegree();
String angleInRadian();
String centralAngleInRadian();
String centralAngleInDegree();
String kilometers();
String meters();
String nauticalMiles();
String seaMiles();
String geographicalMiles();
String days();
String hours();
String minutes();
String seconds();
String milliseconds();
String floatNumber();
String integer();
}
@@ -310,6 +310,7 @@ notAvailable=Not available
details=Details
noGroupSelected=No group selected
combinedWindSourceTypeName=Combined
legMiddleWindSourceTypeName=Middle of Leg
courseBasedWindSourceTypeName=Course Layout
trackBasedEstimationWindSourceTypeName=Estimation
windSensorWindSourceTypeName=Measured
@@ -897,6 +898,7 @@ gribWindImport_Title=Import wind from GRIB files
showWindSpeedSeriesTooltip=Toggles the visibility of the wind speed for all data sources
showWindDirectionSeriesTooltip=Toggles the visibility of the wind direction for all data sources
combinedWindSourceTypeTooltip=Combines all other wind sources to one data set
legMiddleWindSourceTypeTooltip=Combined wind at the mid point of a leg''s rhumb line
courseBasedWindSourceTypeTooltip=A value based on the course layout (under the assumption, that the race starts with an upwind leg)
trackBasedEstimationWindSourceTypeTooltip=Calculated data from the competitor tracks
windSensorWindSourceTypeTooltip=Data captured from mobile measuring systems
@@ -1697,8 +1699,8 @@ contentSapInSailing6=Official Technology Partner of Travemünder Woche
contentSapInSailing7=Technical Partner of the European Sailing Leagues
contentSapInSailing8=Title sponsor of the SAP Extreme Sailing Team
contentSapInSailing9=Official Technical Partner of the Extreme Sailing Series
contentSapInSailing10=Premium Partner of Germany’s national sailing team, Audi Sailing Team Germany
contentSapInSailing11=Premium Partner of the world’s largest regatta, Kieler Woche (Kiel Week)
contentSapInSailing10=Partner of the world’s largest regatta, Kieler Woche (Kiel Week)
contentSapInSailing11=Technical Partner of the Sailing Champions League
contentSapInSailing12=Title sponsor of the SAP 5O5 World Championships
sapSailingAnalyticsTitle=SAP Sailing Analytics
contentSapSailingAnalytics1=By delivering real time analytics around race rankings, speeds, maneuvers, bearings etc., SAP is helping to simplify and demystify the complex sport of sailing.
@@ -1749,3 +1751,19 @@ eventRegattaHeaderLegendGpsNo=No tracking data
eventRegattaHeaderLegendWindNo=No wind data
eventRegattaHeaderLegendVideoNo=No video streams
eventRegattaHeaderLegendAudioNo=No audio streams
angleInDegree=Angle in degree
angleInRadian=Angle in radian
centralAngleInRadian=Central angle in radian
centralAngleInDegree=Central angle in degree
kilometers=Kilometers
meters=Meters
nauticalMiles=Nautical Miles
seaMiles=Sea Miles
geographicalMiles=Geographical Miles
days=Days
hours=Hours
minutes=Minutes
seconds=Seconds
milliseconds=Milliseconds
floatNumber=Float
integer=Integer
@@ -1682,8 +1682,8 @@ contentSapInSailing6=Offizieller Technologiepartner der Travemünder Woche
contentSapInSailing7=Technischer Partner der Europäischen Segelligen
contentSapInSailing8=Titelsponsor des SAP Extreme Sailing Teams
contentSapInSailing9=Offizieller technischer Partner der Extreme Sailing Series
contentSapInSailing10=Premium-Partner der deutschen Segel-Nationalmannschaft Audi Sailing Team Germany
contentSapInSailing11=Premium-Partner der Kieler Woche, der größten Regatta der Welt
contentSapInSailing10=Partner der weltweit größten Regatta; Kieler Woche
contentSapInSailing11=Technischer Partner der Sailing Champions League
contentSapInSailing12=Titelsponsor der SAP 5O5 World Championships
sapSailingAnalyticsTitle=SAP Sailing Analytics
contentSapSailingAnalytics1=Durch die Bereitstellung von Echtzeit-Analysen zu Ranglisten, Geschwindigkeiten, Manövern, Kursen etc. trägt SAP dazu bei, die komplexe Welt des Segelns einfacher und verständlicher zu machen.
@@ -1734,3 +1734,19 @@ eventRegattaHeaderLegendGpsNo=Keine Trackinginformationen
eventRegattaHeaderLegendWindNo=Keine Winddaten
eventRegattaHeaderLegendVideoNo=Keine Videostreams
eventRegattaHeaderLegendAudioNo=Keine Audiostreams
angleInDegree=Winkel in Grad
angleInRadian=Winkel in Radiant
centralAngleInRadian=Kreiswinkel in Radiant
centralAngleInDegree=Kreiswinkel in Grad
kilometers=Kilometer
meters=Meter
nauticalMiles=Nautische Meilen
seaMiles=Seemeilen
geographicalMiles=Geografische Meilen
days=Tage
hours=Stunden
minutes=Minuten
seconds=Sekunden
milliseconds=Millisekunden
floatNumber=Gleitkommazahl
integer=Ganzzahl
Loaded 100 of 256 files, more files were not shown because too many files have changed in this diff. Show more