@armyc2.c5isr.renderer/mil-sym-ts-web 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -0
- package/README.md +57 -0
- package/buildNode.bat +2 -0
- package/buildWeb.bat +2 -0
- package/dist/C5Ren.d.ts +6970 -0
- package/dist/C5Ren.js +2 -0
- package/dist/C5Ren.js.map +1 -0
- package/dist/LICENSE +201 -0
- package/dist/README.md +57 -0
- package/dist/armyc2.c5isr.renderer-mil-sym-ts-web-2.2.0.tgz +0 -0
- package/dist/manifest.json +4 -0
- package/dist/package.json +16 -0
- package/index.ts +169 -0
- package/package.bak +50 -0
- package/package.json +40 -0
- package/package.node.json +43 -0
- package/package.pack.json +19 -0
- package/package.packWeb.json +16 -0
- package/package.web.json +40 -0
- package/src/main/ts/android/graphics/Bitmap.ts +7 -0
- package/src/main/ts/android/graphics/Paint.ts +26 -0
- package/src/main/ts/android/graphics/Path.ts +78 -0
- package/src/main/ts/android/graphics/PointF.ts +14 -0
- package/src/main/ts/android/graphics/Rect.ts +18 -0
- package/src/main/ts/android/graphics/RectF.ts +50 -0
- package/src/main/ts/android/graphics/Region.ts +36 -0
- package/src/main/ts/android/graphics/Typeface.ts +11 -0
- package/src/main/ts/armyc2/c5isr/JavaLineArray/BasicShapes.ts +99 -0
- package/src/main/ts/armyc2/c5isr/JavaLineArray/CChannelPoints2.ts +34 -0
- package/src/main/ts/armyc2/c5isr/JavaLineArray/CELineArray.ts +193 -0
- package/src/main/ts/armyc2/c5isr/JavaLineArray/Channels.ts +2971 -0
- package/src/main/ts/armyc2/c5isr/JavaLineArray/DISMSupport.ts +4008 -0
- package/src/main/ts/armyc2/c5isr/JavaLineArray/POINT2.ts +93 -0
- package/src/main/ts/armyc2/c5isr/JavaLineArray/Shape2.ts +89 -0
- package/src/main/ts/armyc2/c5isr/JavaLineArray/TacticalLines.ts +515 -0
- package/src/main/ts/armyc2/c5isr/JavaLineArray/arraysupport.ts +5403 -0
- package/src/main/ts/armyc2/c5isr/JavaLineArray/countsupport.ts +1084 -0
- package/src/main/ts/armyc2/c5isr/JavaLineArray/flot.ts +2173 -0
- package/src/main/ts/armyc2/c5isr/JavaLineArray/lineutility.ts +4934 -0
- package/src/main/ts/armyc2/c5isr/JavaLineArray/ref.ts +7 -0
- package/src/main/ts/armyc2/c5isr/JavaTacticalRenderer/Modifier2.ts +5601 -0
- package/src/main/ts/armyc2/c5isr/JavaTacticalRenderer/P1.ts +14 -0
- package/src/main/ts/armyc2/c5isr/JavaTacticalRenderer/TGLight.ts +648 -0
- package/src/main/ts/armyc2/c5isr/JavaTacticalRenderer/clsChannelUtility.ts +647 -0
- package/src/main/ts/armyc2/c5isr/JavaTacticalRenderer/clsMETOC.ts +2994 -0
- package/src/main/ts/armyc2/c5isr/JavaTacticalRenderer/clsUtility.ts +2663 -0
- package/src/main/ts/armyc2/c5isr/JavaTacticalRenderer/mdlGeodesic.ts +669 -0
- package/src/main/ts/armyc2/c5isr/RenderMultipoints/clsClipPolygon2.ts +971 -0
- package/src/main/ts/armyc2/c5isr/RenderMultipoints/clsClipQuad.ts +871 -0
- package/src/main/ts/armyc2/c5isr/RenderMultipoints/clsRenderer.ts +3507 -0
- package/src/main/ts/armyc2/c5isr/RenderMultipoints/clsRenderer2.ts +500 -0
- package/src/main/ts/armyc2/c5isr/RenderMultipoints/clsUtility.ts +1089 -0
- package/src/main/ts/armyc2/c5isr/RenderMultipoints/clsUtilityCPOF.ts +2656 -0
- package/src/main/ts/armyc2/c5isr/RenderMultipoints/clsUtilityGE.ts +1419 -0
- package/src/main/ts/armyc2/c5isr/data/genc.json +1407 -0
- package/src/main/ts/armyc2/c5isr/data/msd.json +17311 -0
- package/src/main/ts/armyc2/c5isr/data/mse.json +18500 -0
- package/src/main/ts/armyc2/c5isr/data/svgd.json +31214 -0
- package/src/main/ts/armyc2/c5isr/data/svge.json +30558 -0
- package/src/main/ts/armyc2/c5isr/graphics2d/AffineTransform.ts +10 -0
- package/src/main/ts/armyc2/c5isr/graphics2d/Area.ts +437 -0
- package/src/main/ts/armyc2/c5isr/graphics2d/BasicStroke.ts +429 -0
- package/src/main/ts/armyc2/c5isr/graphics2d/BasicTypes.ts +7 -0
- package/src/main/ts/armyc2/c5isr/graphics2d/BufferedImage.ts +35 -0
- package/src/main/ts/armyc2/c5isr/graphics2d/Font.ts +111 -0
- package/src/main/ts/armyc2/c5isr/graphics2d/FontMetrics.ts +29 -0
- package/src/main/ts/armyc2/c5isr/graphics2d/FontRenderContext.ts +18 -0
- package/src/main/ts/armyc2/c5isr/graphics2d/GeneralPath.ts +211 -0
- package/src/main/ts/armyc2/c5isr/graphics2d/Graphics2D.ts +80 -0
- package/src/main/ts/armyc2/c5isr/graphics2d/IPathIterator.ts +33 -0
- package/src/main/ts/armyc2/c5isr/graphics2d/ImageIO.ts +16 -0
- package/src/main/ts/armyc2/c5isr/graphics2d/Line2D.ts +726 -0
- package/src/main/ts/armyc2/c5isr/graphics2d/PathIterator.ts +141 -0
- package/src/main/ts/armyc2/c5isr/graphics2d/Point.ts +112 -0
- package/src/main/ts/armyc2/c5isr/graphics2d/Point2D.ts +261 -0
- package/src/main/ts/armyc2/c5isr/graphics2d/Polygon.ts +391 -0
- package/src/main/ts/armyc2/c5isr/graphics2d/Rectangle.ts +567 -0
- package/src/main/ts/armyc2/c5isr/graphics2d/Rectangle2D.ts +445 -0
- package/src/main/ts/armyc2/c5isr/graphics2d/Shape.ts +31 -0
- package/src/main/ts/armyc2/c5isr/graphics2d/Stroke.ts +18 -0
- package/src/main/ts/armyc2/c5isr/graphics2d/TextLayout.ts +45 -0
- package/src/main/ts/armyc2/c5isr/graphics2d/TexturePaint.ts +25 -0
- package/src/main/ts/armyc2/c5isr/renderer/IIconRenderer.ts +15 -0
- package/src/main/ts/armyc2/c5isr/renderer/IconRenderer.ts +22 -0
- package/src/main/ts/armyc2/c5isr/renderer/MilStdIconRenderer.ts +269 -0
- package/src/main/ts/armyc2/c5isr/renderer/ModifierRenderer.ts +9882 -0
- package/src/main/ts/armyc2/c5isr/renderer/PatternFillRenderer.ts +146 -0
- package/src/main/ts/armyc2/c5isr/renderer/SinglePointSVGRenderer.ts +1265 -0
- package/src/main/ts/armyc2/c5isr/renderer/shapes/arc.ts +64 -0
- package/src/main/ts/armyc2/c5isr/renderer/shapes/bcurve.ts +95 -0
- package/src/main/ts/armyc2/c5isr/renderer/shapes/ellipse.ts +93 -0
- package/src/main/ts/armyc2/c5isr/renderer/shapes/line.ts +114 -0
- package/src/main/ts/armyc2/c5isr/renderer/shapes/path.ts +555 -0
- package/src/main/ts/armyc2/c5isr/renderer/shapes/pathiterator.ts +62 -0
- package/src/main/ts/armyc2/c5isr/renderer/shapes/point.ts +120 -0
- package/src/main/ts/armyc2/c5isr/renderer/shapes/rectangle.ts +431 -0
- package/src/main/ts/armyc2/c5isr/renderer/shapes/roundedrectangle.ts +99 -0
- package/src/main/ts/armyc2/c5isr/renderer/shapes/types.ts +25 -0
- package/src/main/ts/armyc2/c5isr/renderer/shapes/utilities.ts +203 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/AffiliationColors.ts +104 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/Color.ts +481 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/DistanceUnit.ts +40 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/DrawRules.ts +1323 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/EntityCode.ts +51 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/ErrorLogger.ts +736 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/GENCLookup.ts +106 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/GeoPixelConversion3D.ts +84 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/IMultiPointRenderer.ts +87 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/IPointConversion.ts +34 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/ImageInfo.ts +324 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/LRUCache.ts +127 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/LRUEntry.ts +18 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/LogLevel.ts +111 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/MODrawRules.ts +219 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/MSInfo.ts +1008 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/MSLookup.ts +882 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/MilStdAttributes.ts +380 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/MilStdSymbol.ts +797 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/Modifiers.ts +1699 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/PointConversion.ts +178 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/PointConversionDummy.ts +45 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/PointConverter3D.ts +126 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/RectUtilities.ts +118 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/RendererException.ts +11 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/RendererSettings.ts +1201 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/RendererUtilities.ts +591 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/SVGInfo.ts +29 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/SVGLookup.ts +753 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/SVGSymbolInfo.ts +137 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/SVGTextInfo.ts +438 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/SettingsChangedEvent.ts +19 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/SettingsChangedEventListener.ts +10 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/SettingsEventListener.ts +5 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/Shape2SVG.ts +404 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/ShapeInfo.ts +525 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/ShapeUtilities.ts +55 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/SymbolDimensionInfo.ts +36 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/SymbolID.ts +1055 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/SymbolUtilities.ts +2085 -0
- package/src/main/ts/armyc2/c5isr/renderer/utilities/TextInfo.ts +157 -0
- package/src/main/ts/armyc2/c5isr/web/render/GeoPixelConversion.ts +86 -0
- package/src/main/ts/armyc2/c5isr/web/render/MultiPointHandler.ts +3798 -0
- package/src/main/ts/armyc2/c5isr/web/render/MultiPointHandlerSVG.ts +412 -0
- package/src/main/ts/armyc2/c5isr/web/render/PointConverter.ts +124 -0
- package/src/main/ts/armyc2/c5isr/web/render/SymbolModifiers.ts +26 -0
- package/src/main/ts/armyc2/c5isr/web/render/WebRenderer.ts +677 -0
- package/src/main/ts/armyc2/c5isr/web/render/utilities/JavaRendererUtilities.ts +484 -0
- package/src/main/ts/armyc2/c5isr/web/render/utilities/LineInfo.ts +62 -0
- package/src/main/ts/armyc2/c5isr/web/render/utilities/SymbolInfo.ts +46 -0
- package/src/main/ts/armyc2/c5isr/web/render/utilities/TextInfo.ts +51 -0
- package/src/main/ts/org/gavaghan/geodesy/Angle.ts +31 -0
- package/src/main/ts/org/gavaghan/geodesy/Ellipsoid.ts +71 -0
- package/src/main/ts/org/gavaghan/geodesy/GeodeticCalculator.ts +200 -0
- package/src/main/ts/org/gavaghan/geodesy/GeodeticCurve.ts +55 -0
- package/src/main/ts/org/gavaghan/geodesy/GeodeticMeasurement.ts +68 -0
- package/src/main/ts/org/gavaghan/geodesy/GlobalCoordinates.ts +103 -0
- package/src/main/ts/org/gavaghan/geodesy/GlobalPosition.ts +90 -0
- package/test/ExportSPImages.js +692 -0
- package/test/MPWW.html +556 -0
- package/test/MPWorker.js +318 -0
- package/test/SPWorker.js +233 -0
- package/test/SVGWW.html +363 -0
- package/test/singlePointTester3.html +751 -0
- package/tsconfig.json +54 -0
- package/typedoc.json +30 -0
- package/updateVersion.js +21 -0
- package/webpack.config.js +34 -0
- package/webpackn.config.js +28 -0
- package/webpackr.config.js +47 -0
- package/webpackw.config.js +23 -0
|
@@ -0,0 +1,751 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html>
|
|
3
|
+
<head>
|
|
4
|
+
<!-- Meta line required for IE-->
|
|
5
|
+
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
|
6
|
+
|
|
7
|
+
<title>single point tester</title>
|
|
8
|
+
<!-- Not necessary as fonts are body fonts set in renderer.css
|
|
9
|
+
<style type="text/css">
|
|
10
|
+
body
|
|
11
|
+
{
|
|
12
|
+
font-family: UnitFont, SinglePoint, TacticalGraphics;
|
|
13
|
+
font-size: 48pt;
|
|
14
|
+
padding: 25px;
|
|
15
|
+
}
|
|
16
|
+
</style> -->
|
|
17
|
+
|
|
18
|
+
<!-- ESBuild -->
|
|
19
|
+
<!-- <script src="dist/C5ISR2525.js" type="text/javascript" ></script> -->
|
|
20
|
+
|
|
21
|
+
<!-- Individual files -->
|
|
22
|
+
<!-- <script src="includes.js" type="text/javascript" ></script> -->
|
|
23
|
+
|
|
24
|
+
<!-- Web Pack -->
|
|
25
|
+
<script src="../dist/C5Ren.js" type="text/javascript" ></script>
|
|
26
|
+
|
|
27
|
+
<!-- modules only load from server, can't access from file system -->
|
|
28
|
+
<!--<script type="module">
|
|
29
|
+
import MilStdIconRenderer from './dist/bundle.js';
|
|
30
|
+
</script> -->
|
|
31
|
+
|
|
32
|
+
<script type = "text/javascript">
|
|
33
|
+
|
|
34
|
+
var fontCheckTimer = null;
|
|
35
|
+
var retries = 15;
|
|
36
|
+
var attempts = 0;
|
|
37
|
+
var _symbolID = null;
|
|
38
|
+
var _symStd = null;
|
|
39
|
+
var _modifiers = null;
|
|
40
|
+
var Modifiers = null;
|
|
41
|
+
//var C5Ren = null;
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
function populateModifiers()
|
|
45
|
+
{
|
|
46
|
+
var modifiers = new Map();
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
modifiers.set(C5Ren.Modifiers.H_ADDITIONAL_INFO_1, "H");//"!@#$%^&*()>?,.<\'\"=~`[]{}|\\/");
|
|
50
|
+
modifiers.set(C5Ren.Modifiers.H1_ADDITIONAL_INFO_2,"H1");
|
|
51
|
+
modifiers.set(C5Ren.Modifiers.AP_TARGET_NUMBER,"AP");
|
|
52
|
+
modifiers.set(C5Ren.Modifiers.AP1_TARGET_NUMBER_EXTENSION,"AP1");
|
|
53
|
+
modifiers.set(C5Ren.Modifiers.X_ALTITUDE_DEPTH,"0,10");//X
|
|
54
|
+
modifiers.set(C5Ren.Modifiers.K_COMBAT_EFFECTIVENESS,"100");//K
|
|
55
|
+
modifiers.set(C5Ren.Modifiers.Q_DIRECTION_OF_MOVEMENT,"45");//Q
|
|
56
|
+
|
|
57
|
+
modifiers.set(C5Ren.Modifiers.W_DTG_1,C5Ren.SymbolUtilities.getDateLabel(new Date()));//W
|
|
58
|
+
modifiers.set(C5Ren.Modifiers.W1_DTG_2,C5Ren.SymbolUtilities.getDateLabel(new Date()));//W1
|
|
59
|
+
modifiers.set(C5Ren.Modifiers.J_EVALUATION_RATING,"J");
|
|
60
|
+
modifiers.set(C5Ren.Modifiers.M_HIGHER_FORMATION,"M");
|
|
61
|
+
modifiers.set(C5Ren.Modifiers.N_HOSTILE,"ENY");
|
|
62
|
+
modifiers.set(C5Ren.Modifiers.P_IFF_SIF_AIS,"P");
|
|
63
|
+
modifiers.set(C5Ren.Modifiers.Y_LOCATION,"Y");
|
|
64
|
+
|
|
65
|
+
//if(symbol.getSymbolID().startsWith("G"))
|
|
66
|
+
modifiers.set(C5Ren.Modifiers.C_QUANTITY,"C");
|
|
67
|
+
|
|
68
|
+
modifiers.set(C5Ren.Modifiers.F_REINFORCED_REDUCED,"RD");//"(+)";//"RD";
|
|
69
|
+
modifiers.set(C5Ren.Modifiers.L_SIGNATURE_EQUIP,"!");
|
|
70
|
+
modifiers.set(C5Ren.Modifiers.AA_SPECIAL_C2_HQ,"AA");
|
|
71
|
+
modifiers.set(C5Ren.Modifiers.G_STAFF_COMMENTS,"G");
|
|
72
|
+
//symbol.symbolicon A
|
|
73
|
+
modifiers.set(C5Ren.Modifiers.V_EQUIP_TYPE,"V");
|
|
74
|
+
modifiers.set(C5Ren.Modifiers.T_UNIQUE_DESIGNATION_1,"T");
|
|
75
|
+
modifiers.set(C5Ren.Modifiers.T1_UNIQUE_DESIGNATION_2,"T1");
|
|
76
|
+
modifiers.set(C5Ren.Modifiers.Z_SPEED,"999");//Z
|
|
77
|
+
|
|
78
|
+
modifiers.set(C5Ren.Modifiers.R2_SIGNIT_MOBILITY_INDICATOR, "2");
|
|
79
|
+
modifiers.set(C5Ren.Modifiers.AD_PLATFORM_TYPE,"AD");
|
|
80
|
+
modifiers.set(C5Ren.Modifiers.AE_EQUIPMENT_TEARDOWN_TIME,"AE");
|
|
81
|
+
modifiers.set(C5Ren.Modifiers.AF_COMMON_IDENTIFIER,"AF");
|
|
82
|
+
|
|
83
|
+
modifiers.set(C5Ren.Modifiers.AO_ENGAGEMENT_BAR, "AO:AOA-AO");
|
|
84
|
+
modifiers.set(C5Ren.Modifiers.AR_SPECIAL_DESIGNATOR, "AR");
|
|
85
|
+
modifiers.set(C5Ren.Modifiers.AQ_GUARDED_UNIT, "AQ");
|
|
86
|
+
//modifiers.set(C5Ren.Modifiers.AS_COUNTRY, "USA");
|
|
87
|
+
//*/
|
|
88
|
+
//modifiers.set(C5Ren.Modifiers.CN_CPOF_NAME_LABEL,"~`"; //\"CPOF'D";//Z
|
|
89
|
+
|
|
90
|
+
//attributes
|
|
91
|
+
|
|
92
|
+
//modifiers.set(C5Ren.utilities.MilStdAttributes.LineColor,"#60FFFF00";
|
|
93
|
+
//modifiers.set(C5Ren.utilities.MilStdAttributes.FillColor,"#00FF00";
|
|
94
|
+
//modifiers.set(C5Ren.utilities.MilStdAttributes.Alpha,50;
|
|
95
|
+
|
|
96
|
+
//modifiers.set(C5Ren.utilities.MilStdAttributes.LineColor,"#FF00FF";
|
|
97
|
+
//modifiers.set(C5Ren.utilities.MilStdAttributes.FillColor,"#0000FF00");
|
|
98
|
+
//modifiers.set(C5Ren.utilities.MilStdAttributes.Alpha,50;
|
|
99
|
+
|
|
100
|
+
//modifiers.set(C5Ren.utilities.MilStdAttributes.TextColor,"#FF00FF";
|
|
101
|
+
//modifiers.set(C5Ren.utilities.MilStdAttributes.TextBackgroundColor,"#00FF00";
|
|
102
|
+
|
|
103
|
+
return modifiers;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
function drawToCanvas(svg,x,y)
|
|
107
|
+
{
|
|
108
|
+
var canvas = document.getElementById('preview');
|
|
109
|
+
var ctx = canvas.getContext('2d');
|
|
110
|
+
var data = svg;
|
|
111
|
+
var DOMURL = window.URL || window.webkitURL || window;
|
|
112
|
+
var img1 = new Image();
|
|
113
|
+
var svg = new Blob([data], {type: 'image/svg+xml'});
|
|
114
|
+
var url = DOMURL.createObjectURL(svg);
|
|
115
|
+
img1.onload = function() {
|
|
116
|
+
ctx.drawImage(img1, x, y);
|
|
117
|
+
DOMURL.revokeObjectURL(url);
|
|
118
|
+
}
|
|
119
|
+
img1.src = url;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
function render(symbolID, x, y)
|
|
124
|
+
{
|
|
125
|
+
var size = document.getElementById("tbSize").value;
|
|
126
|
+
var keepUnitRatio = document.getElementById("cbKeepUnitRatio").checked;
|
|
127
|
+
var showLabels = document.getElementById("cbLabels").checked;
|
|
128
|
+
var drawAsIcon = document.getElementById("cbDrawAsIcon").checked;
|
|
129
|
+
var scaleMainIcon = document.getElementById("cbScaleMainIcon").checked;
|
|
130
|
+
|
|
131
|
+
var modifiers = new Map();
|
|
132
|
+
|
|
133
|
+
if(showLabels === true)
|
|
134
|
+
{
|
|
135
|
+
modifiers = populateModifiers();
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
var attributes = new Map();
|
|
139
|
+
attributes.set(C5Ren.MilStdAttributes.PixelSize,new String(size));
|
|
140
|
+
attributes.set(C5Ren.MilStdAttributes.DrawAsIcon,new String(drawAsIcon));
|
|
141
|
+
attributes.set(C5Ren.MilStdAttributes.KeepUnitRatio,new String(keepUnitRatio));
|
|
142
|
+
|
|
143
|
+
RendererSettings.getInstance().setScaleMainIcon(scaleMainIcon);
|
|
144
|
+
|
|
145
|
+
//font change test
|
|
146
|
+
//RendererSettings.getInstance().setLabelFont("serif","bold",24);
|
|
147
|
+
|
|
148
|
+
//OutlineTest
|
|
149
|
+
//attributes.set(C5Ren.MilStdAttributes.OutlineColor]="#FF00FF";
|
|
150
|
+
//attributes.set(C5Ren.MilStdAttributes.OutlineWidth]=4;
|
|
151
|
+
//attributes.set(C5Ren.MilStdAttributes.OutlineAlpha]=0.5;
|
|
152
|
+
|
|
153
|
+
//attributes.set(C5Ren.MilStdAttributes.LineColor,"#00FF00");
|
|
154
|
+
//attributes.set(C5Ren.MilStdAttributes.FillColor,"#0000FF00");
|
|
155
|
+
//attributes.set(C5Ren.MilStdAttributes.IconColor,"#0000FF");
|
|
156
|
+
|
|
157
|
+
var si = C5Ren.MilStdIconRenderer.getInstance().RenderSVG(symbolID,modifiers,attributes);
|
|
158
|
+
//var si2 = C5Ren.MilStdIconRenderer.getInstance().RenderSVG("130310000016570000000000000000",modifiers,attributes);
|
|
159
|
+
var center = si.getSymbolCenterPoint();
|
|
160
|
+
|
|
161
|
+
var preview = document.getElementById("preview");
|
|
162
|
+
var ctx = preview.getContext('2d');
|
|
163
|
+
|
|
164
|
+
//SVG TEST
|
|
165
|
+
var svgImage = document.getElementById("SVGTest");
|
|
166
|
+
svgImage.width = si.getImageBounds().getWidth();
|
|
167
|
+
svgImage.height = si.getImageBounds().getHeight();
|
|
168
|
+
var data = si.getSVGDataURI();
|
|
169
|
+
svgImage.src = data;
|
|
170
|
+
//var si = C5Ren.MilStdIconRenderer.RenderSVG(symbolID,modifiers);
|
|
171
|
+
document.getElementById("contentSpan").innerHTML += si.getSVG();
|
|
172
|
+
|
|
173
|
+
|
|
174
|
+
//test urlEncode vs base64
|
|
175
|
+
//speedTestSVGConversion(si.getSVG());
|
|
176
|
+
|
|
177
|
+
try
|
|
178
|
+
{
|
|
179
|
+
|
|
180
|
+
x = x - center.getX();
|
|
181
|
+
y = y - center.getY();
|
|
182
|
+
//alert(x + " " + y);
|
|
183
|
+
drawToCanvas(si.getSVG(),x,y);
|
|
184
|
+
//ctx.drawImage(ii.getImage(), Math.ceil(x),Math.ceil(y));
|
|
185
|
+
var bounds = si.getImageBounds();
|
|
186
|
+
bounds.setRect(x,y,bounds.getWidth(),bounds.getHeight());
|
|
187
|
+
bounds.stroke(ctx);//*/
|
|
188
|
+
}
|
|
189
|
+
catch(err)
|
|
190
|
+
{
|
|
191
|
+
console.log(err);
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
|
|
196
|
+
|
|
197
|
+
function buildSymbolID(basicID)
|
|
198
|
+
{
|
|
199
|
+
if(basicID == null || basicID.length !== 8)
|
|
200
|
+
{
|
|
201
|
+
if(_symbolID && _symbolID.length === 8)
|
|
202
|
+
basicID = _symbolID;//symbolID is basic code from TF or Unit Picker box
|
|
203
|
+
else
|
|
204
|
+
basicID = "00000000";
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
var id = document.getElementById("lbVersion").value.split("-")[0];
|
|
208
|
+
id += document.getElementById("lbContext").value.split("-")[0];
|
|
209
|
+
id += document.getElementById("lbAffiliation").value.split("-")[0];
|
|
210
|
+
id += basicID.substring(0, 2);
|
|
211
|
+
id += document.getElementById("lbStatus").value.split("-")[0];
|
|
212
|
+
id += document.getElementById("lbHQTFD").value.split("-")[0];
|
|
213
|
+
id += document.getElementById("lbAmp").value.split("-")[0];
|
|
214
|
+
id += basicID.substring(2);
|
|
215
|
+
|
|
216
|
+
var s1m = document.getElementById("tbS1Mod").value;
|
|
217
|
+
if(s1m.length == 2)
|
|
218
|
+
{
|
|
219
|
+
id += s1m;
|
|
220
|
+
}
|
|
221
|
+
else
|
|
222
|
+
id += "00";
|
|
223
|
+
|
|
224
|
+
var s2m = document.getElementById("tbS2Mod").value;
|
|
225
|
+
if(s2m.length == 2)
|
|
226
|
+
{
|
|
227
|
+
id += s2m;
|
|
228
|
+
}
|
|
229
|
+
else
|
|
230
|
+
id += "00";
|
|
231
|
+
|
|
232
|
+
id += document.getElementById("lbS1").value;
|
|
233
|
+
id += document.getElementById("lbS2").value;
|
|
234
|
+
|
|
235
|
+
var fs = document.getElementById("lbFrame").value.split("-")[0];
|
|
236
|
+
|
|
237
|
+
if(parseInt(id.substring(0,2)) >= C5Ren.SymbolID.Version_2525E)
|
|
238
|
+
id += fs + "0000";//2525E has frame shape and 4 reserved positions
|
|
239
|
+
else
|
|
240
|
+
id += "00000";//2525D has 5 reserved positions
|
|
241
|
+
|
|
242
|
+
if(document.getElementById("cbLabels").checked)
|
|
243
|
+
id += "840";//country code USA
|
|
244
|
+
else
|
|
245
|
+
id += "000";//country code
|
|
246
|
+
|
|
247
|
+
document.getElementById("tbSymbolID").value = id;
|
|
248
|
+
|
|
249
|
+
return id;
|
|
250
|
+
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
function renderFE()
|
|
254
|
+
{
|
|
255
|
+
var lb = document.getElementById("lbU");
|
|
256
|
+
var lb2 = document.getElementById("lbTG");
|
|
257
|
+
lb2.selectedIndex = -1;
|
|
258
|
+
var id = lb.value;
|
|
259
|
+
if(id && id !== "")
|
|
260
|
+
{
|
|
261
|
+
_symbolID = id;
|
|
262
|
+
|
|
263
|
+
}
|
|
264
|
+
else
|
|
265
|
+
{
|
|
266
|
+
alert("Pick a symbol from the right list first.");
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
buildSymbolID(_symbolID);
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
function renderTG()
|
|
273
|
+
{
|
|
274
|
+
var lb = document.getElementById("lbTG");
|
|
275
|
+
var lb2 = document.getElementById("lbU");
|
|
276
|
+
lb2.selectedIndex = -1;
|
|
277
|
+
var id = lb.value;
|
|
278
|
+
if(id && id !== "")
|
|
279
|
+
{
|
|
280
|
+
_symbolID = id;
|
|
281
|
+
}
|
|
282
|
+
else
|
|
283
|
+
{
|
|
284
|
+
alert("Pick a symbol from the right list first.");
|
|
285
|
+
}
|
|
286
|
+
|
|
287
|
+
buildSymbolID(_symbolID);
|
|
288
|
+
}
|
|
289
|
+
|
|
290
|
+
function speedTestSVGConversion(svg)
|
|
291
|
+
{
|
|
292
|
+
var start = new Date().getTime();
|
|
293
|
+
|
|
294
|
+
for(var i = 0; i < 10000; i++)
|
|
295
|
+
{
|
|
296
|
+
encodeURIComponent(svg)
|
|
297
|
+
}
|
|
298
|
+
|
|
299
|
+
var end = new Date().getTime();
|
|
300
|
+
var time = end - start;
|
|
301
|
+
alert('encodeURIComponent: ' + (time/1000) + "; length: " + encodeURIComponent(svg).length);//*/
|
|
302
|
+
|
|
303
|
+
start = new Date().getTime();
|
|
304
|
+
|
|
305
|
+
for(var j = 0; j < 10000; j++)
|
|
306
|
+
{
|
|
307
|
+
btoa(svg)
|
|
308
|
+
}
|
|
309
|
+
|
|
310
|
+
end = new Date().getTime();
|
|
311
|
+
time = end - start;
|
|
312
|
+
alert('btoa: ' + (time/1000) + "; length: " + btoa(svg).length);//*/
|
|
313
|
+
|
|
314
|
+
}
|
|
315
|
+
function speedTest(type)
|
|
316
|
+
{
|
|
317
|
+
//PERFORMANCE TEST///////////////////////////
|
|
318
|
+
|
|
319
|
+
var start;
|
|
320
|
+
var end;
|
|
321
|
+
var modifiers;
|
|
322
|
+
//modifiers = populateModifiers();//render time increases with the number of modifiers
|
|
323
|
+
//modifiers["RENDER",false;//dimensions without labels
|
|
324
|
+
var apID = buildSymbolID();//"GFGPGPP---****X";//action point
|
|
325
|
+
var dmID = buildSymbolID();//"SUGDUSAT--MY***";//symbol with display modifiers, will add to render time
|
|
326
|
+
var plainID = buildSymbolID();//"SUGPUSAT----***";//plain symbol with no display modifiers
|
|
327
|
+
var id;
|
|
328
|
+
var msi = C5Ren.MilStdIconRenderer.getInstance();
|
|
329
|
+
if(type === 1)
|
|
330
|
+
{
|
|
331
|
+
id = plainID;
|
|
332
|
+
modifiers = new Map();
|
|
333
|
+
}
|
|
334
|
+
else if(type === 2)
|
|
335
|
+
{
|
|
336
|
+
id = dmID;
|
|
337
|
+
modifiers = new Map();
|
|
338
|
+
}
|
|
339
|
+
else if(type === 3)
|
|
340
|
+
{
|
|
341
|
+
id = dmID;
|
|
342
|
+
modifiers = populateModifiers();
|
|
343
|
+
}
|
|
344
|
+
|
|
345
|
+
//SVG Speed Test
|
|
346
|
+
start = new Date().getTime();
|
|
347
|
+
|
|
348
|
+
var attrib = new Map();
|
|
349
|
+
|
|
350
|
+
var si;
|
|
351
|
+
|
|
352
|
+
for(var j = 0; j < 1000; j++)
|
|
353
|
+
{
|
|
354
|
+
si = msi.RenderSVG(id,modifiers,attrib);
|
|
355
|
+
}
|
|
356
|
+
|
|
357
|
+
end = new Date().getTime();
|
|
358
|
+
time = end - start;
|
|
359
|
+
|
|
360
|
+
var svgImage = document.getElementById("SVGTest");
|
|
361
|
+
svgImage.width = si.getImageBounds().getWidth();
|
|
362
|
+
svgImage.height = si.getImageBounds().getHeight();
|
|
363
|
+
var data = si.getSVGDataURI();
|
|
364
|
+
svgImage.src = data;
|
|
365
|
+
|
|
366
|
+
alert('Render 1k SVG symbols (just SVG generation, not in browser rendering): ' + (time/1000));//*/
|
|
367
|
+
|
|
368
|
+
|
|
369
|
+
|
|
370
|
+
}
|
|
371
|
+
|
|
372
|
+
function versionChange()
|
|
373
|
+
{
|
|
374
|
+
buildSymbolID();
|
|
375
|
+
populateListBox();
|
|
376
|
+
}
|
|
377
|
+
|
|
378
|
+
function populateListBox()
|
|
379
|
+
{
|
|
380
|
+
var lbTG = document.getElementById("lbTG");
|
|
381
|
+
var lbU = document.getElementById("lbU");
|
|
382
|
+
|
|
383
|
+
var lbV = document.getElementById("lbVersion");
|
|
384
|
+
var version = parseInt(lbV.value.split('-')[0]);
|
|
385
|
+
|
|
386
|
+
console.log(lbTG.length);
|
|
387
|
+
|
|
388
|
+
while(lbTG.length > 1)
|
|
389
|
+
{
|
|
390
|
+
lbTG.remove(1);
|
|
391
|
+
}
|
|
392
|
+
while(lbU.length > 1)
|
|
393
|
+
{
|
|
394
|
+
lbU.remove(1);
|
|
395
|
+
}//*/
|
|
396
|
+
|
|
397
|
+
|
|
398
|
+
var tmpArrayTG = new Array();
|
|
399
|
+
var tmpArrayUnit = new Array();
|
|
400
|
+
var option = null;
|
|
401
|
+
var def = null;
|
|
402
|
+
var msi = null;
|
|
403
|
+
|
|
404
|
+
var list = C5Ren.MSLookup.getInstance().getIDList(version);
|
|
405
|
+
|
|
406
|
+
//put values in array and sort
|
|
407
|
+
for(var i=0; i< list.length; i++)//(const symbolID of list)
|
|
408
|
+
{
|
|
409
|
+
var symbolID = list[i];
|
|
410
|
+
|
|
411
|
+
msi = C5Ren.MSLookup.getInstance().getMSLInfo(symbolID,version);
|
|
412
|
+
|
|
413
|
+
if(msi != null && msi.getDrawRule() !== 0)
|
|
414
|
+
{
|
|
415
|
+
var ss = msi.getSymbolSet();
|
|
416
|
+
if(ss < 10)
|
|
417
|
+
ss = "0" + ss;
|
|
418
|
+
if(msi.getSymbolSet() === C5Ren.SymbolID.SymbolSet_ControlMeasure ||
|
|
419
|
+
msi.getSymbolSet() === 45 || msi.getSymbolSet() === 46 || msi.getSymbolSet() === 47)
|
|
420
|
+
tmpArrayTG.push([ss+'-'+msi.getName()+'-'+msi.getBasicSymbolID().substring(2),msi.getBasicSymbolID()]);
|
|
421
|
+
else
|
|
422
|
+
{
|
|
423
|
+
tmpArrayUnit.push([ss+'-'+msi.getName()+'-'+msi.getBasicSymbolID().substring(2),msi.getBasicSymbolID()]);
|
|
424
|
+
}
|
|
425
|
+
}
|
|
426
|
+
else
|
|
427
|
+
{
|
|
428
|
+
//console.log("no MSInfo for: " + symbolID + " version: " + version);
|
|
429
|
+
}
|
|
430
|
+
}
|
|
431
|
+
tmpArrayTG.sort();
|
|
432
|
+
tmpArrayUnit.sort();
|
|
433
|
+
|
|
434
|
+
//add values to list box
|
|
435
|
+
for(var i=0; i<tmpArrayTG.length;i++)
|
|
436
|
+
{
|
|
437
|
+
option = new Option();
|
|
438
|
+
option.text = tmpArrayTG[i][0];
|
|
439
|
+
option.value = tmpArrayTG[i][1];
|
|
440
|
+
lbTG.add(option);
|
|
441
|
+
}
|
|
442
|
+
for(var i=0; i<tmpArrayUnit.length;i++)
|
|
443
|
+
{
|
|
444
|
+
option = new Option();
|
|
445
|
+
option.text = tmpArrayUnit[i][0];
|
|
446
|
+
option.value = tmpArrayUnit[i][1];
|
|
447
|
+
lbU.add(option);
|
|
448
|
+
}
|
|
449
|
+
|
|
450
|
+
lbTG.remove(1);
|
|
451
|
+
lbTG.onselect = renderTG;
|
|
452
|
+
lbTG.onchange = renderTG;
|
|
453
|
+
|
|
454
|
+
lbU.remove(1);
|
|
455
|
+
lbU.onselect = renderFE;
|
|
456
|
+
lbU.onchange = renderFE;
|
|
457
|
+
|
|
458
|
+
|
|
459
|
+
}
|
|
460
|
+
function clearCanvas()
|
|
461
|
+
{
|
|
462
|
+
var preview = document.getElementById("preview");
|
|
463
|
+
preview.onclick = canvasClick;
|
|
464
|
+
|
|
465
|
+
var ctx = preview.getContext('2d');
|
|
466
|
+
//outline the canvas
|
|
467
|
+
ctx.clearRect(0,0,650,300);
|
|
468
|
+
ctx.strokeStyle="#000000";
|
|
469
|
+
ctx.beginPath();
|
|
470
|
+
ctx.moveTo(0,0);
|
|
471
|
+
ctx.lineTo(650,0);
|
|
472
|
+
ctx.lineTo(650,300);
|
|
473
|
+
ctx.lineTo(0,300);
|
|
474
|
+
ctx.lineTo(0,0);
|
|
475
|
+
ctx.stroke();//*/
|
|
476
|
+
}
|
|
477
|
+
function canvasClick(e)
|
|
478
|
+
{
|
|
479
|
+
//alert("clicked");
|
|
480
|
+
//console.dir(e);
|
|
481
|
+
//e.clientX;
|
|
482
|
+
//e.clientY;
|
|
483
|
+
if(_symbolID === null)
|
|
484
|
+
{
|
|
485
|
+
alert("Choose a symbol from one of the lists");
|
|
486
|
+
return;
|
|
487
|
+
}
|
|
488
|
+
|
|
489
|
+
var id = buildSymbolID(_symbolID);
|
|
490
|
+
|
|
491
|
+
var preview = document.getElementById("preview");
|
|
492
|
+
var x = e.pageX - preview.offsetLeft;
|
|
493
|
+
var y = e.pageY - preview.offsetTop;
|
|
494
|
+
render(id,x, y);
|
|
495
|
+
|
|
496
|
+
/*
|
|
497
|
+
var att = new Map();
|
|
498
|
+
att.set("PIXELSIZE","50");
|
|
499
|
+
att.set("FILLCOLOR","#00FF00");
|
|
500
|
+
var LAA = "110325000015110016000000000000";
|
|
501
|
+
var si = C5Ren.SinglePointSVGRenderer.getInstance().RenderModifier(LAA,att);
|
|
502
|
+
console.log(si.getSVG());//*/
|
|
503
|
+
}
|
|
504
|
+
|
|
505
|
+
function setSpeedTestImages()
|
|
506
|
+
{
|
|
507
|
+
var msi = C5Ren.MilStdIconRenderer.getInstance();
|
|
508
|
+
|
|
509
|
+
//set speed test images
|
|
510
|
+
var ii1 = msi.RenderSVG("SUGPUSAT----***",null,null);
|
|
511
|
+
var img = document.getElementById("iST1");
|
|
512
|
+
img.src = ii1.toDataUrl();
|
|
513
|
+
img.width = ii1.getImageBounds().width;
|
|
514
|
+
img.height = ii1.getImageBounds().height;
|
|
515
|
+
|
|
516
|
+
var ii2 = msi.RenderSVG("SUGDUSAT--MY***",populateModifiers(),null);
|
|
517
|
+
var img2 = document.getElementById("iST2");
|
|
518
|
+
img2.src = ii2.toDataUrl();
|
|
519
|
+
img2.width = ii2.getImageBounds().width;
|
|
520
|
+
img2.height = ii2.getImageBounds().height;
|
|
521
|
+
|
|
522
|
+
//enable speed test buttons
|
|
523
|
+
var button = document.getElementById("btnST2");
|
|
524
|
+
button.disabled = false;
|
|
525
|
+
button.innerHTML = "Speed Test With Modifiers";
|
|
526
|
+
var button2 = document.getElementById("btnST1");
|
|
527
|
+
button2.disabled = false;
|
|
528
|
+
button2.innerHTML = "Speed Test";
|
|
529
|
+
}
|
|
530
|
+
|
|
531
|
+
function setup()
|
|
532
|
+
{
|
|
533
|
+
document.getElementById("btnST1").disabled = true;
|
|
534
|
+
//Assumes location page is running in
|
|
535
|
+
//C5Ren.initialize().then(function(results){document.getElementById("btnST1").disabled = false;preload();}).catch(error => {throw error;});
|
|
536
|
+
//Set location where renderer and files are
|
|
537
|
+
//C5Ren.initialize('/dist/').then(function(results){document.getElementById("btnST1").disabled = false;preload();}).catch(error => {throw error;});
|
|
538
|
+
//Tell the renderer specficially where the manifest file is in case the users process renamed it with a hash or something.
|
|
539
|
+
//C5Ren.initialize('/dist/manifest.json').then(function(results){document.getElementById("btnST1").disabled = false;preload();}).catch(error => {throw error;});
|
|
540
|
+
|
|
541
|
+
//no longer using init call
|
|
542
|
+
document.getElementById("btnST1").disabled = false;
|
|
543
|
+
preload();
|
|
544
|
+
|
|
545
|
+
/*if(C5Ren.isReady())
|
|
546
|
+
{
|
|
547
|
+
var mi = new C5Ren.MSInfo(13,"10", "Sustainment","TEST","","165700",null);
|
|
548
|
+
var si = new C5Ren.SVGInfo("10165700", new C5Ren.Rectangle2D(198,365,215,64),"<g id=\"10165700\"><text font-family=\"sans-serif\" stroke=\"red\" font-size=\"89\" x=\"192\" y=\"428\">MWR</text></g>");
|
|
549
|
+
C5Ren.MilStdIconRenderer.getInstance().AddCustomSymbol(mi,si);
|
|
550
|
+
}//*/
|
|
551
|
+
}
|
|
552
|
+
|
|
553
|
+
function preload()
|
|
554
|
+
{
|
|
555
|
+
//Add Custom Symbols
|
|
556
|
+
var miBase = C5Ren.MSLookup.getInstance().getMSLInfo("10160000",13);
|
|
557
|
+
var mi = new C5Ren.MSInfo(13,"10", "Sustainment","TEST","","165700",miBase.getModifiers());
|
|
558
|
+
var si = new C5Ren.SVGInfo("10165700", new C5Ren.Rectangle2D(198,365,215,64),"<g id=\"10165700\"><text font-family=\"sans-serif\" fill=\"red\" font-size=\"89\" x=\"192\" y=\"428\">MWR</text></g>");
|
|
559
|
+
C5Ren.MilStdIconRenderer.getInstance().AddCustomSymbol(mi,si);
|
|
560
|
+
|
|
561
|
+
Modifiers = C5Ren.Modifiers;
|
|
562
|
+
//var Color = new window.Color(255,255,0);
|
|
563
|
+
//testString = Color.toString();
|
|
564
|
+
//console.log(testString);
|
|
565
|
+
var msi = C5Ren.MilStdIconRenderer.getInstance();
|
|
566
|
+
var RendererSettings = C5Ren.RendererSettings.getInstance();
|
|
567
|
+
RendererSettings.setScaleMainIcon(true);
|
|
568
|
+
//populate sybol list boxes
|
|
569
|
+
var lbTG = document.getElementById("lbTG");
|
|
570
|
+
var lbU = document.getElementById("lbU");
|
|
571
|
+
var lbStatus = document.getElementById("lbStatus");
|
|
572
|
+
//lbStatus.selectedIndex = 1;
|
|
573
|
+
lbAffiliation.selectedIndex = 3;
|
|
574
|
+
|
|
575
|
+
populateListBox();
|
|
576
|
+
|
|
577
|
+
var preview = document.getElementById("preview");
|
|
578
|
+
preview.onclick = canvasClick;
|
|
579
|
+
|
|
580
|
+
var ctx = preview.getContext('2d');
|
|
581
|
+
//outline the canvas
|
|
582
|
+
ctx.strokeStyle="#000000";
|
|
583
|
+
ctx.beginPath();
|
|
584
|
+
ctx.moveTo(0,0);
|
|
585
|
+
ctx.lineTo(650,0);
|
|
586
|
+
ctx.lineTo(650,300);
|
|
587
|
+
ctx.lineTo(0,300);
|
|
588
|
+
ctx.lineTo(0,0);
|
|
589
|
+
ctx.stroke();//*/
|
|
590
|
+
|
|
591
|
+
//RendererSettings.setTextBackgroundMethod(RendererSettings.TextBackgroundMethod_NONE);
|
|
592
|
+
//RendererSettings.setTextBackgroundMethod(RendererSettings.TextBackgroundMethod_COLORFILL);
|
|
593
|
+
//RendererSettings.setTextBackgroundMethod(RendererSettings.TextBackgroundMethod_OUTLINE);
|
|
594
|
+
//RendererSettings.setTextBackgroundMethod(RendererSettings.TextBackgroundMethod_OUTLINE_QUICK);
|
|
595
|
+
RendererSettings.setOutlineSPControlMeasures(false);
|
|
596
|
+
//RendererSettings.setOperationalConditionModifierType(RendererSettings.OperationalConditionModifierType_SLASH);
|
|
597
|
+
|
|
598
|
+
}
|
|
599
|
+
</script>
|
|
600
|
+
</head>
|
|
601
|
+
|
|
602
|
+
<BODY bgcolor="#5f95e9" onload="setup();">
|
|
603
|
+
<select id="lbTG" size="10" style="width: 300px;" >
|
|
604
|
+
<option>Single Point Tactical</option>
|
|
605
|
+
<option>Populating Values...</option>
|
|
606
|
+
</select>
|
|
607
|
+
<select id="lbU" size="10" style="width: 300px;" >
|
|
608
|
+
<option>Single Point Warfighting</option>
|
|
609
|
+
<option>Populating Values...</option>
|
|
610
|
+
</select>
|
|
611
|
+
<br/>
|
|
612
|
+
SVG Rendered to HTML5 Canvas:<br/>
|
|
613
|
+
<canvas id="preview" width="650" height="300"></canvas>
|
|
614
|
+
<br/>
|
|
615
|
+
<!-- <button id="btnDrawTG" type='button' onclick='renderTG();'>Draw TG</button>
|
|
616
|
+
<button id="btnDrawFE" type='button' onclick='renderFE();'>Draw FE</button> -->
|
|
617
|
+
SymbolID: <input id="tbSymbolID" type="text" value="" maxlength="30" size="30" readonly>
|
|
618
|
+
<br>
|
|
619
|
+
Version: <select id = lbVersion onchange="versionChange();">
|
|
620
|
+
<option>11-2525D</option>
|
|
621
|
+
<option>13-2525E</option>
|
|
622
|
+
</select>
|
|
623
|
+
Context: <select id = lbContext onchange="buildSymbolID();">
|
|
624
|
+
<option>0-Reality</option>
|
|
625
|
+
<option>1-Exercise</option>
|
|
626
|
+
<option>2-Simulation</option>
|
|
627
|
+
</select>
|
|
628
|
+
Affiliation: <select id = lbAffiliation onchange="buildSymbolID();">
|
|
629
|
+
<option>0-Pending</option>
|
|
630
|
+
<option>1-Unknown</option>
|
|
631
|
+
<option>2-Assumed Friend</option>
|
|
632
|
+
<option>3-Friend</option>
|
|
633
|
+
<option>4-Neutral</option>
|
|
634
|
+
<option>5-Suspect/Joker</option>
|
|
635
|
+
<option>6-Hostile/Faker</option>
|
|
636
|
+
</select>
|
|
637
|
+
Status: <select id = lbStatus onchange="buildSymbolID();">
|
|
638
|
+
<option>0-Present</option>
|
|
639
|
+
<option>1-Planned/Anticipated/Suspect</option>
|
|
640
|
+
<option>2-Fully Capable</option>
|
|
641
|
+
<option>3-Damaged</option>
|
|
642
|
+
<option>4-Destroyed</option>
|
|
643
|
+
<option>5-Full to capacity</option>
|
|
644
|
+
</select>
|
|
645
|
+
S1: <select id = lbS1 onchange="buildSymbolID();">
|
|
646
|
+
<option>0</option>
|
|
647
|
+
<option>1</option>
|
|
648
|
+
<option>2</option>
|
|
649
|
+
<option>3</option>
|
|
650
|
+
<option>4</option>
|
|
651
|
+
<option>5</option>
|
|
652
|
+
<option>6</option>
|
|
653
|
+
<option>7</option>
|
|
654
|
+
<option>8</option>
|
|
655
|
+
<option>9</option>
|
|
656
|
+
</select>
|
|
657
|
+
S2: <select id = lbS2 onchange="buildSymbolID();">
|
|
658
|
+
<option>0</option>
|
|
659
|
+
<option>1</option>
|
|
660
|
+
<option>2</option>
|
|
661
|
+
<option>3</option>
|
|
662
|
+
<option>4</option>
|
|
663
|
+
<option>5</option>
|
|
664
|
+
<option>6</option>
|
|
665
|
+
<option>7</option>
|
|
666
|
+
<option>8</option>
|
|
667
|
+
<option>9</option>
|
|
668
|
+
</select>
|
|
669
|
+
<br>
|
|
670
|
+
HQTFD: <select id = lbHQTFD onchange="buildSymbolID();">
|
|
671
|
+
<option>0-Unknown</option>
|
|
672
|
+
<option>1-Dummy</option>
|
|
673
|
+
<option>2-HQ</option>
|
|
674
|
+
<option>3-D/HQ</option>
|
|
675
|
+
<option>4-TF</option>
|
|
676
|
+
<option>5-D/TF</option>
|
|
677
|
+
<option>6-TF/HQ</option>
|
|
678
|
+
<option>7-D/TF/HQ</option>
|
|
679
|
+
</select>
|
|
680
|
+
Amplifier: <select id = lbAmp onchange="buildSymbolID();">
|
|
681
|
+
<option>00-Unknown</option>
|
|
682
|
+
<option>11-Team/Crew</option>
|
|
683
|
+
<option>12-Squad</option>
|
|
684
|
+
<option>13-Section</option>
|
|
685
|
+
<option>14-Platoon/detachment</option>
|
|
686
|
+
<option>15-Company/battery/troop</option>
|
|
687
|
+
<option>16-Battalion/squadron</option>
|
|
688
|
+
<option>17-Regiment/group</option>
|
|
689
|
+
<option>18-Brigade</option>
|
|
690
|
+
<option>21-Division</option>
|
|
691
|
+
<option>22-Corps/MEF</option>
|
|
692
|
+
<option>23-Army</option>
|
|
693
|
+
<option>24-Army Group/front</option>
|
|
694
|
+
<option>25-Region/Theater</option>
|
|
695
|
+
<option>26-Command</option>
|
|
696
|
+
<option>31-Wheeled Limited Cross County</option>
|
|
697
|
+
<option>32-Wheeled Cross Country</option>
|
|
698
|
+
<option>33-Tracked</option>
|
|
699
|
+
<option>34-Wheeled and Tracked</option>
|
|
700
|
+
<option>35-Towed</option>
|
|
701
|
+
<option>36-Rail</option>
|
|
702
|
+
<option>37-Pack Animals</option>
|
|
703
|
+
<option>41-Over Snow</option>
|
|
704
|
+
<option>42-Sled</option>
|
|
705
|
+
<option>51-Barge</option>
|
|
706
|
+
<option>52-Amphibious</option>
|
|
707
|
+
<option>61-Short Towed Array</option>
|
|
708
|
+
<option>62-Long Towed Array</option>
|
|
709
|
+
<option>71-Leader Individual</option>
|
|
710
|
+
</select>
|
|
711
|
+
S1Mod: <input id="tbS1Mod" type="text" value="00" maxlength="2" size="2" onchange="buildSymbolID();">
|
|
712
|
+
S2Mod: <input id="tbS2Mod" type="text" value="00" maxlength="2" size="2" onchange="buildSymbolID();">
|
|
713
|
+
Frame Shape: <select id = lbFrame>
|
|
714
|
+
<option>0-Unknown</option>
|
|
715
|
+
<option>1-Space</option>
|
|
716
|
+
<option>2-Air</option>
|
|
717
|
+
<option>3-Land Unit</option>
|
|
718
|
+
<option>4-Equip/Sea</option>
|
|
719
|
+
<option>5-Land Inst.</option>
|
|
720
|
+
<option>6-Dis. Ind.</option>
|
|
721
|
+
<option>7-Sea Sub.</option>
|
|
722
|
+
<option>8-Activity</option>
|
|
723
|
+
<option>9-Cyber</option>
|
|
724
|
+
</select>
|
|
725
|
+
Size: <input id="tbSize" type="number" value="100" style="width: 4em"><br/>
|
|
726
|
+
Keep Unit Ratio: <input id="cbKeepUnitRatio" type="checkbox" checked><br/>
|
|
727
|
+
Labels: <input id="cbLabels" type="checkbox"><br/>
|
|
728
|
+
Draw as Icon: <input id="cbDrawAsIcon" type="checkbox"><br/>
|
|
729
|
+
Scale Internal Symbol: <input id="cbScaleMainIcon" type="checkbox" checked><br/>
|
|
730
|
+
<button id="btnClear" type='button' onclick='clearCanvas();' >Clear Canvas</button>
|
|
731
|
+
<br/>
|
|
732
|
+
<!-- <button id="btnRender" type='button' onclick='testRender();' disabled>Loading Page</button>-->
|
|
733
|
+
Speed test is only representative of the time taken to build the SVG string, not render.
|
|
734
|
+
<br/>
|
|
735
|
+
<button id="btnST1" type='button' onclick='speedTest(1);'>Speed Test</button><!-- Speed Test -->
|
|
736
|
+
<button id="btnST2" type='button' onclick='speedTest(3);'>Speed Test with Modifiers</button><!-- Speed Test With Modifiers -->
|
|
737
|
+
<!-- <img id="batch1" src="" alt="batch1" height="35" width="35">
|
|
738
|
+
<img id="batch2" src="" alt="batch2" height="35" width="35"> -->
|
|
739
|
+
<br/>
|
|
740
|
+
<img id="SVGTest" src="" alt="svg from datauri" height="100" width="100">
|
|
741
|
+
<br/>
|
|
742
|
+
<span id='contentSpan'/>
|
|
743
|
+
|
|
744
|
+
<!-- Export single point output to files -->
|
|
745
|
+
<br/>
|
|
746
|
+
<script src="exportspimages.js" type="text/javascript" ></script>
|
|
747
|
+
<script src="../node_modules/jszip/dist/jszip.js"></script>
|
|
748
|
+
<button id="btnExport" type='button' onclick='exportTestImages("SPImageTestJS.zip")'>Export test images</button>
|
|
749
|
+
|
|
750
|
+
</BODY>
|
|
751
|
+
</html>
|